这不是一个答案,更多的是一种故障诊断帮助。。。将此功能添加到项目中(可能是functions.php
) 然后从主题中每个模板文件的顶部调用它。。。
/**
* Outputs the name of the file as an HTML comment for easy-peesy troubleshooting.
*
* @param string $file This function should always be passed the value of __FILE__
*/
function output_file_marker( $file )
{
// Strip out system path (keeping only site-root-relative path)
$file = preg_replace( \'|\' . preg_quote( ABSPATH ) . \'|\', \'\', $file );
// Output an HTML comment with the current template path
printf( "\\n\\n<!-- ".__( \'Template file: %s\', \'nvLangScope\' )." -->\\n\\n", \'/\'.$file );
}
这将通过在每个模板的开头输出HTML注释来帮助您确定正在加载哪个模板文件,并可以帮助您解决许多奇怪的“错误模板”问题。
第二,试试这个。。。
将页面属性>模板设置回默认值,然后根据页码而不是slug重命名模板文件(您可能还需要删除模板名称…以防万一)。例如,如果您的问题页面的post id为103,您可以将模板文件命名为page-103.php
如果要将模板保留为管理员可选择的替代模板,请使用不同的命名约定。我使用override-description.php
模板何时应该是管理员可选择的。
最后,确保所有插件都已禁用。插件可以通过覆盖模板来破坏模板。。。这对于某些电子商务包尤其如此。