Wsparcie » Wtyczki » Wtyczka – indywidualny head / footer – plik java script

  • albercik

    (@albercik)


    Witam,
    mam takie pytanie.
    Strona (stara stronka – stworzona na indywidulanym cms) została przeniesiona na WordPress.
    Na kilku stronach tej witryny byly wczesniej dodane kalkulatory ktore dzialaja na JavaScript. Odnosniki byly zapisane w Head dla danego wpisu (page), a nie calego skryptu strony.
    Pytanie teraz jak to rozwiazac w WordPress? Nie wiem czy to konieczne dodawanie linku do plikow JS w HEAD dla calej witryny?
    Wydaje mi się, że lepiej byłoby dodac tylko link do plikow JS w HEAD dla danego wpisu czy page. Jest do tego jakaś wtyczka? Być może ktoś ten temat przerabiał już… bo wydaje mi się, że często może sie taka sytuacja pojawić.

    Dziekuję za wszelkie podpowiedzi i sugestie.

Viewing 3 replies - 1 through 3 (of 3 total)
  • Paweł

    (@mrpauloen)

    Zasada jest zawsze ta sama.
    Skrypty dodajesz funkcją wp_enqueue_script.
    Żeby działało tylko dla danej strony, funkcję możesz zawrzeć w funkcji warunkowej:

    if ( is_page( id ) )
    wp_enqueue_script( twój skrypt );
    

    lub dodać sobie shortcode i wtedy skrypt bedzie dodawany tylko wtedy, gdy użyjesz shortcode.

    @mrpauloen dziekuję.

    Mógłbyś podać „receptę” jak ten kod i gdzie umieścić? Przepraszam, ale nie jestem, aż tak obeznany jeżeli chodzi o kody i lokalizację wszystkich plików w WP.

    Do pliku functions.php:

    Albo tak:

    add_action( 'wp_enqueue_scripts', 'kalkulator_enq_script' );
    function kalkulator_enq_script(){
    
            if ( is_page( ID ) ) {
    
            wp_enqueue_script( 'kalkulator', get_stylesheet_directory_uri() . '/js/kalkulator.js', array( 'jquery' ), false, true );
    
            }
    
    }

    Albo tak:

    add_shortcode('kalkulator', 'kalkulator_sh_script');
    function kalkulator_sh_script(){
    
            wp_enqueue_script( 'kalkulator');
    
    	return '<div class="kalkulator">kalkulator</div>';
    }

    ale wtedy kalkulator scrypt należy najpierw zarejestrować;

    add_action( 'wp_enqueue_scripts', 'kalkulator_enq_script' );
    
    function kalkulator_enq_script(){
    
    wp_register_script( 'kalkulator', get_stylesheet_directory_uri() . '/js/kalkulator.js', array( 'jquery' ), null, true );
    
    }

    Jeżeli nie wiesz jak używać funkcji is_page, zajrzy do dokumentacji.

    oraz tu:
    add_shortcode
    wp_enqueue_script

Viewing 3 replies - 1 through 3 (of 3 total)