当我尝试将引导导航与儿童主题结合使用时,出现了一些问题,我一辈子都想不出来。
父主题称为Revera。
这是一个引导主题。它包括引导。min.js和引导。min.css文件。然而,使用的版本看起来很旧,我认为这是导致我添加的引导导航栏不太工作的原因(它似乎正常工作,但样式不正确。移动菜单的三个栏缺失,导航按钮中显示“切换导航”一词)。
我想做的是使用具有子主题的更新版本的引导。但我试图实现这一目标的每一种方法似乎都没有奏效。在函数中。我拥有的子主题的php:
function enqueue_child_theme_styles() {
wp_register_script( \'bootstrap-js\', get_template_directory_uri() . \'/bootstrap/js/bootstrap.min.js\', array(\'jquery\'), NULL, true );
wp_register_style( \'bootstrap-css\', get_template_directory_uri() . \'/bootstrap/css/bootstrap.min.css\', false, NULL, \'all\' );
wp_enqueue_script( \'bootstrap-js\' );
wp_enqueue_style( \'bootstrap-css\' );
}
add_action( \'wp_enqueue_scripts\', \'enqueue_child_theme_styles\', PHP_INT_MAX);
然而,上面的代码似乎没有任何作用。我尝试了各种方法来解决这个问题,但似乎什么都不起作用。我错过了什么?
SO网友:chrisguitarguy
get_template_directory_uri
始终返回父主题的URI。
从文档中:
在使用子主题的情况下,将返回父主题目录URI
你可能想要get_stylesheet_directory_uri
.
add_action(\'wp_enqueue_scripts\', \'wpse174502_styles\', PHP_INT_MAX);
function wpse174502_styles()
{
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\');
}
无论何时调试排队,请确保。。。
检查呈现的页面源。您期望的资产是否包括在内检查所选浏览器中的开发人员工具控制台。是否有错误?这些错误是否与您的资产有关
SO网友:Digitaldervish
好吧,我发现问题是多方面的,但很大一部分是新手犯的错误。
我在子主题中包含的引导文件的权限设置不正确。他们在尝试排队时返回了403禁止的错误。我没有意识到这一点,因为父引导文件仍在排队。直到我注销了父文件样式表,我才意识到这个错误。
我的最终代码:
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);