我正在尝试通过短代码输出与自定义帖子类型相关联的所有标签,并且它似乎只在$ output中引入了1个标签。
<$>在$ output之外,代码没问题。代码是:
function display_stores() {
$args = array( 'post_type' => 'stores', 'posts_per_page' => 5 );
$success = new WP_Query( $args );
$output = '';
while( $success->have_posts() ) {
$success->the_post();
$tags = get_the_tags($post_ID);
foreach($tags as $tag) {
return '<li>'. $tag->name . '</li>' ;
}
$output .= sprintf( "<div class='story-content left'>" );
$output .= sprintf( "<h2>%s</h2>", get_the_title() );
$output .= sprintf( '%s</div>', get_the_content() );
$output .= sprintf( "Button");
$output .= sprintf( "<div class='story-tags right'>" );
$output .= sprintf( "<h4>Areas</h4><ul class='ul-arrows'>" );
$output .= sprintf( $tags );
$output .= sprintf( "</ul></div><hr>" );
}
wp_reset_query();
return $output;
}
add_shortcode( 'display_stores', 'display_stores' );
答案 0 :(得分:2)
foreach($tags as $tag) {
return '<li>'. $tag->name . '</li>' ;
}
第一次运行它将退出该函数并返回li
。我想你想把它添加到输出中。
$tagHTML = '';
foreach($tags as $tag) {
$tagHTML .= '<li>'. $tag->name . '</li>' ;
}
//Later
$output .= $tagHTML;