2016-07-24 16 views
0

私は、カスタムタクソミー用語のショートコードを動的に作成しようとしていました。しかし、そうすることはできません。 「wordpress」という用語がある場合、その用語に関連するすべての投稿をショートコードで照会できるはずです。 より正確には、「イベント」というタクソノミーがあり、その分類の下に複数の用語があるとします。だから、それぞれの用語のショートコードを使って、それぞれの用語の下に投稿を照会しようとしていました。WordPress用語のショートコード

function wordpress_recent_post($atts, $content) { 
    $a = shortcode_atts(array(
    'cat' => '', 
), $atts); 
    $args = array(
    'posts_per_page' => 1, 
    'offset' => 0, 
    'category_name' => $a['cat'], 
    'orderby' => 'post_date', 
    'order' => 'DESC', 
    'post_type' => 'post', 
    'post_status' => 'publish', 
    'ignore_sticky_posts' => true, 
); 
    $recent_posts = new WP_Query($args); 
    ob_start(); 
    if (! $recent_posts-> have_posts()) { 
    return 'No Posts Found for ' . $a['cat']; 
    } 
    while ($recent_posts->have_posts()) { 
    $recent_posts->the_post(); 
    the_title('<h2>', '</h2>'); 
    if ('' != $a['cat']) { 
     $href = '/category/' . $a['cat']; 
    } else { 
     $href = '/blog'; 
    } 
    echo "<p><a href='$href'>Read More" . ucwords($a['cat']) . '</a></p>'; 
    } 
    wp_reset_query(); 
    return ob_get_clean(); 
} 
add_shortcode('wordpress_recent_post', array($this, 'wordpress_recent_post')); 

そして私は、ID「183」(仮定) [wordpress_recent_post猫=「183」である「機能」と呼ばれる用語から投稿を呼び出すために、これを使用:ここで

は、私が試したものです]

どのような助けが本当に非常に認められるでしょう。

ありがとうございます!

答えて

1

用語スラッグを追加しました。このようなIDを持たないスラッグが必要です: [wordpress_recent_post cat = "features"]

関連する問題