Twenty12个子主题style.css?ver=3.8.1

时间:2014-02-13 作者:Steve

我已经创建了一个儿童主题“212”。

在前端<head> 节包含以下行:

http://example.com/wp-content/themes/childtheme/style.css?ver=3.8.1

我对所做的任何更改childtheme/style.css 未反映在http://example.com/wp-content/themes/childtheme/style.css?ver=3.8.1

我在Twentyle2和childtheme中进行了搜索,没有找到任何包含3.8.1版本的enqueue\\u style实例,也没有找到任何style的硬编码。css?版本=3.8.1

我该如何:

更新样式。css?版本=3.8.1或强制站点使用http://example.com/wp-content/themes/childtheme/style.css 而不是/风格css?版本=3.8.1谢谢

Update:

我将以下内容添加到/子主题/函数。php

function add_require_scripts_files() {
 wp_enqueue_style(\'layout\', get_stylesheet_directory_uri().\'/style.css\', array(), \'1.0.0\', "all");        
}

add_action( \'wp_enqueue_scripts\', \'add_require_scripts_files\' );
但前端包含代码:

<link rel=\'stylesheet\' id=\'layout-css\'  href=\'http://example.com/wp-content/themes/childtheme/style.css?ver=1.0.0\' type=\'text/css\' media=\'all\' />
<link rel=\'stylesheet\' id=\'twentytwelve-style-css\'  href=\'http://example.com/wp-content/themes/childtheme/style.css?ver=3.8.1\' type=\'text/css\' media=\'all\' />
样式。css?版本=3.8.1是替代样式。css?版本=1.0.0

Update 2:

在/childtheme/functions中。php,我替换了

function add_require_scripts_files() {
 wp_enqueue_style(\'layout\', get_stylesheet_directory_uri().\'/style.css\', array(), \'1.0.0\', "all");        
}
使用

function add_require_scripts_files() {
 wp_enqueue_style(\'twentytwelve-style\', get_stylesheet_directory_uri().\'/style.css\', array(), \'1.0.0\', "all");        
}
这意味着风格。css?未加载ver=3.8.1。

3 个回复
最合适的回答,由SO网友:Jorge Y. C. Rodriguez 整理而成

这取决于你想做什么,但是如果你更容易编辑模板,那么你最好控制它的所有输出。。像这样的外汇

function add_require_scripts_files() {
 wp_enqueue_style(\'layout\', get_template_directory_uri().\'/style.css\', array(), \'1.0.0\', "all");        
}


add_action( \'wp_enqueue_scripts\', \'add_require_scripts_files\' );
这就是函数所期望的参数:

wp_enqueue_style( $handle, $src, $deps, $ver, $media );
并记住删除在中添加css文件的函数init 作用

SO网友:Chip Bennett

让我们看看212在样式表中的位置:

function twentytwelve_scripts_styles() {
    global $wp_styles;

    /*
     * Adds JavaScript to pages with the comment form to support
     * sites with threaded comments (when in use).
     */
    if ( is_singular() && comments_open() && get_option( \'thread_comments\' ) )
        wp_enqueue_script( \'comment-reply\' );

    // Adds JavaScript for handling the navigation menu hide-and-show behavior.
    wp_enqueue_script( \'twentytwelve-navigation\', get_template_directory_uri() . \'/js/navigation.js\', array(), \'1.0\', true );

    $font_url = twentytwelve_get_font_url();
    if ( ! empty( $font_url ) )
        wp_enqueue_style( \'twentytwelve-fonts\', esc_url_raw( $font_url ), array(), null );

    // Loads our main stylesheet.
    wp_enqueue_style( \'twentytwelve-style\', get_stylesheet_uri() );

    // Loads the Internet Explorer specific stylesheet.
    wp_enqueue_style( \'twentytwelve-ie\', get_template_directory_uri() . \'/css/ie.css\', array( \'twentytwelve-style\' ), \'20121010\' );
    $wp_styles->add_data( \'twentytwelve-ie\', \'conditional\', \'lt IE 9\' );
}
add_action( \'wp_enqueue_scripts\', \'twentytwelve_scripts_styles\' );
钩子是wp_enqueue_scripts, 在的优先级为0时激发wp_head. 重要的排队是:

    // Loads our main stylesheet.
    wp_enqueue_style( \'twentytwelve-style\', get_stylesheet_uri() );
请注意get_stylesheet_uri() 对儿童主题友好,可以自动将儿童主题排成队列style.css 文件,而不是父(模板)主题的style.css.

如果“二十一点十二”是活动主题,则会得到如下输出:

<link rel=\'stylesheet\' id=\'twentytwelve-style-css\'  href=\'http://example.com/wp-content/themes/twentytwelve/style.css?ver=3.8.1\' type=\'text/css\' media=\'all\' />
但是,如果一个212子主题处于活动状态,您将得到您的输出:

<link rel=\'stylesheet\' id=\'twentytwelve-style-css\'  href=\'http://example.com/wp-content/themes/childtheme/style.css?ver=3.8.1\' type=\'text/css\' media=\'all\' />
这意味着,您不必在子主题中做任何特殊的事情,就可以将子主题的样式表排队。如果将子主题的style.css 单独使用不同的段塞(例如layout), 您将获得两次相同的样式表链接输出-这正是您所观察到的。

这个?ver=3.8.1 是当前WordPress版本,由于没有将版本号传递给wp_enqueue_style() 呼叫除了潜在的浏览器缓存之外,它不应该引起任何问题。所以,如果你对你孩子的主题style.css 并且这些更改不会反映在前端,请确保在转储缓存的情况下重新加载页面。

SO网友:PattyOK

取消注册默认样式,然后在子主题的函数中使用版本号重新注册。php对我来说很有用。

在子主题中:函数。php:

add_action( \'wp_enqueue_scripts\', \'my_scripts_method\' );`

function my_scripts_method() {
    $VERSION_NUMBER = \'1.0.1\';

     // First de-register the main stylesheet
    wp_deregister_style( \'twentytwelve-style\' );

    // Then add it again, using your custom version number
    wp_register_style( \'twentytwelve-style\', get_stylesheet_uri(), array(), $VERSION_NUMBER );

    //finally enqueue it again
    wp_enqueue_style( \'twentytwelve-style\');
}
我早就知道\'twentytwelve-style\' 是我需要替换的一个,因为以前,链接到我的风格。css显示为:

<link rel=\'stylesheet\' id=\'twentytwelve-style-css\'  href=\'https://site-url/wp-content/themes/child-theme/style.css?ver=4.6.1\' type=\'text/css\' media=\'all\' />
现在:

<link rel=\'stylesheet\' id=\'twentytwelve-style-css\'  href=\'https://site-url/wp-content/themes/child-theme/style.css?ver=1.0.1\' type=\'text/css\' media=\'all\' />

结束

相关推荐