新建页面右侧的模板下拉框里只有默认模板,明明在主题根目录放了 page-full.php,文件头也写了名字,刷新后台还是不出现。日志里能对上时间点,这种反而好排。
WordPress 只扫描主题根目录和子主题根目录这一层,注释头必须以 Template Name: 开头且放在文件最前面,中间隔了空行或大小写写错都读不到。文件塞进 template-parts 子目录同样扫不到。这一点先确认清楚,后面就不用反复试。
<?php /* Template Name: 全宽页面 */ get_header();
这次卡住的地方就在「页面模板下拉框不显示」这一环,单独把它拎出来验证,别和其他改动混在同一次发布里。线上出问题先对时间点,跟发布、备份、任务执行的时刻排一排,能省掉一半功夫。
处理上按这个顺序:把模板文件放到主题或子主题根目录,别放进子目录;确认文件前几行是 <?php 加 /* Template Name: 全宽页面 */,注释头和 <?php 之间不留空行;保存后刷新页面编辑界面,下拉框里才会出现新模板。
结果对不对很好判断,页面编辑页的下拉框出现「全宽页面」,选中保存后前台走这个文件。
