前言
此筛选器允许你控制在 Bricks 文档设置中应使用哪个 WordPress 文档模板(基于你已定义的文档类型)。
用法
将代码加入子主题的 functions.php:
add_filter( 'bricks/dynamic_data/do_action_context', function( $action_context, $filters, $context, $post ) {
if ( $action_context['requested_action'] === 'my_public_alias' ) {
$action_context['action'] = 'my_private_action';
$action_context['args'] = [ get_the_ID() ];
}
return $action_context;
}, 10, 4 );
参数
$action_context(array):动作上下文,包含 action、args、requested_action 和 skip 键。$filters(array):从标签中解析出的动态数据筛选器。$context(string):动态数据渲染上下文。$post(WP_Post|int|null):当前文章上下文。
示例代码
筛选返回值
add_filter( 'bricks/dynamic_data/do_action_context', function( $action_context, $filters, $context, $post ) {
if ( $action_context['requested_action'] === 'my_public_alias' ) {
$action_context['action'] = 'my_private_action';
$action_context['args'] = [ get_the_ID() ];
}
return $action_context;
}, 10, 4 );
根据条件短路返回原值
根据条件跳过或修改返回值:
add_filter( 'bricks/dynamic_data/do_action_context', function( $value, $action_context ) {
if ( is_admin() ) { return $value; }
// TODO: custom logic here
return $value;
} );
补充说明
更多细节可参考 官方文档。