24 aprile 2010 @ 15:28
Carlo

Classe in Php per gestire i bread-cumps “Molliche di pane”

Questa classe PHP vi permetterà di inserire di gestire facilmente i bread-cumps all’interno del vostro sito Web.

Richiede php 5 o sup.

La Classe:

/*———————————Copy and Paste————————————————*/

class breadcrumb {
var $_trail;

function breadcrumb() {
$this->reset(); // azzera in contenuto
}

function reset() {
$this->_trail = array(); //assegna l’array
}

function add($title, $link = ”) {
$this->_trail[] = array(‘title’ => $title, ‘link’ => $link); //funzione che aggiunge il testo ed il link (facoltativo) alla breadcumps
}

function trail($separator = ‘ / ‘) { //funzione che stampa l’array dopo i dovuti controlli
$trail_string = ”;

for ($i=0, $n=sizeof($this->_trail); $i<$n; $i++) { //scorre l’array
if (isset($this->_trail[$i][‘link’]) && tep_not_null($this->_trail[$i][‘link’])) { //verifica che non sia vuoto la funzione tep_not_null() la vedremo dopo.


$trail_string .= ‘<a href=”‘ . $this->_trail[$i][‘link’] . ‘”>’ . $this->_trail[$i][‘title’] . ‘</a>’; //stampa ogni singolo array inserito
} else {
$trail_string .= “<span >”.$this->_trail[$i][‘title’].”</span>”;
}

if (($i+1) < $n) $trail_string .= $separator; //aggiunge il separatore
}

return $trail_string;
}
}
?>

/*—————————————————————————*/

Avrete notato all’interno della classe una funzione tep_not_null(), che potete inserirla fuori dalla classe,

serve per verificare che non ci sia del testo nullo e caretteri non conformi…

ecco la funzione:

/*———————copy and paste———————–*/

function tep_not_null($value) {
if (is_array($value)) {
if (sizeof($value) > 0) {
return true;
} else {
return false;
}
} else {
if (($value != ”) && (strtolower($value) != ‘null’) && (strlen(trim($value)) > 0)) {
return true;
} else {
return false;
}
}
}

/*—————————————————————————*/
alla fine di tutto ciò, basta dichiarare la classe nelle tue pagine ed aggiungere le molliche di pane:

Esempio:

$breadcrumb = new breadcrumb;
$breadcrumb->add(‘Home’ , ‘http://tuosito.it’);
$breadcrumb->add(‘Spazio tuo Sito’ , ‘http://tuosito.it/spaziotuosito’);
$breadcrumb->add(‘Articolo tuo stio’ , ‘http://tuosito.it/spaziotuosito/articolotuosito’);

e per stamparlo:

<?php echo $breadcrumb->trail()?>

Verrà stampato così:

Home / Spazio tuo sito / Articolo tuo sito

Comments are closed.