我正在使用工具集视图显示分类法列表。这些分类法属于我使用工具集分类法创建的自定义分类法。然后,我使用插件分类图像添加了一个选项,使图像与术语相关。如果有任何影响的话,我会使用一个扁平的层次结构(标签)。
我试图实现的是,在视图循环中,我希望显示我添加到术语中的图像。
视图循环:
<wpv-loop>
<img src="[sagaio-term-image size=\'thumbnail\' id=\'[wpv-taxonomy-id]\' output=\'url\']" />
<h4>[wpv-taxonomy-title]</h4>
</wpv-loop>
我的快捷代码:
function get_taxonomy_image( $atts ) {
$atts = shortcode_atts( array(
\'image_size\' => \'thumbnail\',
\'id\' => \'\',
\'output\' => \'\'
), $atts );
add_shortcode( \'sagaio-term-image\', \'get_taxonomy_image\' );
问题:如何获取指定分类法的附件ID并输出URL?
我已经看过了wp_get_attachment_image_src
但我不知道如何获取附件的ID。。。
SO网友:Anton Flärd
以下代码部分取自插件Taxonomy Images 它正在发挥作用:
function get_taxonomy_image( $atts ) {
$atts = shortcode_atts( array(
\'image_size\' => \'thumbnail\',
\'id\' => \'\',
), $atts );
if( ! empty( $atts[\'id\'] ) ) {
$term = get_term( $atts[\'id\'] );
$related_id = 0;
if ( isset( $term->term_taxonomy_id ) ) {
$related_id = (int) $term->term_taxonomy_id;
}
$attachment_id = 0;
$associations = get_option( \'taxonomy_image_plugin\' );
if ( isset( $associations[ $related_id ] ) ) {
$attachment_id = (int) $associations[ $related_id ];
}
$imgsrc = wp_get_attachment_image_src( $attachment_id, $atts[\'image_size\'] );
return $imgsrc[0];
}
return \'no-id-set\';
}
add_shortcode( \'sagaio-term-image\', \'get_taxonomy_image\' );