在父模板中使用模板样式加载子内容

时间:2017-07-19 17:01:06

标签: php wordpress templates

我无法找到解决问题的方法,而且我对WordPress模板还不熟悉。

我想从活动页面加载所有直接子项并将其与模板一起加载,模板也在acf中使用一个添加的图像。我们的想法是为加载的内容提供多个静态设计。

这是我正在使用的代码,但是the_content()只加载内容字段本身而不是模板或acf图像。

我尝试了get_post,但它没有用。

如果你可以帮助我,我真的很感激。 :)

祝福,

麦克



<?php
$args = array(
    'post_type'      => 'page',
    'posts_per_page' => -1,
    'post_parent'    => $post->ID,
    'order'          => 'ASC',
    'orderby'        => 'menu_order'
 );


$parent = new WP_Query( $args );

if ( $parent->have_posts() ) :
  while ( $parent->have_posts() ) : $parent->the_post();
	the_content();
  endwhile; 

endif; 
wp_reset_query(); 
?>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

您的查询是合理的,但问题是您没有在循环中提取任何信息。

WordPress的工作方式是,在您使用的单个模板文件上,您需要从此父模板中的这些页面指定布局的细节。

如何完成它完全取决于子页面的布局,模板文件结构(将模板分成较小的,可重用的元素(即使用get_template_part())等等) ...

基本上,您需要在此模板中添加您需要的布局中的其他内容。

请参阅下面的示例,了解一个粗略的想法:

<?php
$args = array(
    'post_type'      => 'page',
    'posts_per_page' => -1,
    'post_parent'    => $post->ID,
    'order'          => 'ASC',
    'orderby'        => 'menu_order'
 );


$parent = new WP_Query( $args );
?>

<?php if ( $parent->have_posts() ) : ?>
    <?php while ( $parent->have_posts() ) : $parent->the_post(); ?>

        <h3><?php the_title(); ?>
        <div class="img-from-child">
            <img src="<?php get_field('img_src_from_child'); ?>" />
        </div>
        <?php the_content(); ?>

    <?php endwhile; 
<?php endif; ?>
<?php wp_reset_query(); ?>