我有一个自定义的帖子类型,我正在运行一个常规的WordPress循环single-move.php
页面仅显示页面的文本内容。现在,虽然这篇文章有一个图片库,但我在页面中得到了库的短代码,如[gallery ids="16,14,15"]
在一个痴迷于苗条和。。。。。。
这是我的密码
if ( have_posts() ) {
while ( have_posts() ) {
$meta = get_post_custom($post->ID);
the_post();
echo \'<section class="title-section">\';
echo \'<div class="container text-center">\';
echo \'<span class="icon-vlogo title-logo"></span>\';
echo \'</div>\';
echo \'<h3 class="text-center page-title">\'. get_the_title().\'</h3>\';
echo \'<div class="container"><div class="hr"></div> </div>\';
echo \'</section>\';
echo \'<div class="container" style="padding:12px; ">\';
echo \'<p class="p-paragraph" style="text-align:left">\'. get_the_content().\'</p>\';
echo \'</div>\';
if ( get_post_gallery() ) {
echo \'<div class="row" style="padding-top:60px; padding-bottom:60px;">\';
echo \'<section class="title-section">\';
echo \'<div class="container text-center">\';
echo \'<span class="icon-vlogo title-logo"></span>\';
echo \'</div>\';
echo \'<h3 class="text-center page-title"> Check out Our Job</h3>\';
echo \'<div class="container"><div class="hr"></div> </div>\';
echo \'</section>\';
echo \'</div>\';
echo \'<div class="container">\';
echo \'<div class="col-xs-12 xol-sm-12 col-md-offset-2 col-md-8">\';
?>
<div id="carousel-example-generic" class="carousel slide post-carousel" data-ride="carousel">
<div class="carousel-inner" role="listbox">
<?php
add_filter( \'shortcode_atts_gallery\',\'wp_full_size_gallery\' );
$gallery = get_post_gallery( get_the_ID(), false );
remove_filter( \'shortcode_atts_gallery\',\'wp_full_size_gallery\' );
foreach( $gallery[\'src\'] AS $src ) {
echo \'<div class="item">\';
echo \'<img src="\'.$src .\'" alt="Vancouver Best Laser Center" />\';
echo \'</div>\';
}
}
?>
</div>
您能告诉我为什么会发生这种情况,以及我如何修复它以避免在页面中看到数组吗
最合适的回答,由SO网友:Iceable 整理而成
应用于的所有筛选器\'the_content\'
调用时不应用挂钩(包括短代码渲染)get_the_content()
.
这就是为什么您从内容中获得原始短代码。
你可以使用the_content()
相反,或使用apply_filters
直接在模板中。
换言之,替换此行:
echo \'<p class="p-paragraph" style="text-align:left">\'. get_the_content().\'</p>\';
使用(首选方法):
echo \'<p class="p-paragraph" style="text-align:left">\';
the_content();
echo \'</p>\';
或者:
echo \'<p class="p-paragraph" style="text-align:left">\' . apply_filters( \'the_content\', get_the_content() ) . \'</p>\';
要了解有关这些函数的更多信息,请参阅
the_content()
,
get_the_content()
和
\'the_content\'
hook