Chcę uruchomić konkretną js na określonej stronie. I.E: Wwww.custom.com/english/

Próbowałem następujących dwóch kodów (header.php i funkcje.php), ale żaden z nich nie działa.

Kod 1:

<script>
if(location.pathname=="/english/") 
 script.src = /js/custom.js;
</script>

Kod 2:

function my_scripts() {
    if( is_page( array( 'about-us', 'contact', 'management' ) ){
        wp_enqueue_script( 'script-name', 'path/to/example.js', array(), '1.0.0', true );
    }
}
add_action( 'wp_enqueue_scripts', 'my_scripts' );

Nagłówek w ogóle nie pokazuje, bez błędu. Funkcje.php to błąd składni.

Jakieś sugestie? Bardzo zobowiązany

PS: Używam WordPress.

5
Project Orbit 3 wrzesień 2017, 05:03

2 odpowiedzi

Najlepsza odpowiedź

Kod jest świetny! Właśnie brakuje Ci nawiasów zamykających:

function my_scripts() {
    if( is_page( array( 'about-us', 'contact', 'management' ) ) ){
        wp_enqueue_script( 'script-name', 'path/to/example.js', array(), '1.0.0', true );
    }
}
add_action( 'wp_enqueue_scripts', 'my_scripts' );

W celu przyszłego odniesienia, w pliku WP-config.php możesz ustawić debugowanie na prawdziwe, wierzę, że to go podniesie.

9
Siegfried Grimbeek 3 wrzesień 2017, 03:56

Jest wiele innych sposobów.

Wystarczy otworzyć header.php i spróbuj uzyskać bieżącą stronę ślimakową lub identyfikator i umieścić proste, jeśli warunek będzie to z pewnością zawierać Twoją JS

Kod 1

global $post;
$post_slug=$post->post_name;
if($post_slug == 'about'){
<script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/js/example.js"></script>
}

Lub kod 2.

$currentID= get_the_ID();
//instead of 10 put the your id
if($currentID == 10){
 <script type="text/javascript" src="<?php echo get_template_directory_uri(); ?>/js/example.js"></script>
}
1
A Shah 3 wrzesień 2017, 03:28