我被告知,在WordPress中注册和排队样式和脚本非常重要,尽管这真的很痛苦。
我对脚本没有问题,但是当我尝试样式时,WordPress在样式表的代码中没有显示任何内容。我想养成以正确的方式构建主题的习惯,因此我想了解如何做到这一点,但我不明白为什么在添加脚本时没有将css添加到代码中。请参见下面的函数文件代码:
<?php
function alpha_scripts(){
$script = get_template_directory_uri() . \'/assets/scripts/\';
wp_register_script(\'bootstrap-js\', $script . \'bootstrap.min.js\', array(\'jquery\'),\'\', false);
//wp_enqueue_script(\'jquery\');
wp_enqueue_script(\'bootstrap-js\');
}
function alpha_styles(){
$style = get_template_directory_uri() . \'/assets/styles/\';
wp_register_style(\'bootstrap-css\', $style . \'bootstrap.min.css\',\'\',\'\', \'screen\');
wp_register_style(\'alpha-css\', $style . \'alpha.css\',\'\',\'\', \'screen\');
wp_enqueue_style(\'bootstrap-css\');
wp_enqueue_style(\'alpha-css\');
}
function alpha_menus() {
register_nav_menus(
array(
\'main-menu\' => __( \'Primary Menu\' ),
\'footer-menu\' => __( \'Footer Menu\' )
)
);
}
add_action(\'wp_enqueue_scripts\', \'alpha_scripts\');
add_action(\'wp_enqueue_styles\', \'alpha_styles\');
add_action(\'after_setup_theme\', \'alpha_menus\');
?>
我做错了什么?我尝试过对url使用不同的引用,比如
get_template_directory_uri() 和
get_stylesheet_directory_uri() 但正如我所怀疑的那样,这两个人并没有什么不同。
最合适的回答,由SO网友:Tim Malone 整理而成
你做得很好——只有一件事你需要改变,我认为这是一个完全合理的错误:
这是:
add_action(\'wp_enqueue_styles\', \'alpha_styles\');
需要成为
add_action(\'wp_enqueue_scripts\', \'alpha_styles\');
为什么
scripts? 因为没有调用Wordpress操作
wp_enqueue_styles. 虽然函数名为
wp_register_style &;
wp_enqueue_style, 您仍然需要将它们连接到多用途
wp_enqueue_scripts 行动
是的,WP core可能只需添加第二个操作即可避免此问题的发生…:)
虽然一开始可能会很痛苦,但一旦你了解排队是如何工作的,这将为你将来节省大量时间。有几个好处:依赖关系可以很容易地管理;您的脚本(&A);样式将跨多个页眉和页脚运行(如果有);以及与脚本挂钩的插件&;样式(例如连接/缩小样式)可以完成它们的工作。