wordpress教程菜鸟教程保存分类术语

我有一个有趣的问题,我希望有人能快速回答。

我创建了自己的元数据框,它基于“我的元数据框代码”(下面的列表)正确显示了我创建的“事件类型”分类法中所有术语的下拉列表。

当从下拉列表中选择不同的术语并更新帖子时,我遇到的问题是能够保存/更新与帖子关联的术语。

在修改了各种代码位之后,我能够通过手动输入 term_ID 号来弄清楚 [separated by commas] 进入阵列区域,我得到了我正在寻找的结果。

例如,如果在保存帖子时调用此代码的函数

wp_set_post_terms( $post_id, array(5,7), 'event_types', FALSE); 

然后我的帖子将更新并将 term_ID 5 和 7 关联到它,如您所见,我正在传入数组。 问题是这是硬编码到我的 functions.php 文件中,而不是基于用户选择的下拉值(注意:我实际上只是想传递一个 ID,但我做了两个用于测试,如下所述)。

我也已经能够弄清楚,如果我将以下代码添加到我的 metabox 文件中,那么我就能够回显分配的术语 ID 列表,但最后一项有一个逗号。

<?php $event_types = wp_get_object_terms($post->ID, 'event_types'); foreach ($event_types as $event_type) { echo $event_type->term_id . ','; } ?> 

所以…看来我已经解决了 85% 的问题。 我的问题的剩余 15% 仍然如下:

提前非常感谢你们 – 下面是我目前在每个文件中使用的代码。

我的 FUNCTIONS.PHP 文件中的代码

function save_event_taxonomy_terms($meta, $post_id) { $event_types = wp_get_object_terms($post->ID, 'event_types'); wp_set_post_terms( $post_id, array($names), 'event_types', FALSE); } 

我的 METABOX 代码

<select name="post_event_types" id='post_event-types'> // DISPLAY TERMS AS DROP DOWN OPTIONS <?php $names = wp_get_object_terms($post->ID, 'event_types'); $event_types = get_terms('event_types', 'hide_empty=0'); ?> <option class="event_type-option" value="" <?php if (!count($names)) echo "selected";?>>Not Assigned</option> <?php foreach ($event_types as $event_type) { if (!is_wp_error($names) && !empty($names) && !strcmp($event_type->slug, $names[0]->slug)) echo "<option class="event_type-option" value="" . $event_type->slug . "" selected>" . $event_type->name . "</option>\n"; else echo "<option class="event_type-option" value="" . $event_type->slug . "">" . $event_type->name . "</option>\n"; } ?> </select> 

原文链接:https://www.wordpresshy.com/324090

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享