如何为自定义模块创建模板,以在我的主题中显示在前端?

时间:2021-08-20 作者:Chris

我想创建一个简单的插件,前端有一个表单,将3个字段的值提交到DB表中。

对于插件,我一直在使用以下答案:https://wordpress.stackexchange.com/a/162476/77891

我现在无法使用的是一个模板。

在主插件文件中,我添加了:

add_action( \'gm_virtual_pages\', function( $controller ) {

    // first page
    $controller->addPage( new \\WEBP\\Management\\Page( \'/custom/page\' ) )
        ->setTitle( \'My First Custom Page\' )
        ->setTemplate( \'custom-page-form.php\' );
} );
还有我的custom-page-form.php:

<?php 
echo "Test Echo";

?>
<p>Test</p>
<p>Echo</p> 
正在显示标题(我的第一个自定义页)。但不是我的测试回声。正确/有效的模板文件必须是什么样的?

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

wordpress中的模板只需要是有效的PHP文件。您需要将模板放在主题(或子主题目录)中。

您是否已将模板放置在插件目录中?如果是,它将不起作用。https://gist.github.com/gmazzap/1efe17a8cb573e19c086

通过setTemplate设置的模板文件必须位于主题(或子主题)文件夹中。

有关此问题的更多详细信息,您可以尝试在wordpress中启用debug more并启用错误报告。

相关推荐

Updating modified templates

我想调整一些。php模板文件在我的WordPress主题中,我知道正确的过程是将相关文件复制到子主题文件夹中并在那里编辑文件,这样我的修改就不会在将来的主题更新中丢失。但这是否意味着我将无法从主题更新中获益,因为我将文件放在了我的子主题文件夹中?这可能不是一件好事,因为主题更新可能添加了一些有用的特性,甚至修复了我最初需要对代码进行调整的问题!这方面的常见解决方案是什么?有人推荐了一款Diff应用程序——这是人们常用的吗?