我正在尝试根据我添加到编辑屏幕的元框中的复选框,创建一个函数,自动向帖子添加“特色”标记。
我想我需要使用的功能是wp_set_object_terms, 但我不明白它是怎么工作的。我知道如何检查这些复选框是否处于活动状态,但仅此而已。
我希望有人能把我带上正确的轨道。
我正在尝试根据我添加到编辑屏幕的元框中的复选框,创建一个函数,自动向帖子添加“特色”标记。
我想我需要使用的功能是wp_set_object_terms, 但我不明白它是怎么工作的。我知道如何检查这些复选框是否处于活动状态,但仅此而已。
我希望有人能把我带上正确的轨道。
我无意中在搜索类似的内容时发现了这个问题,我喜欢你的方法,所以我对你的代码做了一些改进。
我更新了动作挂钩,以便在保存和更新时触发它wp_remove_object_terms 能够切换回(切换)自定义元框值(在本例中为复选框值)函数可用于常规和自定义帖子类型,也可用于标记、类别或自定义分类。
function set_term( $post_id, $your_term ){
$post_id = get_the_ID();
$your_term = get_post_meta( $post_id, \'your_custom_meta_id\', true );
// check the custom meta-box checkbox value
if ( $your_term == \'1\' ) {
// Create a new term if checked
wp_set_object_terms( $post_id, \'YourTerm\', \'your_custom_taxonomy\', true );
} else {
// Remove the created term if unchecked
wp_remove_object_terms( $post_id, \'YourTerm\', \'your_custom_taxonomy\' );
}
}
add_action( \'save_post\', \'set_term\', 10, 3 );
好的,找到问题了。
此代码就像一个符咒:
function is_featured_post(){
$postid = get_the_ID();
$featured = get_post_meta($postid, \'wpcf-slider-if\', true); if ( $featured == 1 ) {
wp_set_object_terms( $postid, \'Destacado\', \'post_tag\', true );
}
}
add_action ( \'publish_post\', \'is_featured_post\' );
但它只适用于标准帖子,不适用于自定义帖子类型。有一个钩子可以对自定义帖子类型执行相同的操作?你可以用add_action ( \'publish_post\', \'your_function\' );
编写一个函数,检查复选框是否选中,如果选中,则更新posts术语
我有一个包含以下类别的网站:视频、图片、故事,我有很多标签,比如:Funny, Awesome, Mind Blowing, Crazy, 等有没有一种方法可以过滤让我们说:Videos 标记为Crazy?我知道你可以做到:http://domainname.com/tag/crazy/ 但这将检索所有标记为crazy, 我只是想Videos.我很幸运地搜索了WordPress文档。