我有侧边栏,在这里我需要以相同的设计打印不同的信息。我为此创建了模板文件。但是我不知道如何将不同的变量传递给它。
sidebar.php
$related_programs = get_field('related_programs');
if($related_programs):
include(locate_template('template_parts/content-related-list.php'));
endif;
// the another var should go to the same template
$related_professors = get_field('related_professors');
if($related_professors):
include(locate_template('template_parts/content-related-list.php'));
endif;
template_parts / content-related-list.php
<ul>
<?php foreach($items as $item):?>
<li>
<a href="<?php echo get_the_permalink($item); ?>"><?php echo get_the_title($item); ?></a>
</li>
<?php
endforeach;
wp_reset_postdata();
?>
</ul>
如何将这两个不同的变量传递到同一模板,以使它们每次都被称为$ items?
答案 0 :(得分:0)
您应该在 sidebar.php
中使用单if语句,而不要使用double if语句<?php
$related_programs = get_field('related_programs');
$related_professors = get_field('related_professors');
if(isset($related_programs) || isset($related_professors)):
include(locate_template('template_parts/content-related-list.php'));
endif;
?>
您应该使用关联数组将信息传递到相同的变量$items
。
$dummy_array = array(
'related_programs' => get_field('related_programs'),
'related_professors' => get_field('related_professors');
);
因此,您可以将$items['related_programs']
和$items['related_professors']
放入模板。
答案 1 :(得分:0)
if($related_programs):
set_query_var( 'items', $related_programs );
get_template_part( 'template_parts/content', 'related-list' );
endif;
和
if($related_professors):
set_query_var( 'items', $related_professors );
get_template_part( 'template_parts/content', 'related-list' );
endif;