WordPress add_filter中ACF的PHP代码

gz5pxeao  于 2023-06-21  发布在  WordPress
关注(0)|答案(2)|浏览(169)

我有一个代码片段,用于在我的WordPress网站上的特定位置插入信息:

add_filter(
'hivepress/v1/templates/vendor_view_page/blocks',
function( $blocks, $template ) {
    return hivepress()->helper->merge_trees(
            [ 'blocks' => $blocks ],
            [
                'blocks' => [
                    'page_content' => [
                        'blocks' => [
                            'custom_listings_text' => [
                                    'type'    => 'content',
                                    'content' => 'Your content here',
                                    '_order'  => 1,
                            ],
                        ],
                    ],
                ],
            ]
        )['blocks'];
},
1000,
2
);

我想使用高级自定义字段中的信息更改“此处的内容”。我知道,获取信息的常规方法是使用以下代码:

<?php if( get_field('text_field') ): ?>
<h2><?php the_field('text_field'); ?></h2>
<?php endif; ?>

我怎样才能把'text_field'作为一个变量放到代码片段中,使它显示ACF?我试图用ACF代码的每一种形式来交换“您的内容”,但要么我的网站崩溃,要么我只是得到纯文本,要么php代码在结果中作为注解呈现。

gcuhipw9

gcuhipw91#

根据ACF文档,您需要包括页面或帖子的ID。- https://www.advancedcustomfields.com/resources/get_field/
这允许您在任何地方使用它,并从任何地方提取数据。

wkftcu5l

wkftcu5l2#

要将高级自定义字段(ACF)的值合并到提供的代码段中,可以修改筛选器函数以获取ACF值并将其分配给内容键。下面是代码的更新版本:

add_filter( 'hivepress/v1/templates/vendor_view_page/blocks', function( $blocks, $template ) {
$text_field = get_field( 'text_field' ); // Fetch the value of the ACF field

return hivepress()->helper->merge_trees(
    [ 'blocks' => $blocks ],
    [
        'blocks' => [
            'page_content' => [
                'blocks' => [
                    'custom_listings_text' => [
                        'type'    => 'content',
                        'content' => $text_field, // Assign the ACF value to 'content'
                        '_order'  => 1,
                    ],
                ],
            ],
        ],
    ]
)['blocks'];
 }, 1000, 2 );

确保将'text_field'替换为正确的ACF字段名称或密钥。这段代码使用get_field('text_field')获取ACF字段的值,并将其分配给custom_listings_text块中的内容键。

相关问题