当您想将代码段转换为短代码时,必须返回字符串。您不能使用echo
或者以任何其他方式打印任何内容。
此外,始终转义数据,并检查是否确实存在值。
我使用了HEREDOC syntax 这里,因为它很容易阅读:
add_shortcode( \'taobao\', \'taobao_shortcode\' );
function taobao_shortcode()
{
$taobao = esc_attr( get_post_meta( $post->ID, "taobao_value", true ) );
$price = esc_html( get_post_meta( $post->ID, "price_value", true ) );
if ( ! $taobao or ! $price )
return;
return <<<SHORTCODE
<div class="huili-relevant-left">
<a href="$taobao"
hidefocus="true"
target="_blank"
class="btn-buy js-log"
data-log="page=p-huihui-discount-detail&type=buy"
>
<b>¥ $price</b>
<i>buy</i>
</a>
</div>
SHORTCODE;
}
现在,您可以使用将值插入到帖子中
[taobao]
.