Dimitri De Franciscis

Consulente software freelance

Primary links

  • Homepage
  • Chi sono
  • Pubblicazioni
  • Curriculum Vitae
  • Libri e guide
  • Fotografia
  • Pittura
  • Contattami
Home Blog dimitri's blog

Come realizzare una mappa del sito con Drupal

Submitted by dimitri on Ven, 06/03/2009 - 21:26
  • Informatica
  • drupal
  • how-to
  • php
  • sitemap

Il bello di Drupal è la sua estrema flessibilità, è veramente facile passare da timido utente a smanettone ribelle!

Ultimamente mi sono dedicato un po' alla mia criatura, il fanclub italiano di Eric Sardinas. Per chi non lo conoscesse, prego andare subito a visitarlo:

http://www.sardinasfans.com/

Al sito di certo non mancano i contenuti, e la gran varietà degli stessi (blog, reportage, calendari, interviste, gallery, video, ecc.) col tempo è diventato un problema, oltre che una grande fonte di orgoglio. Abbiamo provato a organizzare, taggare e linkare, ma una cosa ci è sempre mancata, cioè una banalissima "mappa del sito".

Niente moduli, please!

"Di certo ci sarà un modulo che fa questo" mi sono detto inizialmente, ma poi per un attimo ho pensato al tedio dell'upgrade periodico: SardinasFans gira ancora su Drupal 5 e utilizza parecchi moduli, aggiungerne uno solo per questo compito sarebbe davvero troppo. Fra l'altro c'è già un modulo per creare una mappa del sito, ma serve solo per creare la sitemap compatibile con i motori di ricerca, si tratta del modulo XML sitemap:

http://drupal.org/project/xmlsitemap

Così, documentazione di Drupal alla mano, ho cercato una soluzione, trovando spunto in questo interessante articolo:

http://www.nicklewis.org/a-practical-tutorial-on-drupals-menu-system

Ho scoperto però che c'è un modo più semplice però per trovare il menu "Primary Links", basta usare la funzione variable_get() e passargli la stringa 'menu_primary_menu'.

Soluzione per Drupal 5.x

  • creare una Page;
  • inserire questo codice PHP:
<?php
$menuhtml = theme_menu_tree(variable_get('menu_primary_menu', 0));
print $menuhtml;
?>
  • impostare il formato di input a "PHP code"

Et voilà, ecco la sitemap! Semplice vero?

Il risultato si può vedere nella pagina "Archivio", in basso:

http://www.sardinasfans.com/page/archive

Soluzione per Drupal 6.x

Per Drupal 6.x il codice è leggermente differente:

<?php
$menuhtml = menu_tree_output(menu_tree_all_data('primary-links'));
print $menuhtml;
?>

Attenzione

Questa soluzione funziona solo con Drupal 5. A breve una versione per Drupal 6, promesso!

 

  • dimitri's blog
  • Aggiungi un commento
  • 1377 letture
  • Share this

Potresti essere interessato anche a...

  • Gestire contenuti complessi con Drupal utilizzando CCK e Views
  • Modulo Drupal per OpenX
  • Drupal module for OpenX
  • Problemi con OpenX che richiede troppa RAM (128 MB)
  • Guide Drupal

Navigazione

  • Contenuti recenti
  • Cerca
  • Tags
  • Articoli più letti

Seguimi

Follow @megadix

Dimitri De Franciscis - Consulente software freelance

Secondary links

  • Note legali
  • Pubblicità su www.megadix.it

Copyright De Franciscis Dimitri - p.iva 05327790969

RoopleTheme