Voi folosi PrettyPhoto pentru a strânge toate imaginile de pe o pagină, fie ea post sau page, într-o singură galerie foto.
Pentru început trebuie să adăugăm un cod în functions.php (wp-content/themes/thema-activa/functions.php), imediat după <?php. Codul este următorul:
function afiseaza_prettyphoto ($content) { global $post; $pattern = "/<a(.*?)href=('|\")([^>]*).(bmp|gif|jpeg|jpg|png)('|\")(.*?)>(.*?)<\/a>/i"; $replacement = '<a$1href=$2$3.$4$5 rel="prettyPhoto['.$post->ID.']"$6>$7</a>'; $content = preg_replace($pattern, $replacement, $content); return $content; } add_filter('the_content', 'afiseaza_prettyphoto', 12);
Filtrul ‘the_content’ este utilizat pentru a „filtra” conținutul între citirea din baza de date și afisarea pe ecran. În exemplu de mai sus se va filtra conținutul folosind funcția „afiseaza_prettyphoto”.
Metoda „afiseaza_prettyphoto” adaugă „prettyPhoto[‘.$post->ID.’]” în url-ul imaginii făcând astfel ca imaginea să se deschidă folosind pretty photo. Imaginile se vor grupa în galeria $post->ID.
Dacă în aceeași pagină se inserează și o galerie foto se folosește codul explicat aici pentru galerie. Astfel se vor afișa două galerii.
Pingback: Instalarea codului PrettyPhoto