首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这是一个好主意,注册样式只在某些可湿性粉剂页面?

问这是一个好主意,注册样式只在某些可湿性粉剂页面?
EN

Stack Overflow用户
提问于 2018-12-29 22:36:10
回答 2查看 67关注 0票数 0

我有一个页面速度问题,我买的主题真的很糟糕,但我现在不能改变它。我用的是WP_rocket,服务器有HTTP2,但还是要加载很多资源。所以我尝试通过wp_deregister_style来减少样式的数量,并且只在需要的时候加载它。例如,我只需要在.../contact页面中使用contact-form-7前端样式。这是个好主意?或者它可能是有害的?

函数rs_deregister_css () {

代码语言:javascript
复制
global $wp;
 $url = home_url( $wp->request);
 $contakt = strpos($url,'contakt');

   if (!$contakt) {
        wp_deregister_style('contact-form-7');
  }

}

add_action(‘wp_print_style’,'rs_deregister_css',99);

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-12-29 23:53:20

是的,这是一个非常好的主意,因为您只在联系人页面中使用联系人表单,不要忘了取消注册javascript文件

代码语言:javascript
复制
if (!$contakt) {
  wp_deregister_style('contact-form-7');
  wp_deregister_script('contact-form-7');
}
票数 0
EN

Stack Overflow用户

发布于 2018-12-29 22:50:01

是的,这对你的加载时间来说是个好主意。但我建议你在特定的时候加载样式,而不是检查URL,然后每次都卸载它。

尝试读取Conditional Tags

代码语言:javascript
复制
function my_enqueue_stuff() {
  if ( is_front_page() ) {
    /** Call landing-page-template-one enqueue */
        wp_enqueue_style( 'your-style-handle', get_stylesheet_directory_uri() . '/yourfile.css' );
  } else {
    /** Call regular enqueue */
  }
}
add_action( 'wp_enqueue_scripts', 'my_enqueue_stuff' );

编辑

由于您只想加载特定页面的样式或javascript,因此将以下代码添加到您的functions.php:

代码语言:javascript
复制
function remove_wpcf7_extras() {
    remove_action('wp_print_scripts', 'wpcf7_enqueue_scripts');
    remove_action('wp_print_styles', 'wpcf7_enqueue_styles');
}

if( !is_page('contact') ) {
    add_action('wp_head', 'remove_wpcf7_extras');
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53970468

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档