Wordpress Shortcode数组问题

时间:2013-07-25 11:52:58

标签: php arrays wordpress

这是短片代码[posts3col ids="249, 318, 93" category="Events"]

的方法

这是它背后的一些代码,我遇到了问题:

add_shortcode('posts3col', 'posts_func');

function posts_func($atts){
    extract(shortcode_atts(array(
        'ids'=> '',
        'category' => ''        
    ), $atts));

    $options=array(
            'posts_per_page' => 3,
            'category_name' => $category,
            'post__in' => array($ids)
            );
    ob_start(); 
    // run the loop based on the query
    $query = new WP_Query( $options ); .....

我遇到的问题是'post__in',我不知道如何给它ids。 如果我在代码中手动编写ID,如下所示:

'post__in' => array(249, 318, 93)

它有效,但显然我需要从短代码中提取ID我无法手动插入它们。

1 个答案:

答案 0 :(得分:2)

您需要explode才能将字符串转换为数组。

$options=array(
        'posts_per_page' => 3,
        'category_name' => $category,
        'post__in' => explode(",", $ids);
      );