簡體   English   中英

WordPress 通過函數將 JavaScript 添加到一頁。php

[英]WordPress add JavaScript just to one page via functions.php

在我的 WordPress 網站的一頁上,我使用了一個照片庫。 為此,我需要一個 js 文件。 現在 js 文件正在加載到每個頁面上,但它只需要一個頁面 ID 為 2 的特定頁面。現在的問題是,is_page(2) 在函數中不起作用。php 因為當時沒有設置頁面 ID。 是否仍然可以通過 functions.php 執行此操作,或者您只是在 footer.php 中添加腳本?

function footer_scripts()
{
    // If query if current Page is not wp-login-php or admin page
    if ($GLOBALS['pagenow'] != 'wp-login.php' && !is_admin()) {

            wp_register_script('photo-gallery', get_template_directory_uri() . '/js/back-layer-photo-gallery.js', array('jquery'), '1.3', true);
            wp_enqueue_script('photo-gallery');
 
    }
}  

add_action('init', 'footer_scripts');

您可以在 function.php 中添加此代碼,並用您的頁面和腳本的 slug 名稱填充它

   // Load  conditional scripts
  function your_conditional_scripts()
  {
  if (is_page('pagenamehere')) {
    wp_register_script('scriptname', get_template_directory_uri() . 
  '/js/scriptname.js', array('jquery'), '1.0.0'); // Conditional 
script(s)
    wp_enqueue_script('scriptname'); // Enqueue it!
}
}

add_action('wp_print_scripts', 'your_conditional_scripts'); // Add 
Conditional Page Scripts

您可以使用頁面 slug 而不是頁面 ID,並使用“wp_enqueue_scripts”而不是“init”。 如果您使用的是子主題,請使用“get_stylesheet_directory_uri()”代替“get_template_directory_uri()”,否則您可以保持原樣。

add_action('wp_enqueue_scripts', 'enqueue_script');
function enqueue_script() {
    if (is_page('page_slug_here')) { // Add slug in condition
        wp_enqueue_script('photo-gallery', get_template_directory_uri().'/js/back-layer-photo-gallery.js', array( 'jquery' ), '1.0', true);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM