在简单的word中。
Actions 是执行输出的PHP函数
Filters 是返回输出的PHP函数
Updated: 我们可以扩展任何使用动作和过滤器的插件,而无需修改代码。通过在我们自己的主题或插件中添加过滤器和操作。
如何使用
操作:
检查主题中的以下简单示例
functions.php
文件
示例一:(简单的PHP示例)
function test() {
echo "Output";
}
test();
以上程序打印输出:
Output
[注意:此处test()只需调用函数。然后执行回调函数“test”。]
- 示例二:(动作的简单使用)
function test1() {
echo "Output";
}
add_action( \'test\', \'test1\' );
do_action( \'test\' );
以上程序打印输出:
Output
[注:此处
do_action(\'test\')
类似于调用函数。并执行回调函数“test1”。]
示例三:动作的另一种使用
function test2() {
echo "Test 2";
}
add_action( \'test\', \'test2\', 1 );
function test1() {
echo "Test 1";
}
add_action( \'test\', \'test1\', 2 );
do_action( \'test\' );
以上程序打印输出:
Test 2Test 1
[注:此处
do_action(\'test\')
类似于调用函数。并根据优先级执行回调函数。
回调函数“test1”具有优先级2,“test2”具有优先级1。]
如果优先级发生变化,如优先级为1的“test1”和优先级为2的“test2”,则输出将为:
Test 1Test 2
<示例四(第三方支持)添加以下代码
functions.php
function test1() {
do_action( \'test_before\' );
echo "Test 1";
do_action( \'test_after\' );
}
add_action( \'test\', \'test1\' );
do_action( \'test\' );
以上程序打印输出:
Test 1
现在,创建示例插件来检查它如何为第三方开发人员工作。
在中创建文件夹“simple”/wp-content/plugins/
目录创建名为“simple”的文件。并添加以下代码
/*
* Plugin Name: Simple Plugin
*/
function test_callback_function() {
echo "From plugin";
}
add_action( \'test\', \'test_callback_function\' );
现在,从WordPress管理面板激活我们的简单插件。
转到菜单插件并激活它。
激活程序上方的插件后,打印输出:
Test 1From plugin
[注意:如果我们将插件操作的优先级从1添加到9,那么它会打印输出,如下所示:
From pluginTest 1
因为WordPress认为
10 priority by default
对于所有添加的操作。]
过滤器检查以下示例:
简单的PHP示例:
$data = array( \'one\', \'two\' );
print_r( $data );
以上程序打印输出:
Array ( [0] => one [1] => two )
<示例一:过滤器的简单使用
$data = apply_filters( \'my_filter_name\', array( \'one\', \'two\' ) );
print_r( $data );
add_filter( \'my_filter_name\', function( $old_data ) {
return array( \'three\', \'four\' );
});
以上程序打印输出:
Array ( [0] => three [1] => four )
在这里,我们添加了过滤器
my_filter_name
并更改现有输出
array( \'one\', \'two\' )
具有
array( \'three\', \'four\' )
无需更改主题/插件文件。