这是代码的一部分,用于显示投资组合类别:
$post_cat = array();
$post_cat = wp_get_object_terms($post->ID, "portfolio_category");
$post_cats = array();
$attachments = get_post_meta($post->ID, \'300-160-image\', true);
if ($attachments) {
$post_cat = array();
$post_cat = wp_get_object_terms($post->ID, "portfolio_category");
$post_cats = array();
$cats_pf_this = implode(":", $post_cats);
$fg_imagemain.=\'{"url": "\'.get_bloginfo(\'template_directory\').\'/image.php?\'.str_replace("&", "&", $image_resizer_output).\'image=\'.$attachments.\'", "aid": \'.$post->ID.\', "color": "\'.addslashes(get_post_meta($post->ID, \'thumbnail_hover_color\', true)).\'", "thumb_title": "\'.addslashes($thumb_title).\'", "thumb_descr": "\'.addslashes($thumb_descr).\'", "thumb_cats": "\'.addslashes($cats_pf_this).\'", "fullimgsrc": "}\';
var fg_divhoverbgmetadata = $("<div>").addClass("hoverbgpfthnailmetadata").html(\'<span class="thumb_title">\'+srcobj.thumb_title+\'</span><span class="thumb_cats">\'+srcobj.thumb_cats+\'</span><span class="thumb_plus">+</span>\');
我想做的是,同时显示公文包标签。我认为第一步是重复这一点:
$post_cats = array();
$post_cat = wp_get_object_terms($post->ID, "portfolio_category");
例如:
$post_tags = array();
$post_cat = wp_get_object_terms($post->ID, "portfolio_tags");
其余代码也是如此。我尝试过这个方法,但没有成功,我无法显示公文包项目标签。我做错了什么?
SO网友:truemedia
您需要知道“portfolio\\u tags”分类法的名称。检查定义为自定义分类法的位置,需要将其添加到公文包自定义帖子类型中。
这个register_taxonomy() 功能将是您的主题,如下所示:
register_taxonomy(\'portfolio_tags\',
array(\'portfolio\'),
array(\'hierarchical\' => false, \'show_ui\' => true, \'query_var\' => true,
\'rewrite\' => array( \'slug\' => \'portfolio-tags\' )));
或者,您可以使用一个自定义post/自定义分类插件——然后您需要检查给定的id(例如,它可以是“portfolio\\u tag”)
确认后,应使用get_the_terms() 相反,因为它是Wordpress API的一部分(wp_get_object_terms() 未使用对象缓存,因此效率较低)
$post_cat = get_the_terms( $post->ID, \'portfolio_tags\' );
最后,为了使用
$post-ID
, 确保您在循环中,或者您已经引用了
global $post
对象