php - 如果选择多个类别,是否获取主要类别?

标签 php wordpress

在 WordPress 中,如何恢复到主要类别?

我正在使用以下循环,如果所有三个都被选中,那么它只会恢复到最后一项。我想确保它是主要类别。

<?php $term_list = wp_get_post_terms($post->ID, 'category', array("fields" => "names"));
foreach ($term_list as $term) {
    $name = $term;
} ?>

enter image description here

最佳答案

这不是 native WordPress 功能,而是 Yoast SEO ( see here ) 的功能。

您可以通过以下方式检查主要状态:

<?php
$term_list = wp_get_post_terms($post->ID, 'category', ['fields' => 'all']);
foreach($term_list as $term) {
   if( get_post_meta($post->ID, '_yoast_wpseo_primary_category',true) == $term->term_id ) {
     // this is a primary category
   }
}
?>

如果您使用自定义分类法,请使用meta_key

_yoast_wpseo_primary_CUSTOM_TAXONOMY

相反。

关于php - 如果选择多个类别,是否获取主要类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43114986/

相关文章:

javascript - 将数组值传递给js

css - 没有 HTML 的图像淡入淡出 - 仅 CSS

wordpress - 使 "Add New User"重定向到用户的个人资料

php - 在 WordPress 中导入 CSS 文件

php - 如何使用 PHP 返回目录中的图像计数?

php - Symfony2 重定向循环

php - 如何记录每个用户尝试登录的每个 IP 地址?

php - LIKE 子句在 wordpress 的 $wpdb->prepare() 中不起作用

html - WordPress : Handle CSS priority between Child & Parent Theme

javascript - 如何追加表中的值