it-swarm.com.de

Hinzufügen von jquery und thickbox zum WordPress-Theme

Ich möchte für die Vorlage, die ich für WordPress entwickle, eine Thickbox hinzufügen. Zur Zeit versuche ich es mit einer sauberen Vorlage, die nur header.php, footer.php, index.php und functions.php enthält.

Ich habe die <?php wp_head(); ?> in header.php und die <?php wp_footer(); ?> in footer.php eingefügt.

Ich habe den wp_head so eingefügt:

<?php
wp_enqueue_script('jquery');
wp_enqueue_script('thickbox');
wp_enqueue_style('thickbox');
wp_head();
?>

Ich habe die Galerie-Link-Klassen mit diesem Code in functions.php in Thickbox geändert.

<?php add_filter( 'wp_get_attachment_link', 'sant_prettyadd');

function sant_prettyadd ($content) {
    $content = preg_replace("/<a/","<a class=\"thickbox[slides]\"",$content,1);
    return $content;
}
?>

Wenn ich auf ein Galeriebild klicke, sollte es mit Thickbox geöffnet werden, aber es öffnet nur die Bilddatei.

4
Danny Style

Sie müssen die Funktion wp_enqueue_script (in Ihrer functions.php-Datei) verwenden, um die entsprechenden Skripte aufzurufen, die Sie benötigen. Es ermöglicht sowohl integrierte Bibliotheken als auch das Hinzufügen von benutzerdefinierten Elementen, die Sie in Ihr Thema aufnehmen.

0
Norcross

Alles was Sie tun müssen, ist ein einfacher Aufruf in Ihrem functions.php:

add_action( 'wp_enqueue_scripts', 'add_thickbox' );

Das ist es. WordPress stellt jetzt jQuery und das Thickbox-Skript in die Warteschlange. Standardmäßig sind verknüpfte Bilder noch nicht dickköpfig. Du musst:

  1. Fügen Sie den Links manuell/per PHP eine Klasse thickbox hinzu, oder
  2. Verwenden Sie ein zweites Skript, um diese Klassen automatisch hinzuzufügen.

Beispielcode für footer.php:

<script>
jQuery('a img.size-medium').parent().addClass('thickbox').attr('rel', 'page');
</script>
<?php
wp_footer();

Dieser Code fügt allen Links um mittelgroße Bilder die Klasse thickbox hinzu und gruppiert diese Links, um die nächsten/vorherigen Navigationslinks zu aktivieren.

Jetzt erhalten Sie eine einfache Thickbox mit übersetzten Navigationslinks:

enter image description here

Da es sich um ein vom Core verwaltetes Skript handelt, ist es nicht tastaturfreundlich: Die Pfeiltasten tun nichts. Wenn Sie eine benutzerfreundlichere Lösung benötigen, nehmen Sie ein Plugin.

Ein weiterer Hinweis: Thickbox kann früher oder später aus dem Kern entfernt werden. Siehe Ticket 10955 .

8
fuxia