WordPress的主题页面不显示插件库

我是Wordpress的新手。我正在尝试从头开始构建主题。我创建了以下page.php:

< ?php /** * The template for displaying pages * * This is the template that displays all pages by default. * Please note that this is the WordPress construct of pages and that * other "pages" on your WordPress site will use a different template. * * @package nameofpackage */get_header(); ?> < ?php get_footer(); ?>

我还安装了NextGen插件。我创建了一个新页面, 并使用NextGen的” 添加图库” 按钮;我最终以
[ngg src="http://www.srcmini.com/galleries" ids="1" display="basic_thumbnail"]

在页面的文本部分中(可视部分在框中显示插件徽标)。
当我尝试预览结果时, 我只会得到中间没有任何内容的页眉和页脚;检查员不会显示与图库相关的代码。
如果我用ThemeFifteen尝试相同的东西, 它将起作用。
【WordPress的主题页面不显示插件库】所以我的问题是:是否需要在function.php中添加一些内容, 以允许我的主题在页面中包含插件的输出?谢谢
#1你缺少WP循环和the_content(), 因此在页眉和页脚之间看不到任何东西是绝对正常的。你需要像这样的东西:
< ?php while ( have_posts() ) : the_post(); ?> < ?php get_template_part( 'loop-templates/content', 'page' ); //calling the folder with your loop templates ?> < ?php // If comments are open or we have at least one comment, load up the comment template. if ( comments_open() || get_comments_number() ) :comments_template(); endif; ?> < ?php endwhile; // end of the loop. ?>

在循环模板中, 类似:
< article < ?php post_class(); ?> id="post-< ?php the_ID(); ?> "> < header class="entry-header"> < ?php the_title( '< h1 class="entry-title"> ', '< /h1> ' ); ?> < /header> < !-- .entry-header --> < ?php echo get_the_post_thumbnail( $post-> ID, 'large' ); ?> < div class="entry-content"> < ?php the_content(); ?> < ?php wp_link_pages( array( 'before' => '< div class="page-links"> ' . __( 'Pages:', 'understrap' ), 'after'=> '< /div> ', ) ); ?> < /div> < !-- .entry-content --> < footer class="entry-footer"> < ?php edit_post_link( __( 'Edit', 'understrap' ), '< span class="edit-link"> ', '< /span> ' ); ?> < /footer> < !-- .entry-footer --> < /article> < !-- #post-## -->

这是组织主题的非常常用的方法, 但是请花一些时间在有关开发自定义主题的初学者教程上。掌握基本概念非常容易, 你将需要几个小时才能得到这个想法!这只是我要强调的一个示例, 对你的代码的快速而肮脏的修复是:
< ?php /** * The template for displaying pages * * This is the template that displays all pages by default. * Please note that this is the WordPress construct of pages and that * other "pages" on your WordPress site will use a different template. * * @package nameofpackage */ get_header(); ?> < ?php while ( have_posts() ) : the_post(); ?> < ?php the_title(); ?> < ?php the_content(); ?> < ?php endwhile; // end of the loop. ?> < ?php get_footer(); ?>

#2你正在寻找的是do_shortcode()查看文档
确保也回显它。
< ?php get_header(); echo do_shortcode('[ngg src="http://www.srcmini.com/galleries" ids="1" display="basic_thumbnail"]'); get_footer();

你还可以使用apply_filters()并传入’ the_content’ 挂钩。这将使你的短代码使用与后端wysiwyg编辑器中使用的钩子/过滤器相同的钩子/过滤器, 但最终它只是在后台使用do_shortcode()。
< ?php get_header(); echo apply_filters('the_content', '[ngg src="http://www.srcmini.com/galleries" ids="1" display="basic_thumbnail"]'); get_footer();

    推荐阅读