Java Script nur auf bestimmten Seiten laden

  • Hallo,

    ich würde das gerne so haben dass ein Java-Script sich nur auf bestimmten Seiten lädt.
    Am besten nach der ID.

    Für Hilfe, vielen Dank voraus.

    PHP
    /**
     * Load JavaScript 
     */
    function js_file() {
    wp_enqueue_script('custom-js', get_stylesheet_directory_uri() . '/js/example.js', array('jquery'), false, false);
    }
    add_action('wp_enqueue_scripts', 'js_file');

    Stück Brot dabei..? - Danke, Google kenne ich..

    • 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

  • Es müsste gehen, wenn die Bedingung innerhalb der function gestellt wird [ID-Parameter in is_single() entsprechend anpassen]:

    Code
    function js_file() {
    if ( is_single(ID) ) wp_enqueue_script('custom-js', get_stylesheet_directory_uri().'/js/example.js',array('jquery'),false,false);
    }
    add_action('wp_enqueue_scripts','js_file');
  • Hallo,
    kurze Frage noch dazu.
    Wenn ich mehrere Page ID,s nutzen möchte

    Zitat


    if ( is_page(ID) )


    wie müssten dann der Code aussehen?

    Danke wieder voraus.

    Stück Brot dabei..? - Danke, Google kenne ich..

  • Vielen Dank.

    Wenn ich das richtige verstehe muss der Code bei mehreren ID,s wie folgt aussehen, oder?

    Code
    function wp_javascript() {
        if (is_page ('10,14,16,18')) {

    Danke voraus.

    Stück Brot dabei..? - Danke, Google kenne ich..

  • Mit Array funktioniert es einwandfrei.

    PHP
    function wp_javascript() {
        if ( is_page( array( '2198', '541', '639' ) ) ) {

    Stück Brot dabei..? - Danke, Google kenne ich..

  • Vielen Dank. Funktioniert auch Super.

    Kurze Frage dazu - warum ohne Hochkomma? Hat das was mit neueren PHP Versionen oder anderem zu tun..?

    Danke voraus.

    Stück Brot dabei..? - Danke, Google kenne ich..

  • Das liegt daran, dass Post-IDs vom Datentyp integer sind (so auch der entsprechende Datenbanktyp, genau genommen bigint). String-Parameter sind in der is_page-Funktion für den Post-slug oder den Post-title als Angabe vorgesehen. Als (nicht-redundanter) Primärschlüssel ist die ID die präziseste Angabe, um in der Datenbank effizient einen Post zu finden.

Jetzt mitmachen!

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