Bricks 中文文档:bricks/dynamic_data/do_action_context

📎 原始资料  |  下载原始 JSON 文件 (bricks-dynamic_data-do_action_context.json) 前言 此筛选器允许你控制在 Bricks 文档设置中应使用哪个 WordPress 文档模板(基于你已定义的文档类型)。 用法 将代码加入子主题的 functions.php: add_filter( ‘bricks/dynamic_data/do_action_context’, function( $action_context, $filters, $context, $post ) { if ( $action_context[‘…

前言

此筛选器允许你控制在 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;
} );

补充说明

更多细节可参考 官方文档