我正在开发一个基于Wordpress的项目,我刚刚通过上传模板文件为安装添加了一个新模板。我正在创建一个将使用我的新模板的新页面,突然之间,“页面属性”框中的“模板”下拉列表消失了。
我正在使用Wordpress 3.0.1。
更新: 我看到一个网站告诉我恢复默认模板,然后回到我的自定义模板。显然它有效,但我仍然对触发这个bug的原因感到困惑。此外,任何有关此错误的其他知识或指针将是一个很大的帮助,因为我的工作要求我修补此(并可能将错误修复提交到Wordpress)。谢谢!
答案 0 :(得分:23)
如果您已从模板目录中禁用或删除了style.css,那么它也将无效。
因此模板目录上必须有style.css,然后才会显示templates目录。当您尝试从模板目录中删除style.css或使用css文件夹中的style.css时,您必须在模板目录中放置一个style.css。
由于
答案 1 :(得分:16)
<?php
/**
* Template Name: Front Page
*/
?>
答案 2 :(得分:13)
我找到了一个不同的解决方案。我重新激活了我的自定义主题,但问题仍然存在..然后在自定义页面模板的代码的最顶部,它实际上定义了模板的名称,如下所示:
<?php
/*
Template Name: Front Page
*/
?>
我这样做了:
<?php
/**
* Template Name: Front Page
*/
?>
然后刷新了管理面板,它出现了。看起来有点奇怪,但它对我有用。感到高兴分享这个。
答案 3 :(得分:8)
将style.css放在主题目录中,而不是css文件夹中。或
<?php
/*
Template Name: Front Page
*/
?>
&#34;模板名称之间不能有空格:&#34;。
答案 4 :(得分:5)
我设法通过确保主题根目录中的style.css
包含主题评论来解决此问题。我不小心删了我的,它删除了模板下拉列表。
https://codex.wordpress.org/Theme_Development#Theme_Stylesheet
答案 5 :(得分:4)
我在WordPress 3.2.1中遇到了完全相同的问题。我添加了一个新模板,菜单从页面添加/编辑屏幕中消失。解决方案是切换回默认的二十二主题结束然后回到我的自定义主题。模板下拉菜单再次出现。
顺便说一句,你说“恢复到默认模板,然后回到我的自定义模板”,但我很确定你的意思是主题。我猜你在哪里看到的就是这里:http://wordpress.org/support/topic/template-file-drop-down-not-appearing
看起来这个bug至少存在了几年。我提交了一份报告: http://core.trac.wordpress.org/ticket/18324
答案 6 :(得分:4)
我知道这个问题已经太晚了,但我确定添加了
Version: 0.1 alpha
在themeFolder/style.css
这是我的style.css
完成了我的主题
/*
Theme Name: Stockout Theme
Theme URI: http://stockout.com.uy/myTheme
Author: MauriPastorini
Author URI: http://stockout.com.uy
Description: This is a theme for stockout page
Version: 0.1 alpha
*/
我希望有人找到这个有用的
答案 7 :(得分:2)
尝试一下。模板将可用于页面和帖子
<?php
/**
* Template Name: Blog Post
* Template Post Type: post, page
?>
答案 8 :(得分:2)
我尝试了许多建议的答案。在我的情况下,没有一个起作用。
模板下拉列表未显示的可能原因是主题文件夹中缺少index.php
。
只需创建一个空的,以防您的层次结构不需要一个。但是该文件的存在允许选择页面模板的选项,并抑制选择主题页面btw
中的错误消息。答案 9 :(得分:1)
我有两天这个问题了。这个论坛和几个测试后来完成了工作。以下是我缺少的内容。
确保主题文件夹中有style.css。
style.css必须在文件顶部有一个有效的评论部分。 这至少意味着:
RigidBody
如果你正在使用SASS或LESS,请确保你有一个&#34;!&#34;在宣布你的评论之后。要防止SASS或LESS删除您的评论部分。
确保一切都很好。你可以去&#34;外观&gt;主题&#34 ;.在列出主题之后,如果没有什么,那么一切都应该没问题。否则,它将被写成&#34; Broken Themes&#34;你还有一些问题需要解决。
答案 10 :(得分:1)
我有一段时间没遇到这个问题,经过大量搜索后找到了一个很好的解决方案 - 有时在你的安装中切换到另一个主题然后切换回你的主要主题将使你的模板出现。我知道这听起来很奇怪,但对我工作了一段时间。
答案 11 :(得分:1)
如果在主题根目录中添加了0个自定义模板文件,则不会看到下拉列表。
当至少有1个模板可用时,WordPress生态系统将其选中,并且下拉列表将变为可见。
在主题根目录中添加它以进行尝试。
<?php
/*
Template Name: Front Page
*/
答案 12 :(得分:1)
sass删除了我的子style.css中的内容。添加完评论后,模板下拉列表将再次显示。 / * 主题名称:Sometheme Child 说明:Sometheme的儿童主题。 模板:sometheme 版本:1.1 文字网域:sometheme-child * /
答案 13 :(得分:0)
如果您尝试使用博客页面,请转到 GOTO 仪表板 > 设置 > 并从选择菜单中删除帖子页面 :)
答案 14 :(得分:0)
答案 15 :(得分:0)
在我的情况下,我已经调用了模板schedule-template-v2.php,该模板不起作用,文件名必须为schedulev2-template.php。一个简单的错误。
答案 16 :(得分:0)
这对我来说也是一个问题,这是由于文件夹结构所致。主题手册告诉我a应该这样组织主题文件夹和文件:
assets (dir)
- css (dir)
- images (dir)
- js (dir)
inc (dir)
template-parts (dir)
- footer (dir)
- header (dir)
- navigation (dir)
- page (dir)
- post (dir)
404.php
archive.php
comments.php
footer.php
front-page.php
function.php
header.php
index.php
page.php
README.txt
rtl.css
screenshot.png
search.php
searchform.php
sidebar.php
single.php
style.php
我尝试加载的页面模板位于/template-parts/page/template-contactus.php
我想这对WordPress来说太深了,所以我得到了这些目录,现在我的文件结构如下:
assets (dir)
- css (dir)
- images (dir)
- js (dir)
inc (dir)
template-parts (dir)
- section-content.php
- template-contactus.php
404.php
archive.php
comments.php
footer.php
front-page.php
function.php
header.php
index.php
page.php
README.txt
rtl.css
screenshot.png
search.php
searchform.php
sidebar.php
single.php
style.php
我现在可以看到模板下拉菜单并添加模板。
希望这对某人有帮助。
答案 17 :(得分:0)
这个问题上有很多很好的答案,但是一个显而易见的解决方案最初使我逃脱了,是在 Dashboard> Settings> Reading 中再次检查您是否要设置“您的主页”显示”到“静态页面”,然后保持未选中“帖子页面”。
虽然主题和正确编码的主题文件在这种情况下起作用,但是“编辑页面”屏幕上的页面属性区域未显示模板下拉菜单的原因可能是因为您选择了特定页面作为您的页面“帖子页面”,因此WordPress不会要求您使用自定义模板,因为它已经在使用front-page.php或home.php(See WordPress Template Visual Hierarchy)。
希望这可以帮助像我这样的人,他们具有正确编码的模板文件,但没有意识到已选择此设置。
答案 18 :(得分:0)
以下是我的工作,并在页面属性中显示模板选项。只需将.php文件放在主题根文件夹中。
<?php
/* template name: my custom template */
?>
答案 19 :(得分:0)
如果您正在处理子主题
,请特别正确设置style.css文件
/*
Theme Name: Theme Name
Theme URI: http: //mysite.com/
Description: This is a custom child theme for xxx theme
Author: My Name
Author URI: http: //mysite.com/
Template: template_name_in_lowercase
Version: 0.1
*/
答案 20 :(得分:0)
我找到了问题的根源。
它是主题根目录中的style.css
文件。
必须采用“UNIX编码”。
必须包含“主题名称”,“版本”等所有评论。
答案 21 :(得分:0)
杰克尼科尔森是对的!您需要确保style.css包含完整注释。示例如下:
以前我的是:
/*
Theme Name: Acadata
Theme URI: https://www.factorypattern.co.uk
Description: Custom
Author: Factory Pattern
Version: 1
License: GNU General Public License
License URI: license.txt
*/
然后我将其更改为以下内容,现在我可以看到所有模板。
/*
Theme Name: Acadata
Theme URI: https://factorypattern.co.uk/
Description: Custom
Author: Factory Pattern
Author URI: https://factorypattern.co.uk/
Description: The Acadata theme for WordPress.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: black, brown, orange, tan, white, yellow, light, one-column, two-columns, right-sidebar, flexible-width, custom-header, custom-menu, editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, translation-ready
Text Domain: acadata
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/
答案 22 :(得分:0)
我刚遇到同样的问题,问题是'模板名称'和冒号之间的间距。
/*
Template Name: template-name
*/
确保结肠前没有间距。