0

我正在尝试在我的插件目录中注册一个主题文件夹,以便我可以为页面和内容提供“标准”主题。如果他们愿意,用户可以在他们自己的主题文件夹中覆盖这些,但至少有一个用户的“骨架”。

我发现了这个功能register_theme_directory(),但它似乎没有按预期工作。

这是我的代码:

add_filter('init', 'test_templates_dir');
function test_templates_dir(){
    $plugindir = dirname( __FILE__ );
    register_theme_directory($plugindir."/themefiles");
}

在我的$plugindir."/themefiles"目录中,我有一个名为的文件tpl-directory.php,在该模板文件中,我有这个:

<?php
/*
 *Template name: Directory template
 */
?>

但是,当我“添加新”页面时,这不会出现在可用模板列表中。

我究竟做错了什么?有人知道吗?或者有谁知道更好的方法来做我想要实现的目标?我已经读过没有过滤器或挂钩可以“手动添加模板文件”(尽管如果我能这样做,我会很高兴的!)。

非常感谢!

4

1 回答 1

2

抱歉,该功能只能让 wp 在该文件夹中查找更多主题,而不是页面模板。

显然没有办法将页面模板添加到当前活动主题,但您可以捕获当前类型的内容以从插件内部加载特定模板,或者在激活时在当前主题内添加新模板文件。

有关更多详细信息,请参阅此线程: WP - 将插件目录中的文件用作自定义页面模板?

于 2012-09-25T23:56:49.527 回答