filter post_gallery | footer

  • Hallo Forum,

    um den HTML-Code, den WP beim Einfügen einer Standard-Galerie in einen Beitrag erzeugt, zu modifizieren, habe ich einen Filter programmiert:

    PHP
    /*—————————————————————————————————————————*//* Filter für bootstrap-Galery/*—————————————————————————————————————————*/
    add_filter( 'post_gallery', 'bootstrap_gallery', 10, 3 );
    function bootstrap_gallery( $output = '', $atts, $instance ) {
    
    
        wp_enqueue_style( 'gallery', get_stylesheet_directory_uri().'/css/gallery.min.css' );    wp_enqueue_script('gallery', get_stylesheet_directory_uri().'/js/gallery.min.js', array('jquery'));   ...
        return $html;}

    Der Filter gibt aber nicht nur den modifizierten HTML-Code zurück, der in den Content des Posts eingesetzt wird, sondern sorgt auch dafür, dass die dafür benötigten js und css im head geladen werden.

    Darüber hinaus wird aber ein weiterer HTML-Schnipsel benötigt, der im Footer bzw. direkt darüber eingefügt wird. Im Moment habe ich den Schnipsel direkt im Template single.php eingebaut. Das bedeutet aber, dass er unabhängig davon geladen wird, ob eine Galerie im Beitrag vorhanden ist.

    Wie schaffe ich es, dass der Schnipsel, wie auch die js und die css durch den Filter dort erzeugt wird, wo er hin soll.


    danke für Tipps und

    gruss,
    heinetz

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • danke!
    das hatte ich natürlich nach ewiger googelei (?) auch schon mehrfach gefunden. Nur eben das Zusammenspiel mit meinem Filter war mir nicht klar. Nun
    habe ich folgendes probiert:

    PHP
    /*—————————————————————————————————————————*//* Filter für bootstrap-Galery/*—————————————————————————————————————————*/
    add_filter( 'post_gallery', 'bootstrap_gallery', 10, 3 );
    function bootstrap_gallery( $output = '', $atts, $instance ) {       //print_r($atts);    add_action( 'wp_footer', 'your_function' );        wp_enqueue_style( 'blueimp', get_stylesheet_directory_uri().'/js/blueimp/css/blueimp-gallery.min.css' );    wp_enqueue_script('blueimp', get_stylesheet_directory_uri().'/js/blueimp/js/jquery.blueimp-gallery.min.js', array('jquery'));...    return $html;}
    function your_function() {    echo '<p>This is inserted at the bottom</p>';}


    ... und es funktioniert tatsächlich wie erwartet. Ist das so gedacht?


    gruss,
    heinetz

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!