![](/img/trans.png)
[英]Best way to add a WordPress plugin's options to a non-admin user's menu
[英]How do I add Javascript to every non-admin page in Wordpress?
我有一個插件,以前只需要在內容頁面上加載Javascript。 換句話說,代碼add_filter('the_content', 'insert_js');
足夠了。 現在,我希望將Javascript插入到不是管理頁面或搜索結果頁面的每個頁面中,我想知道是否有一個快捷方式過濾器名稱,或者是否必須列出所有過濾器。 我也只希望將Javascript添加到頁面一次。 如果我必須添加幾行add_filter()
行,那很好,但是我仍然不確定它們需要是什么。 我查閱了《插件API /過濾器參考》文檔( http://codex.wordpress.org/Plugin_API/Filter_Reference ),這似乎模棱兩可。 我也嘗試過使用the_category等等,但都無濟於事。 我還試圖弄清楚如何在首頁上加載Javascript。 我包含的Javascript不是靜態的,需要基於運行時已知的WP特定屬性(例如URL)生成。 任何幫助,將不勝感激。 謝謝。
使用add_action
將腳本添加到特定的掛鈎。 通常, wp_head
用於將腳本添加到head部分,而wp_footer
用於將腳本添加到footer部分。 檢查以下代碼:
<?php
function add_this_script_footer(){ ?>
<script type="text/javascript">
[YOUR JS CODE HERE]
</script>
<?php }
add_action('wp_footer', 'add_this_script_footer'); ?>
或者,您可以使用wp_enqueue_script()
添加外部腳本,如下所示:
<?php
function my_scripts_method() {
wp_enqueue_script(
'custom-script', // handle
get_template_directory_uri() . '/js/custom_script.js', // src
array( 'jquery' ) // dependencies
);
}
add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
?>
您可以在http://codex.wordpress.org/Function_Reference/wp_enqueue_script上找到有關wp_enqueue_scripts
更多詳細信息
進一步@itskawsar的回答; 您可以將wp_enqueue_script()
函數包裝成一個條件,以確保它們僅在非管理頁面上加載:
<?php
function my_scripts_method() {
if (!is_admin()) {
wp_enqueue_script(
'custom-script', // handle
get_template_directory_uri() . '/js/custom_script.js', // src
array( 'jquery' ) // dependencies
);
}
}
add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.