如何在PHP标记内使用带有do_Action函数的参数

时间:2019-04-01 作者:Justen

我正在使用一个WordPress插件,它允许集成操作将其集成到一个主题中。使用GeneratePress的元素特性,我将动作添加为挂钩。目前我使用的代码是:

<?php do_action(webcomic_integrate_landing_page);
?>
操作本身有一些布尔参数列在this website. 我最感兴趣的是webcomic_meta.

如何将webcomic\\u元参数(设置为false)合并到PHP标记中以运行此操作?

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

首先,让我们看看do_action docs. 正如我们在这里看到的,这是一个函数:

执行挂接在特定操作挂钩上的函数。

这就是使用它的方法:

do_action( string $tag,  $arg = \'\' )
所以第一个参数是tag (或挂钩名称)。然后你就可以通过$arg (或者更确切地说$args) 。

如何传递参数

好吧。。。这取决于行动。他们中的一些人不接受ARG。他们中的一些人只带了一个,还有一些人带了很多Arg。以下是示例:

// this action takes no args
do_action( \'foo\' );

// this action takes one arg
do_action( \'bar\', $param );

// and this takes few args:
do_action( \'foobar\', $param1, $param2, $param3 );
就你而言,webcomic_integrate_landing_page 只接受一个参数,该参数应为数组(as we can read here):

do_action( \'webcomic_integrate_landing_page\', array $args );
因此,如果要在其中传递任何参数,请按照以下方法进行:

do_action( \'webcomic_integrate_landing_page\', array( \'webcomic_comments\' => true, \'webcomic_meta\' => false ) );

相关推荐

PHP:对REST请求进行身份验证?

我确实使用REST api为正在开发的插件创建了一些自定义端点。它工作得很好,但现在我想保护这些请求:我不需要外部用户(EDIT: 我指的是远程请求),以便能够进行查询。但我只找到有关javascript身份验证的文档(REST API Handbook).如何使用PHP实现身份验证(此处为WP 5.1.1)?谢谢