Wordpress页面模板不会出现在模板下拉列表中

时间:2017-11-18 03:58:55

标签: wordpress templates caching themes admin

我刚刚在WP主题文件夹中添加了一个新的自定义模板文件。 这个新模板就像我的其他模板文件一样:

<?php
/*
Template Name: My Template Name
*/

扼杀,这个新模板不会出现在管理页面编辑内的模板下拉列表中。

它似乎有一个WP缓存问题或类似的东西......我试图清除浏览器的cookie和缓存,清除我的服务器缓存等等......但它不起作用。

3 个答案:

答案 0 :(得分:1)

经过一个多小时的搜索和测试很多东西,我发现我需要更改主题版本让WP知道新的文件结构( inside style.css ):

/*
Theme Name: My Theme Name
Version: 1.0.0
*/ 

/*
Theme Name: My Theme Name
Version: 1.0.1
*/ 

它终于奏效了! 希望它会帮助别人;)

答案 1 :(得分:0)

如果安装了WP-CLI,请尝试运行DF2.assign(name=[x.split('abc')[1][4:].title() for x in DF2['name']]) Out[48]: name other 0 First Line Of Text 10 1 Second Line Of Text 20

您可以将此代码放入您的functions.php

function fix_template_caching( WP_Screen $current_screen ) {
    if ( ! in_array( $current_screen->base, array( 'post', 'edit', 'theme-editor' ), true ) ) {
        return;
    }
    $theme = wp_get_theme();
    if ( ! $theme ) {
        return;
    }
    $cache_hash    = md5( $theme->get_theme_root() . '/' . $theme->get_stylesheet() );
    $label         = sanitize_key( 'files_' . $cache_hash . '-' . $theme->get( 'Version' ) );
    $transient_key = substr( $label, 0, 29 ) . md5( $label );
    delete_transient( $transient_key );
}

add_action( 'current_screen', 'fix_template_caching' );

参考:Fix for theme template file caching https://gist.github.com/westonruter/6c2ca0e5a4da233bf4bd88a1871dd950

:)

答案 2 :(得分:0)

对我来说,解决方案是更改缺少模板的文件权限。由于某种原因,我上传文件时权限不正确,但是将其chmod权限更改为755后,模板按预期显示在下拉菜单中。

参考:https://vanseodesign.com/wordpress/wp-page-templates-dropdown/