列出用于发布的分类术语作为复选框

时间:2011-08-26 作者:Josh Allen

我正在修改插件Wordpress Frontend User 对于我的自定义帖子类型。我需要编辑的是自定义分类术语。为了做到这一点,我需要将我的术语列为标签,并设置与标签关联的复选框(最后,当我发送post更新时,与分类法关联)。

我现在的情况如下:

$jobsTerms = get_terms(\'jobtype\',array( \'taxonomy\' => \'jobtype\' )); 
foreach($jobsTerms as $term){
    echo "<label for=\'term-" . $term->slug . "\'>" . $term->name . "</label>";
    echo "<input type=\'checkbox\' name=\'term" . $term->slug . "\' value=\'" . $term->name . "\' />
}
但除此之外,我不知道如何检查该帖子是否选择了一个术语(如果是,请添加checked=checked 输入)。

当我单击submit时,我也不知道如何更新这个分类法(这会触发一些自定义update_post_meta 电话和awp_update_post 呼叫

有什么帮助吗?

1 个回复
最合适的回答,由SO网友:Devin Humbert 整理而成

试试这个:

$jobsTerms = get_terms(\'jobtype\',array( \'taxonomy\' => \'jobtype\' )); 
foreach($jobsTerms as $term){
    $checked = (has_term($term->slug, \'jobtype\', $post->ID)) ? \'checked="checked"\' : \'\';
    echo "<label for=\'term-" . $term->slug . "\'>" . $term->name . "</label>";
    echo "<input type=\'checkbox\' name=\'term" . $term->slug . "\' value=\'" . $term->name . "\' $checked />";
}
将$post\\u id替换为获取id所需的任何内容,我不确定这段代码的确切位置。它可能是$post->ID。

结束

相关推荐

prefix table and plugins

出于安全原因和良好实践等原因,我将我表的前缀从wp\\u1改为其他形式。我很好奇,大多数安装的新插件都采用了新前缀,但我有一个插件拒绝使用wp\\u1,并且仍然使用wp\\u2安装。它仍然有效,但我很好奇,这是正常的做法还是一个写得不好的插件?