1

这是短代码外观的方法[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',我不知道如何给它ID。如果我在这样的代码中手动编写 ID:

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

它可以工作,但显然我需要从无法手动插入的短代码中提取 ID。

4

1 回答 1

2

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

$options=array(
        'posts_per_page' => 3,
        'category_name' => $category,
        'post__in' => explode(",", $ids);
      );
于 2013-07-25T11:59:47.660 回答