我正在尝试通过wordpress中的简短代码打印自定义帖子。一切似乎都在起作用,除非我无法将帖子的内容打印出来。我的代码如下。
function sc_liste($atts, $content = null) {
global $post;
$myposts = get_posts('post_type=section_modules&category_name=aboutiia&order=ASC&posts_per_page=3');
$retour = '<div class="container-fluid sectionBoxContainer"><div class="row-fluid">';
foreach($myposts as $post) :
setup_postdata($post);
$retour.='<div class="sectionBox span4"><h2>'.the_title("","",false).'</h2><div class="hrule_black"></div></div>'.the_content();
endforeach;
return $retour;
wp_reset_query();
}
add_shortcode("list", "sc_liste");
答案 0 :(得分:0)
关闭the_content()
后您的div.sectionBox
即将开始,而您永远不会关闭原始展开div.container-fluid
和div.row-fluid
。
这会产生:
<div class="container-fluid">
<div class="row-fluid">
<!-- start loop -->
<div class="sectionBox">
<h2>title</h2>
<div class="hrule_black"></div>
</div>
Post content would get dumped here
... next post ....
<div class="sectionBox">
<h2>title</h2>
<div class="hrule_black"></div>
</div>
Post content would get dumped here
就是这样。
你应该关闭前2个div。而且,您可能希望将内容放在.sectionBox
中。也许这是问题的一部分......
同时强>
return
语句后的代码将无法运行(例如:您的wp_reset_query()
)。
答案 1 :(得分:0)
function sc_liste($atts, $content = null) {
global $post;
$myposts = get_posts('post_type=section_modules&category_name=aboutiia&order=ASC&posts_per_page=3');
$retour = '<div class="container-fluid sectionBoxContainer"><div class="row-fluid">';
foreach($myposts as $post) :
setup_postdata($post);
$retour.='<div class="sectionBox span4"><h2>'.the_title("","",false).'</h2><div class="hrule_black"></div><p>'.the_content().'</p></div>';
endforeach;
$retour .= '</div></div>';
return $retour;
}
add_shortcode("list", "sc_liste");