目录
钥匙要点
>我已经写过有关扩展分类法的文章,但是,它的基本知识是在您准备保存元数据时,您会称呼看起来像这样的功能:
删除术语元
经常询问有关WordPress术语Meta
什么是WordPress术语META?
如何在wordpress中添加术语元?
>我可以在wordpress中更新术语元吗?
>在WordPress?
首页 CMS教程 &#&按 WordPress术语元和WP_TERM简介

WordPress术语元和WP_TERM简介

Feb 15, 2025 am 09:45 AM

WordPress术语元和WP_TERM简介

钥匙要点

  • >由于WordPress 4.4,术语现在为对象,使添加,删除和更新元数据更容易。在此之前,将元数据保存为分类法是一个复杂的过程,它需要保存元数据作为WP_OPTIONS表中的字段。
  • 使用术语元,add_term_meta,update_term_meta和delete_term_meta函数使用。这些功能与新的UI元素相结合,可以为术语保存和更新新的元数据。
  • 术语元数据可用于扩展术语,提供独特的功能。示例包括将横幅图像添加到术语的顶部或提供元数据以有条件显示的术语不同,例如根据显示的术语加载新的模板文件。
  • > WordPress中的WP_TERM类是一个术语的面向对象表示。它提供了检索和操纵术语数据的方法,包括术语元数据。该类可用于通过创建特定术语的类实例来处理术语元,然后使用类提供的方法来检索,添加,更新或删除该术语的元数据。
  • 在WordPress中,您可以轻松地将元数据保存在帖子,页面和其他自定义内容类型中,但是保存元数据供您的分类法使用,曾经是一个过于复杂的过程(我什至在这里写了上一篇文章!)。

要获得所有工作,您需要将任期元数据作为每个数据的WP_OPTIONS表中的字段保存为字段,这意味着您可能有数百个,如果不是数千个额外的条目,则术语或仅几个定制分类法。

但是,由于WordPress 4.4及以后,术语现在为对象,与帖子,页面和自定义内容类型相同。此更改使添加,删除和更新您的元数据变得更加容易。

>

带有术语meta

的背景故事

自从WordPress 2.8返回以来,社区一直在推动一种简单的方法来控制术语元数据。这是一个缓慢的过程,但最终从头开始重新设计了术语以使用班级结构。这加上WordPress 4.4的一些不同的更改意味着分类法(例如“标签”,“类别”或“自定义”)中的术语现在可以轻松地分配给他们。

元数据操纵旧方法

在WordPress 4.4之前,没有明确的方法可以轻松地为术语项目保存元数据,这是对构造方式的术语的固有限制。如果您要扩展分类法或条款,则必须将数据直接保存为使用Update_option的站点选项。 这不是理想的(因为它使选项表杂乱无章)。

>

>我已经写过有关扩展分类法的文章,但是,它的基本知识是在您准备保存元数据时,您会称呼看起来像这样的功能:

>
//saving new fields for category
function save_extra_taxonomy_fields($term_id){
    $term = get_term($term_id);
    $term_slug = $term->slug; 
    //collect category image id from posted values
    $term_category_image_id = isset($_POST['category_image_id']) ? sanitize_text_field($_POST['category_image_id']) : ''; 
    //update value and save it as an option
    update_option('category_image_id_' . $term_slug, $term_category_image_id);
}
add_action('create_category','save_extra_taxonomy_fields');
登录后复制
登录后复制
在上面的示例中,我们执行附加到Create_Category Hook(创建新类别术语时触发)的函数。这将寻找我们的价值,在消毒后将其作为选择。虽然这起作用并不是很漂亮。

添加,更新和删除术语元

要使用术语元,您将使用add_term_meta,update_term_meta和delete_term_meta函数。这些功能与新的UI元素结合使用,可以让您为您的条款保存和更新新的元数据。

添加术语元

添加术语的元数据涉及add_term_meta函数。您需要使用可选的第四个参数指定三个参数。

    $ term_id - 您要保存此元数据的术语ID
  • $ META_KEY - 元数据的关键名称。这就是您将如何引用数据
  • >
  • $ meta_value - 数据本身(记住要消毒)
  • $ unique(可选) - 如果元数据键应该是唯一的。默认情况下,这将设置为false,意味着,如果另一个键具有相同的名称,则该功能将覆盖它。将其设置为真实,以确保独特性。
  • 作为一个例子,想象一下,对于我们的类别分类法中的每个术语,我们希望根据将多少帖子分配给此类别的新元数据。使用WordPress 4.4,我们可以循环循环所有术语,并保存此新元数据(供以后在我们的主题或插件中使用)。

读取术语meta

function add_featured_to_categories(){

    //get all terms from the category taxonomy
    $taxonomy_name = 'category';
    $term_args = array(
        'orderby'       => 'name',
        'hide_empty'    => false,
        'fields'        => 'ids'
    );

    $terms = get_terms($taxonomy_name, $term_args);

    if($terms){

        $term_key = 'term_size';
        $term_value = 'empty';
        $term_unique = true;

        //go through all terms and set the new term meta
        foreach($terms as $term_id){

            $term = get_term($term_id, $taxonomy_name);
            $term_count = $term->count; 

            //determine new meta value
            if($term_count > 10){
                $term_value = 'big';
            }else if($term_count >= 5 && $term_count < 10){
                $term_value = 'medium';
            }else if($term_count >= 1 && $term_count < 5){
                $term_value = 'small';
            }

            //save meta value
            add_term_meta($term_id, $term_key, $term_value, $term_unique);  
        }
    }
}
add_action('init', 'add_featured_to_categories');
登录后复制
登录后复制
>我们可以使用get_term_meta函数读取保存的术语元。该函数的工作方式与用于从帖子中获取元数据的get_post_meta函数类似。 要使用此功能以指定一个强制性参数,并使用两个可选参数。

$ term_id - 从

>获取元数据的术语ID

$键(可选) - 您要返回的单个指定密钥。如果未指定,则将返回所有元数据。
  • $ single(可选) - 如果将返回单个值或键或值对。默认为单个值。
  • >让我们看一下您可能会发现这有用的另一种情况。
  • 考虑一种我们已经在类别分类法中为我们的每个条款节省的元项的情况。此保存的数据包含在查看术语时应显示的图像的URL。我们希望将此图像显示为术语描述或标题的横幅,而在我们的帖子列表之上。

现在,在我们的类别中,或其他儿童主题模板文件,我们可以修改显示我们的术语数据的功能。

在我的情况下,我正在使用二十四个问题进行编辑类别。

//given a term, collect its saved image to be displayed
function display_term_meta_image($term_id, $term_taxonomy){

    //get supplied term
    $term = get_term($term_id, $term_taxonomy); 
    if($term){

        $term_image_id = get_term_meta($term_id, 'term_image_id', true);
        if($term_image_id){
            //get the medium image size for display
            $term_image = wp_get_attachment_image_src($term_image_id, 'medium', false);
            echo '<img . $term_image[0] . '" title="' . $term->name . ' image"/>';
        }  
    }
}
登录后复制
这将在这样的描述下显示我们的照片:

>WordPress术语元和WP_TERM简介

删除术语元

>我们可以删除术语元数据,与帖子相同。当我们使用delete_term_meta函数时,如果需要,我们需要提供两个强制性参数。

    $ term_id - 术语的ID。
  • $ META_KEY - 将从该学期删除的元密钥。
  • > $ META_VALUE(可选) - 仅在值匹配此值时才删除元数据。当您仅在匹配设置值时才要删除此数据时,请使用此此操作。
  • >
  • 再次让我们看一下您可以使用此情况的情况。想象一下您通过一个大型项目的一半,您已经将几个元数据保存到了每个类别术语中。您已经发现其中一些数据不再需要,因此您可能应该清除它,以免它弄乱您的数据库。

此功能将通过并删除我们在$ wasse_term_keys变量中未指定的任何其他元数据,从而减少了数据库中浪费的空间(对于我们有数十个元数据条目时,我们不再需要)。 > 与WordPress 4.3及以上的
//saving new fields for category
function save_extra_taxonomy_fields($term_id){
    $term = get_term($term_id);
    $term_slug = $term->slug; 
    //collect category image id from posted values
    $term_category_image_id = isset($_POST['category_image_id']) ? sanitize_text_field($_POST['category_image_id']) : ''; 
    //update value and save it as an option
    update_option('category_image_id_' . $term_slug, $term_category_image_id);
}
add_action('create_category','save_extra_taxonomy_fields');
登录后复制
登录后复制
向后兼容

>您真的很想向前推进这些新的元功能,但想掩盖自己的旧版本,则可以创建一些有条件的功能以确保一切都可以。

我们首先调用函数_EXISTS,以确保定义新的add_term_meta函数。这仅适用于WordPress 4.4和更新。如果我们有支持,我们会使用简单的add_term_meta函数将元数据分配给我们的术语。

>如果我们没有支持,我们会抓住术语对象本身(通过术语ID中的术语),然后我们提取$ TERM_TAXONOMY数据并使用它来构建我们的最终键值。由于我们将保存到选项表中,我们需要确保密钥是唯一的,因此我们通过将分类法名称,术语ID和术语键添加到一个变量中来做到这一点。 我们必须确保密钥的长度不超过64个字符,并将其修剪成。完成所有这些操作后,我们可以调用我们的add_option函数以节省我们的价值。> 如您所见,这会变得很长,但是您确实会增加灵活性以支持较旧和较新的WordPress版本。
function add_featured_to_categories(){

    //get all terms from the category taxonomy
    $taxonomy_name = 'category';
    $term_args = array(
        'orderby'       => 'name',
        'hide_empty'    => false,
        'fields'        => 'ids'
    );

    $terms = get_terms($taxonomy_name, $term_args);

    if($terms){

        $term_key = 'term_size';
        $term_value = 'empty';
        $term_unique = true;

        //go through all terms and set the new term meta
        foreach($terms as $term_id){

            $term = get_term($term_id, $taxonomy_name);
            $term_count = $term->count; 

            //determine new meta value
            if($term_count > 10){
                $term_value = 'big';
            }else if($term_count >= 5 && $term_count < 10){
                $term_value = 'medium';
            }else if($term_count >= 1 && $term_count < 5){
                $term_value = 'small';
            }

            //save meta value
            add_term_meta($term_id, $term_key, $term_value, $term_unique);  
        }
    }
}
add_action('init', 'add_featured_to_categories');
登录后复制
登录后复制

将其全部包装

使用这些新的元功能应使您更轻松地扩展您的术语以提供独特的功能。例如,您可能需要在术语的顶部添加横幅图像或提供元数据,以便您可以有条件地以不同的方式显示您的条款(例如,根据显示的术语加载新的模板文件)。

>具有新术语元函数的灵活性和易度性,您可以立即开始在新项目中实现此功能!

>

经常询问有关WordPress术语Meta

的问题(常见问题解答)

什么是WordPress术语META?

WordPress项META是一项功能,它允许您将自定义元数据存储在WordPress站点中。此元数据可以是您想与该术语相关联的其他描述,图像,颜色或任何其他信息。这是一个功能强大的工具,可以增强网站的功能和用户体验。

如何在wordpress中添加术语元?

​​

在WordPress中添加术语META,您可以使用add_term_meta( ) 功能。此功能采用三个必需的参数:术语ID,元密钥(元字段的名称)和元值。可选地,您还可以指定元密钥是否应该是唯一的。

>

>我如何在WordPress中检索术语元数据?

>

>您可以使用get_term_meta()function在WordPress中检索术语元数据。此功能需要您要检索的元字段的术语ID和键。它返回指定术语的元字段的值。

>我可以在wordpress中更新术语元吗?

是的,您可以使用update_term_meta()function在WordPress中更新术语Meta。此功能需要术语ID,元密钥和新的元值。如果该术语不存在元密钥,则将添加。

>

>如何在WordPress中删除术语META?

>您可以使用DELETE_TERM_META()函数在WordPress中删除WordPress中的术语Meta 。此功能需要术语ID和META键。它删除了给定术语的指定元字段。

> wordpress中的WP_TERM类是什么?

> WordPress中的WP_TERM类是一个术语的面向对象的表示。它提供了检索和操纵术语数据的方法,包括术语meta。

>我如何使用WP_TERM类使用术语元?通过为特定术语创建类的实例,然后使用类提供的方法来检索,添加,更新或删除该术语的元数据。

>在WordPress?

> WordPress中的术语元素可用于多种目的,例如将其他信息添加到类别或标签中,为术语创建自定义字段,增强搜索功能等等。我可以使用WordPress中的自定义分类法的术语元素吗?术语元函数可与任何分类法(包括自定义的分类法)一起使用。

>是否有任何可以帮助我在WordPress中管理术语元的插件?

是的,有几个可用的插件可以为您提供帮助在WordPress中管理术语元。这些插件提供了添加,更新和删除术语元的用户友好接口,这使得那些不满意编码的人更容易。

>

以上是WordPress术语元和WP_TERM简介的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何开始WordPress博客:初学者的分步指南 如何开始WordPress博客:初学者的分步指南 Apr 17, 2025 am 08:25 AM

博客是人们在网上表达观点、意见和见解的理想平台。许多新手渴望建立自己的网站,却因担心技术障碍或成本问题而犹豫不决。然而,随着平台不断发展以满足初学者的能力和需求,现在开始变得比以往任何时候都更容易。 本文将逐步指导您如何建立一个WordPress博客,从主题选择到使用插件提升安全性和性能,助您轻松创建自己的网站。 选择博客主题和方向 在购买域名或注册主机之前,最好先确定您计划涵盖的主题。个人网站可以围绕旅行、烹饪、产品评论、音乐或任何激发您兴趣的爱好展开。专注于您真正感兴趣的领域可以鼓励持续写作

wordpress文章列表怎么调 wordpress文章列表怎么调 Apr 20, 2025 am 10:48 AM

有四种方法可以调整 WordPress 文章列表:使用主题选项、使用插件(如 Post Types Order、WP Post List、Boxy Stuff)、使用代码(在 functions.php 文件中添加设置)或直接修改 WordPress 数据库。

如何在 WordPress 中获取登录用户信息以获得个性化结果 如何在 WordPress 中获取登录用户信息以获得个性化结果 Apr 19, 2025 pm 11:57 PM

最近,我们向您展示了如何通过允许用户将自己喜欢的帖子保存在个性化库中来为用户创建个性化体验。您可以通过在某些地方(即欢迎屏幕)使用他们的名字,将个性化结果提升到另一个水平。幸运的是,WordPress使获取登录用户的信息变得非常容易。在本文中,我们将向您展示如何检索与当前登录用户相关的信息。我们将利用get_currentuserinfo(); 功能。这可以在主题中的任何地方使用(页眉、页脚、侧边栏、页面模板等)。为了使其工作,用户必须登录。因此我们需要使用

如何在父分类的存档页面上显示子分类 如何在父分类的存档页面上显示子分类 Apr 19, 2025 pm 11:54 PM

您想了解如何在父分类存档页面上显示子分类吗?在自定义分类存档页面时,您可能需要执行此操作,以使其对访问者更有用。在本文中,我们将向您展示如何在父分类存档页面上轻松显示子分类。为什么在父分类存档页面上显示子分类?通过在父分类存档页面上显示所有子分类,您可以使其不那么通用,对访问者更有用。例如,如果您运行一个关于书籍的WordPress博客,并且有一个名为“主题”的分类法,那么您可以添加“小说”、“非小说”等子分类法,以便您的读者可以

如何在 WordPress 中按帖子过期日期对帖子进行排序 如何在 WordPress 中按帖子过期日期对帖子进行排序 Apr 19, 2025 pm 11:48 PM

过去,我们分享过如何使用PostExpirator插件使WordPress中的帖子过期。好吧,在创建活动列表网站时,我们发现这个插件非常有用。我们可以轻松删除过期的活动列表。其次,多亏了这个插件,按帖子过期日期对帖子进行排序也非常容易。在本文中,我们将向您展示如何在WordPress中按帖子过期日期对帖子进行排序。更新了代码以反映插件中更改自定义字段名称的更改。感谢Tajim在评论中让我们知道。在我们的特定项目中,我们将事件作为自定义帖子类型。现在

对于初学者来说,WordPress容易吗? 对于初学者来说,WordPress容易吗? Apr 03, 2025 am 12:02 AM

WordPress对初学者来说容易上手。1.登录后台后,用户界面直观,简洁的仪表板提供所有必要功能链接。2.基本操作包括创建和编辑内容,所见即所得的编辑器简化了内容创建。3.初学者可以通过插件和主题扩展网站功能,学习曲线存在但可以通过实践掌握。

如何在 WordPress 中显示查询数量和页面加载时间 如何在 WordPress 中显示查询数量和页面加载时间 Apr 19, 2025 pm 11:51 PM

我们的一位用户询问其他网站如何在页脚中显示查询数量和页面加载时间。您经常会在网站的页脚中看到这一点,它可能会显示类似以下内容:“1.248秒内64个查询”。在本文中,我们将向您展示如何在WordPress中显示查询数量和页面加载时间。只需将以下代码粘贴到主题文件中您喜欢的任何位置(例如footer.php)。queriesin

如何使用 IFTTT 自动化 WordPress 和社交媒体(及更多) 如何使用 IFTTT 自动化 WordPress 和社交媒体(及更多) Apr 18, 2025 am 11:27 AM

您是否正在寻找自动化 WordPress 网站和社交媒体帐户的方法? 通过自动化,您将能够在 Facebook、Twitter、LinkedIn、Instagram 等平台上自动分享您的 WordPress 博客文章或更新。 在本文中,我们将向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 轻松实现 WordPress 和社交媒体的自动化。 为什么要自动化 WordPress 和社交媒体? 自动化您的WordPre

See all articles