在短码中使用自定义发布元值

时间:2013-11-11 作者:lauren

我试图在一个快捷码中显示来自自定义帖子类型的元内容。我只想提供一个post\\u id,并能够显示所有的元内容。

[my_shortcode post_id=""]
我对PHP和编写短代码不熟悉,这似乎应该相当简单。。。我知道以下是错误的:

function promotion_function($atts) {
extract(shortcode_atts(array(
    \'promo_id\' => \'\',
), $atts));
global $post;
$meta_values = get_post_custom($promo_id, \'product_desc\');

$output = $meta_values;
return $output;
}
add_shortcode(\'promotion\', \'promotion_function\');
上面的代码为我提供了页面中的字符串“Array”。

我找不到一个如何做到这一点的例子,任何帮助都将不胜感激。

1 个回复
SO网友:fuxia

不能直接打印数组。您可以使用的最基本的返回值是var_export( $meta_values, TRUE );.

这将创建值的文本表示形式。

像这样的小步行者可能更好

$output = \'\';

foreach( $meta_values as $key => $value )
    $output .= "$key = " . esc_html( end( $value ) ) . \'<br />\';

return $output;

结束

相关推荐

Custom field within shortcode

我目前正在使用“WP Simple Paypal Shopping Cart”插件建立一个简单的Paypal电子商务网站,它非常容易使用,但为了节省客户编写短代码的时间,我在后端设置了自定义字段以输入产品名称和价格TheAdd to Cart 按钮是使用一段简单的短代码生成的,如下所示:<?php echo print_wp_cart_button_for_product(\'Product Name\', Product Price); ?> 显然正在替换Product Name