我应该向wp_enQueue_style传递什么参数才能依赖于主题样式表?

时间:2011-02-16 作者:Tom

我写了一个基本的gallery plugin 使用wp_enqueue_style 在页面上包含样式表。我希望WordPress主题能够覆盖插件的样式,这意味着我希望我的插件能够很好地播放并输出css文件before 主题css文件。

wp_enqueue_style 有一个deps 此要求的参数。我的问题是,我应该为deps 参数,如果我想说“我依赖于主题css文件”?

当前插件代码不正确,因为它使用false 对于deps 参数:

   // Enqueue a CSS style file - see http://codex.wordpress.org/Function_Reference/wp_enqueue_style                                                         
   wp_enqueue_style(\'bitvol_galleria_css\', BITVOL_GALLERIA_URL . \'/bitvolution-image-galleria.css\', false, $this->bitvol_galleria_version, \'all\' );

2 个回复
最合适的回答,由SO网友:Rarst 整理而成

第一个问题-您向后依赖。取决于某事意味着加载after 依赖关系,而您希望更早。

第二个问题-theme的样式表实际上不使用排队,它通常直接编码在header.php 主题文件。而且因为它似乎在wp_head() 调用-您没有钩子来确保样式表位于其上方。

所以这通常像你的workaround - 队列样式表,带有通过代码或admin中的选项禁用它的选项。

SO网友:Tom

我想我会发布我正在使用的变通方法,直到我知道问题的答案。。。

我的解决方法是:

剪切(&L);将插件中的CSS代码粘贴到主题中(即。style.css) 并根据需要进行修改functions.php:functions.php:

add_action( \'wp_print_styles\', \'my_deregister_styles\', 100 );

function my_deregister_styles() {
  wp_deregister_style( \'bitvol_galleria_css\' );
}
在某些方面,这种变通方法可能是更好的解决方案?(因为通过减少标题部分中包含的CSS资源的数量,网站性能会更好)。

相关推荐

在带有PHP的子主题中包含style.css

在里面https://codex.wordpress.org/Child_Themes 这是包含样式的最佳实践。css在子主题中,必须将下面的代码放入函数中。php的子主题,但将“父样式”替换为可以在函数中找到的父主题的参数。父主题的php。我在我的主题文件中找不到它,那里也没有多少代码。使用@import包含父主题样式表的方法不适用于我,放入文件的css不会在任何浏览器的站点上显示自己。function my_theme_enqueue_styles() { $parent_s

我应该向wp_enQueue_style传递什么参数才能依赖于主题样式表? - 小码农CODE - 行之有效找到问题解决它

我应该向wp_enQueue_style传递什么参数才能依赖于主题样式表?

时间:2011-02-16 作者:Tom

我写了一个基本的gallery plugin 使用wp_enqueue_style 在页面上包含样式表。我希望WordPress主题能够覆盖插件的样式,这意味着我希望我的插件能够很好地播放并输出css文件before 主题css文件。

wp_enqueue_style 有一个deps 此要求的参数。我的问题是,我应该为deps 参数,如果我想说“我依赖于主题css文件”?

当前插件代码不正确,因为它使用false 对于deps 参数:

   // Enqueue a CSS style file - see http://codex.wordpress.org/Function_Reference/wp_enqueue_style                                                         
   wp_enqueue_style(\'bitvol_galleria_css\', BITVOL_GALLERIA_URL . \'/bitvolution-image-galleria.css\', false, $this->bitvol_galleria_version, \'all\' );

2 个回复
最合适的回答,由SO网友:Rarst 整理而成

第一个问题-您向后依赖。取决于某事意味着加载after 依赖关系,而您希望更早。

第二个问题-theme的样式表实际上不使用排队,它通常直接编码在header.php 主题文件。而且因为它似乎在wp_head() 调用-您没有钩子来确保样式表位于其上方。

所以这通常像你的workaround - 队列样式表,带有通过代码或admin中的选项禁用它的选项。

SO网友:Tom

我想我会发布我正在使用的变通方法,直到我知道问题的答案。。。

我的解决方法是:

剪切(&L);将插件中的CSS代码粘贴到主题中(即。style.css) 并根据需要进行修改functions.php:functions.php:

add_action( \'wp_print_styles\', \'my_deregister_styles\', 100 );

function my_deregister_styles() {
  wp_deregister_style( \'bitvol_galleria_css\' );
}
在某些方面,这种变通方法可能是更好的解决方案?(因为通过减少标题部分中包含的CSS资源的数量,网站性能会更好)。