JS auf Seite ausgeben..

  • Hallo, folgendes Problem..

    möchte auf einer Seite JS ausgeben. Habe dazu den besagten JS und die nötige CSS nur auf dieser Seite verfügbar gemacht.

    Code
    add_action('wp_print_styles', 'add_my_styles', 100);
        function add_my_styles() {
        if ( !is_page( 'Roster' ) )
            return;
    
    
            wp_register_style( 'roster', get_template_directory_uri() . '/css/roster.css');
            wp_enqueue_style( 'roster' );
        }    
    add_action('init', 'add_my_styles');
    Code
    function roster_init() {
        if ( !is_page( 'Roster' ) )
            return;
    
    
        wp_enqueue_script( 'roster_init', get_template_directory_uri() . '/js/roster.js', array('jquery'));
    }
    add_action( 'template_redirect', 'roster_init' );

    anschließend habe ich versucht via:

    Code
    <script type="text/javascript"> <!-- roster_init(); //--></script>

    den JS ausgeben zu lassen. Ohne Erfolg. Zwar werden beide Dateien die vom Server gezogen nur funktioniert die Ausgabe dieser nicht. Was vergesse ich? Was mache ich falsch? Komme nicht wirklich weiter.

    Grüße Chris

    Einmal editiert, zuletzt von Christian.Ott (22. August 2014 um 18:23)

    • 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

  • Jetzt müsste man natürlich den Inhalt der Javascript Datei kennen aber grundsätzlich sollte die Einbindung wie folgt durchgeführt werden:

    Code
    add_action( 'wp_enqueue_scripts', 'mensmaximus_add_my_stuff' );
    
    
    function mensmaximus_add_my_stuff() {
        if ( !is_page( 'Roster' ) ) { return; }
        wp_enqueue_style( 'roster', get_stylesheet_directory_uri() . '/css/roster.css');
        wp_enqueue_script( 'roster_init', get_stylesheet_directory_uri() . '/js/roster.js', array('jquery'));
    }

    wp_register_xxx kannst Du Dir in dem Fall sparen. Das machst Du nur wenn Du die Scripte und Styles schon vorher registrierst und erst später, z.B. in einem Shortcode einbindest.

    get_template_directory_uri() habe ich durch get_stylesheet_directory_uri() ersetzt, damit es auch mit Childthemes funktioniert.

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

Jetzt mitmachen!

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