Capita di dover nascondere o eliminare alcuni Tabs di navigazione che Drupal o qualche suo modulo offrono di default.
Per farlo in modo pulito senza mettere mano al codice possiamo sfruttare phptemplate e inserire in seguente codice nel file template.php del nostro tema (o crearne uno appositamente in caso non sia già disponibile):
<?php
/**
* Override or insert PHPTemplate variables into the templates.
*/
function _phptemplate_variables($hook, $vars) {
if ($hook == 'page') {
Nell'Handbook di Drupal.org viene spiegato come inserire una vista (Modulo Views) in una pagina di template di Drupal (page.tpl.php, node.tpl.php), in un nodo o in un blocco abilitato a ricevere contenuti PHP. Il codice suggerito è il seguente:
<?php
//load the view by name
$view = views_get_view('sample_view');
//output the view
print views_build_view('embed', $view);
?>Abbiamo già visto come inserire un blocco all'interno di un nodo, ma come possiamo fare il contrario, ovvero andare ad inserire il contenuto di un nodo in un blocco o in un secondo nodo?
Se intendiamo utilizzare di frequente questa possibilità e vogliamo una soluzione automatica e facile, esiste un modulo che fa proprio questo. Si chiama Node As Block e questa è la descrizione che ne da il suo autore:
Purtroppo la funzione utilizzata da Drupal per generare la pagina 'Create content' non è una funzione di theming, e pertanto non può essere sovrascritta nel template.tpl.php.
Come poter quindi personalizzare o modificare ciò che viene mostrato in questa pagina?
Una soluzione veloce è la seguente:
Out of the box le funzionalità di localizzazione e traduzione di Drupal si limitano a tradurre solamente i titoli di ciascun campo (field) custom creato con il Content Construction Kit (CCK). Purtroppo nessun modulo di traduzione (Localizer, i18n) offre ancora supporto diretto per la traduzione dei field di cck, quindi dobbiamo arrangiarci.
Affinchè una stringa possa essere tradotta da Drupal, questa deve essere inserita in una funzione PHP di tipo t(), cosa che dovremo fare manualmente.
Supponiamo che la lista dei valori consentiti per il campo cck in questione siano i seguenti:
Se anche voi non siete proprio dei fan della funzionalità dei Messaggi di Log di Drupal (quella che aggiunge un campo "Log Message" a ciascuna node form per intenderci), ecco un breve snippet php da aggiungere al file template.php del vostro tema per far si che la textarea del Messaggio di Log non appaia più:
/**
* Override node form
*/
function phptemplate_node_form($form) {
// Remove 'Log message' text area
$form['log']['#access'] = FALSE;
return drupal_render($form);
}Fatene buon uso ;)
Si chiama Weeker e promette di rivoluzionare il modo in cui organizziamo il nostro tempo libero.
Tecnomeme sta lavorando in questi giorni dietro alle quinte di questo social network interamente realizzato con il sistema di gestione di contenuti Drupal.
Non posso rivelare i particolari dato che il sito non è stato ancora lanciato ufficialmente, ma in quanto sviluppatore del lato Drupal mi è permesso dare qualche piccola anticipazione:
Scegliere Drupal come piattaforma per la gestione del proprio sito web certamente aiuta a restringere il campo nella ricerca dell'Host o del servizio di Hosting che fa al caso proprio.
Drupal richiede caratteristiche che non tutti gli Host sono in grado di garantire, specialmente i "piccoli" host italiani se paragonati ai loro colleghi statunitensi in grado di offrire molto spesso di più (spazio, supporto, prestazioni, features,..) a meno.
<script type="text/javascript" src="/misc/collapse.js"></script>