我试图根据分配给post的自定义分类术语显示一些片段(通过get_template_part()加载)。
到目前为止,我可以获得分配给文章的分类学术语。
$term_list = wp_get_post_terms($post->ID, 'sidebar_snippets', array("fields" => "all"));
print_r($term_list);生成这样的对象数组:
(
[0] => WP_Term Object
(
[term_id] => 11
[name] => Future Events
[slug] => future_events
[term_group] => 0
[term_taxonomy_id] => 11
[taxonomy] => sidebar_snippets
[description] =>
[parent] => 0
[count] => 2
[filter] => raw
)
)我正在考虑迭代一组指定的术语,并加载适当的代码段。这些片段的名称与分类学术语中的“鼻涕虫”相同。
$term_list = wp_get_post_terms($post->ID, 'sidebar_modules', array("fields" => "all"));
print_r($term_list); // works fine - outputs three terms (like above)
foreach($term_list as $term) {
echo $term['slug']; // does not out put anything.
get_template_part( 'modules/' . $term['slug] . '.php' );
}我有两个问题。它甚至没有输出$termslug。第二,我如何添加一些验证,例如。在尝试get_template_part之前先检查文件是否存在?
谢谢
发布于 2018-08-18 10:42:15
您正在尝试以数组的形式访问对象值,这样它就不会回显该值。正确地使用下面的回波代码。
foreach($term_list as $key => $term) {
$term_slug = $term->slug; // does not out put anything.
get_template_part( 'modules/'.$term_slug.'.php' );
}有关更多帮助,请参阅此链接:单击此处,谢谢
https://stackoverflow.com/questions/51907639
复制相似问题