繁体   English   中英

将 php 逻辑函数放在 wordpress 简码中

[英]Put php logic function inside wordpress Shortcode

我有这个代码向付费订阅的用户显示内容:

echo do_shortcode('[ihc-hide-content ihc_mb_who="5,7"] MY CONTENT HERE [/ihc-hide-content])

但我想在这个简码中显示我的内容,这是一个逻辑函数,如下所示:

if ( $a = $b ) {    echo ($c);    }

有可能以某种方式做到这一点吗? PS我制作了另一个短代码,然后像这样把他放在里面:

do_shortcode('[ihc-hide-content ihc_mb_who="5,7"].do_shortcode('[my_shortcode]').[/ihc-hide-content])

但是第一个简码不会隐藏第二个简码的内容。 任何帮助都将受到赞赏,对不起我的英语不好!

如果您使用的是封闭简码,您应该能够将简码作为字符串添加到do_shortcode()函数中。 do_shortcode()将搜索传递给它的内容并解析出它能够搜索的任何和所有短代码。 根据如何ihc-hide-content简码设置,它可能不太正常工作,但你可以避开这一点。

首先,我会尝试只向它传递一个短代码字符串:

do_shortcode( '[ihc-hide-content ihc_mb_who="5,7"][my_shortcode][/ihc-hide-content]' );

如果这不起作用( my_shortcode ,它应该) - 您可以尝试将my_shortcode输出生成到输出缓冲区中,如下所示:

// Turn on Output Buffering
ob_start();

// Output your shortcode
do_shortcode( '[my_shortcode]' );

// Turn off Output Buffering, and grab the content as a variable
$my_shortcode_output = ob_get_clean();

// Pass that complete output to the other shortcode
do_shortcode( '[ihc-hide-content ihc_mb_who="5,7"]'. $my_shortcode_output .'[/ihc-hide-content]' );

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM