【问题标题】:Exclude term from wp_get_object_terms从 wp_get_object_terms 中排除术语
【发布时间】:2011-12-10 05:27:44
【问题描述】:

看起来很简单,但我在 a) Wordpress Codex 中都找不到任何示例;或 b) 在野外的任何例子中。我只是想从自定义分类的术语输出中排除一个术语。

我选择了 wp_get_object_terms 而不是 get_terms,因为我的输出需要专门格式化,而且似乎 wp_get_object_terms 是唯一可以完成这项工作的函数,尽管 get_terms 确实有一个明确的“排除”选项。所以这就是我正在使用的:

<?php $taxopostid = $post->ID;
    $taxoquery = wp_get_object_terms( $taxopostid, 'work-type');
    $taxoslug = $taxoquery[0]->slug;
    $taxotitle = $taxoquery[0]->name; ?>

    <a href="<?php bloginfo('url'); ?>/blog-slug/<?php echo $taxoslug; ?>/" class="cat-link"><?php echo $taxotitle; ?></a>

有什么想法吗??

【问题讨论】:

    标签: php wordpress function taxonomy


    【解决方案1】:

    我将假设 worktype 是您要排除的分类。

    步骤 1

    使用get_terms() 获取除worktype 之外的所有分类(你知道该怎么做吗?)

    第二步

    根据结果创建一个仅包含所有获取的分类的平面数组(我们称之为$allTaxonomiesExcludingWorkType

    第三步

    将数组作为第二个参数添加到

    wp_get_object_terms($taxopostid, $allTaxonomiesExcludingWorkType);

    未经测试,但这应该对您有所帮助。

    GL

    【讨论】:

    • 坚果,这看起来会起作用,但我只是想从分类法中排除一个术语,而不是整个分类法。但是,是的,“工作类型”是分类法。
    • 那么抱歉,我不明白你的意思,因为我从来没有以这种方式使用过分类。恐怕我不能再帮你了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-15
    • 2016-10-01
    • 1970-01-01
    相关资源
    最近更新 更多