如何从自定义页面模板调用 WordPress 插件功能?
Posted
技术标签:
【中文标题】如何从自定义页面模板调用 WordPress 插件功能?【英文标题】:How to call WordPress plugin function from custom page template? 【发布时间】:2020-02-11 09:28:52 【问题描述】:我有一个处理身份验证的自定义 WordPress 插件。
plugin-name/src/Classes/Auth.php 中有一个函数 logTheUserIn()。
当用户点击自定义 WordPress 模板页面 (page-authPortal.php) 时,我需要运行此函数,该页面顶部有以下代码:
include_once('wp-includes/pluggable.php');
include_once("wp-content/plugins/ad-auth-bridge/src/Classes/Auth.php");
print "test";
我创建了一个名为“authPortal”的 WordPress 页面,它显示了“测试”文本,因此我知道正在加载和呈现自定义页面。现在我只需要启动 logTheUserIn()。
我尝试在 Auth.php 中添加短代码和操作:
class Auth
public function InitHooks()
add_shortcode ('authNow', 'logTheUserIn');
add_action ('authAction', 'logTheUserIn');
然后我尝试在 WordPress 编辑器中使用实际的短代码 [authNow],我还尝试了 do_shortcode 和 do_action。
我在这里错过了什么?
谢谢!
【问题讨论】:
【参考方案1】:无需包含或要求插件字段。它们最初由 WordPress 加载。
首先,在您的模板中,确保您的插件处于活动状态并且函数/类是可访问的:
if ( function_exists( 'logTheUserIn') )
logTheUserIn();
然后在您的模板中触发该函数。
在您的情况下,您可能需要检查是否 class_exists,然后初始化类
【讨论】:
以上是关于如何从自定义页面模板调用 WordPress 插件功能?的主要内容,如果未能解决你的问题,请参考以下文章