如何为WordPress页面模板而不是整个网站加入引导脚本和样式

时间:2018-10-14 11:57:09

标签: wordpress twitter-bootstrap wordpress-theming custom-wordpress-pages

我是WordPress的新手,正在为我的网站构建一个页面模板。我想保留大部分站点的主要WordPress主题,但是我有一个非常特定的应用程序,我希望仅在几个页面上使用Bootstrap。为了避免在主题更新时丢失自定义工作,我使用页面模板制作了子主题,然后从WordPress中为相应页面选择了该模板。

我终于为我的functions.php(基于示例here)创建了此脚本:

<?php
function enqueue_child_theme_styles() {
//deregister the parent bootstrap style and script  
wp_deregister_style( 'bootstrap' );
wp_deregister_script( 'bootstrap' );

//enqueue my child theme stylesheet
wp_enqueue_style( 'child-style', get_stylesheet_uri(), array('theme') );

//enqueue bootstrap in the child theme 
wp_enqueue_script('bootstrap-js', get_stylesheet_directory_uri().'/bootstrap/js/bootstrap.min.js', array('jquery'), NULL, true);
wp_enqueue_style('bootstrap-css', get_stylesheet_directory_uri().'/bootstrap/css/bootstrap.min.css', false, NULL, 'all');

}

add_action( 'wp_enqueue_scripts', 'enqueue_child_theme_styles', PHP_INT_MAX);

这对我的页面模板来说非常理想,现在它可以响应Bootstrap类了……不幸的是,我网站上的所有其他内容也是如此。我该如何仅在Wordpress尝试加载我的页面模板时才应用此方法,而在所有其他情况下忽略它?

1 个答案:

答案 0 :(得分:1)

使用is_page_template

if (is_page_template($templatename))
{
wp_enqueue_script('bootstrap-js', get_stylesheet_directory_uri().'/bootstrap/js/bootstrap.min.js', array('jquery'), NULL, true);

...etc

}

提供的链接中包含您要查找的确切示例。