在do_shortcode()中为WordPress使用PHP变量

问题描述 投票:1回答:1

首先-对标题感到抱歉,不确定确切的命名方式。

这是我想做的:

1)获取帖子ID2)从所述帖子ID获取自定义字段3)显示带有自定义字段值的简码

这是我所拥有的:

<?php
global $wp_query;
$postid = $wp_query->post->ID;
echo get_post_meta($postid, 'id-del-instructor', true);
wp_reset_query();
?>

有了这个,我能够获取并显示简码的值-尽管我需要存储它以便以后使用而不是显示它。

然后,我发现它可以用PHP显示短代码:

<?php echo do_shortcode("[awsmteam id="XXX"]"); ?>

我曾尝试将这两个代码组合在一起,但每次它破坏我的网站时。

[基本上,它说的是XXX,我需要简码中的值。这可能很容易实现,但是我一直在循环浏览,无法理解。

帮助? :)非常感谢!

已用这段代码解决-谢谢@Alon Eitan:

<?php
    global $wp_query;
    $postid = $wp_query->post->ID;
    $meta =  get_post_meta($postid, 'id-del-instructor', true);
    wp_reset_query();
    echo do_shortcode('[awsmteam id="' . $meta . '"]');
?>
php wordpress shortcode
1个回答
0
投票

如果您是在页面模板中执行此操作,则只需执行此操作即可。

    $meta =  get_post_meta(get_the_ID(), 'id-del-instructor', true);
    echo do_shortcode('[awsmteam id="' . $meta . '"]');

而不是调用全局$ wp_query并执行其他步骤。

© www.soinside.com 2019 - 2024. All rights reserved.