fotoPhoca Gallery é un buon componente per Joomla, purtroppo ci sono alcune cose che mi mancano rispetto a Picasa Webalbum. Le richieste di nuove funzioni relative a Phoca Gallery sono tante e le si possono trovare e votare su User Voice. Quelle che mancano a me sono:
  • Un modulo con le ultime categorie pubblicate
  • Un RSS con i cambiamenti (nuove foto oppure nuove categorie)
Queste proposte sono marcate come in pianificazione, ma non si sa ancora in che release saranno realizzate. Cosi mi sono deciso per prima cosa a realizzare un modulo per visualizzare le ultime categorie create.

Non é un modulo vero e proprio, perché non avevo voglia di applicare la struttura di Joomla e imparare tutto da 0. Cosi mi sono affidato al componente Jumi, che permette di integrare in moduli o in articoli del codice in PHP per esempio. È possibile scrivere il codice in Jumi oppure linkare un file esterno. Visto che questo componente esegue del codice direttamente sul server é importante leggere le istruzioni presenti sul sito.

Quando si vuole integrare il codice in un modulo, tutto quello che si vuol far apparire deve "uscire" da Jumi, per dirla meglio dev'essere integrato nel codice presente in Jumi o nel file esterno.

Ecco il codice che ho scritto per realizzare un modulo che mostrasse il titolo degli album pubblicati per ultimo, con relativo link che rimanda alla vista categoria.

ultimi_album_aggiunti



<?php

function mHtmlFirst() { //first part of html code
    print_r('<ul>');
}

function mHtmlEnd() { //end part of html code
    print_r('</ul>');
}

$MAX_ALBUM_2_SHOW = 3;
$GALLERY_BASE_PATH = 'galleriafoto';
$MOD_REWRITE_ACTIVE = 0;

$user =& JFactory::getUser(); //gets user object

$db =& JFactory::getDBO();
 
$query = 'SELECT * FROM `jos_phocagallery_categories` WHERE `published` =1 ORDER BY `jos_phocagallery_categories`.`date` DESC LIMIT 0 , ' . $MAX_ALBUM_2_SHOW;
$db->setQuery($query);
$db->query();
$num_rows = $db->getNumRows();
$result = $db->loadObjectList();

mHtmlFirst();
$i = 0;

while ($i < $num_rows) {

    $date = new JDate( $result[$i]->date );

    if ( $MOD_REWRITE_ACTIVE == 0)
        print_r('<li><b><a href=index.php?option=com_phocagallery&view=category&id=' . $result[$i]->id . '>' . $result[$i]->title . '</a></b> ' . $date->toFormat('(%e.%m.%Y)'));
    else
        print_r('<li><b><a href=/'. $GALLERY_BASE_PATH .'/category/'. $result[$i]->id .'-'. $result[$i]->alias .'>'. $result[$i]->title .'</a></b> '. $date->toFormat('(%e.%m.%Y)'));   
    $i ++;
   
}

mHtmlEnd();
?>

Non sono un programmatore esperto, quindi se vedete che c'é qualcosa che si potrebbe migliorare evitate di strapparvi i capelli.



Quasi al inizio del codice ci sono tre variabili che permettono la configurazione del modulo (alla grezza). La spiegazione la trovate qui sotto.



$MAX_ALBUM_2_SHOW = 3;  //quanti album vuoi visualizzare al massimo?
$GALLERY_BASE_PATH = 'galleriafoto';  //percorso di base della galleria fotografica se mod_rewrite é attivo
$MOD_REWRITE_ACTIVE = 0;  //mod_rewrite attivo allora = 1

 


Se ho del tempo libero, magari mi cimento nel creare un feed RSS per gli ultimi album aggiunti. Vedremo!

 

 

 

Fotografie

Ultimi album aggiunti

Twitter