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

文字列を配列に変換するには、分解する必要があります。

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