我使用Nextgen-Gallery
在我的WP网站上显示图库。
在图库页面中,蓝色部分显示图库图片,红色部分则显示包含图库的相册。
经过对谷歌的长期研究,无论如何都无法完成上述任务(大多数答案都很旧,并且不能使用最新版本),所以我想也许以下技巧可以完成这项工作:我创建了一个新页面,并添加了在该页面上正常工作的短代码[album id=2 template=extend]
,但是当我尝试将此页面包含在"画廊页面的红色部分中时#34} ; 它显示短代码文本,而不是显示画廊。
<div class="col-md-4">
<div class="panel panel-danger">
<div class="panel-heading">
<h3 class="panel-title">Albums</h3>
</div>
<div class="panel-body">
<?php
$post = get_post(107); <--Here
echo $post->post_content;
?>
</div>
</div>
</div>
如何在红色部分内显示画廊?
答案 0 :(得分:0)
我浏览了Nextgen-Gallery源代码并且非常庞大,因此解决这一特定问题可能并不容易。
我认为关键是短代码替换发生在the_content内,如果您只是回显原始帖子内容,则不会发生。
也许如果你重写了php remplate来使用该功能它可以工作
<?php
$post = get_post(107); <--Here
the_content();
?>
答案 1 :(得分:0)
问题在于您只是打印原始数据,并且由于没有设置此帖子的postdata,因此the_content()
(应用所有类型的过滤器,包括do_shortcode
)等函数将会不行。
使用:
echo apply_filters( 'the_content', $post->post_content );
如果这不起作用,则问题在于短代码。