这段代码有什么问题-从主题选项中获取分类法


what is wrong with this code - get taxonomy from theme option

我需要从自定义帖子分类(由用户从WordPress主题选项面板设置)查询帖子。

我使用以下代码:

<?php
 if ( function_exists( 'get_option_tree') ) {
     $taxonomy = get_option_tree( 'taxonomy_option' );
 }
 $args = array(
    'project_type' => $taxonomy,
    'show_count'   => 6,
    );
 query_posts($args); 
?>      

如果我进入'project_type' => 'my taxonomy name',代码就会工作。上面的代码有什么问题?我怎么能得到一个选项(选项树)到args数组?稍后编辑:optiontree函数呈现分类法ID。

谢谢

函数get_option_tree()可能会给你一个数组,你应该检查一下

echo "<pre>".print_r($taxonomy,true)."</pre>";

更新:

经过与@Ad反应器的讨论,我们发现$taxonomy输出是一个数字而不是一个段塞。要获取该段信息,可以使用

$term = get_term( 1234, 'project_type' ); 
$slug= $term->slug;

其中1234替换为实际的term_id

我能看到的唯一问题是$taxonomy没有初始化,因此,如果您的条件不满足,$taxonomy将是未定义的。

所以在if条件之上定义$taxonomy

$taxonomy = '';
if ( function_exists( 'get_option_tree') ) {
.....