问题描述
我想知道最有效的方法是添加一个特定于 post 和/或 page 的 javascript 文件。
以下是我想出的几个解决方案:
-
切换到 HTML 编辑视图,并在其中发布您的 JavaScript(非常糟糕的解决方案)
-
关键字& 价值对
-
在 footer.php 中,根据您所在的页面加载 JavaScript 文件 (这会导致很多条件)
在旁边的说明中,没有一个 JavaScript 文件将在页面之间共享 – 它将确切地与您当前正在查看的内容相关。
有什么想法吗?
最佳解决方案
我认为效率和使用适当的 wordpress 方法添加 javascript 之间的最佳平衡将是沿着这些行添加一些东西到你的主题 functions.php 文件。例如:
的 functions.php:
function load_scripts() {
global $post;
if( is_page() || is_single() )
{
switch($post->post_name) // post_name is the post slug which is more consistent for matching to here
{
case 'home':
wp_enqueue_script('home', get_template_directory_uri() . '/js/home.js', array('jquery'), '', false);
break;
case 'about-page':
wp_enqueue_script('about', get_template_directory_uri() . '/js/about-page.js', array('jquery'), '', true);
break;
case 'some-post':
wp_enqueue_script('somepost', get_template_directory_uri() . '/js/somepost.js', array('jquery'), '1.6', true);
break;
}
}
}
add_action('wp_enqueue_scripts', 'load_scripts');
这可以让您完全控制什么被加载到哪里,您的主题中的一个集中位置的 functions.php 文件用于编辑什么被加载到哪里:和这种方式使用 wordpress 方法来安全地添加 JavaScript 到您的帖子和页面。
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。