将自定义模板放入子目录是否会破坏任何本机WordPress功能

时间:2015-01-11 作者:ptf

我已在现有项目上创建了一个名为templates 在我放置所有自定义模板文件的主题根目录中Template Name: BlahBlahBlah 在文件的顶部。

这一更改打破了我在代码中获取文件名的位置:get_post_meta( $post_id, \'_wp_page_template\', true );.

我这样修复它:basename(get_post_meta( $post_id, \'_wp_page_template\', true ));.

我的问题是,如果我在WordPress中做了这样的更改而破坏了某些东西。有人知道吗?

1 个回复
最合适的回答,由SO网友:cybmeta 整理而成

由于WP 3.4页面模板可以存储在主题根文件夹或直接子目录中,所以这没有问题。但重命名页面模板(包括将文件移动到其他目录)将取消分配当前使用它的所有页面的页面模板。

要重新分配页面模板,只需编辑页面,然后重新选择所需的模板。

关于get_post_meta( $post_id, \'_wp_page_template\', true );, 如果模板文件位于“mytheme/sub-dir/templae file.php”下,则_wp_page_template 值应为“sub dir/template fie.php”。使用basename 只保留“template fie.php”;您可能有理由只需要文件名,但它不是_wp_page_template, 所以它没有坏。

结束

相关推荐

如何使用GET_TEMPLATE_DIRECTORY_URI()加载我的主题的子文件夹中的图像?

如何将子文件夹中的图像插入主题目录?我有以下情况:在我的自定义主题目录中,我有以下文件夹,其中包含jpg 图片:/assets/img/flexslider/flex-1.jpg现在在我的header.php 文件,我有这样的东西:<li> <img src=\"assets/img/flexslider/flex-1.jpg\"> <div class=\"flex-caption\"> <p class=\"flex-c