Php 仅获取Woocommerce产品标签的post条款?

Php 仅获取Woocommerce产品标签的post条款?,php,wordpress,woocommerce,tags,product,Php,Wordpress,Woocommerce,Tags,Product,我的功能输出每个产品上使用的所有Woocommerce产品标签 如何对每个产品从后端选择的标签进行分类/仅输出 这是我的密码: add_action( 'woocommerce_before_shop_loop_item', 'woocommerce_product_loop_tags', 5 ); add_action( 'woocommerce_product_thumbnails', 'woocommerce_product_loop_tags', 5 ); function wooc

我的功能输出每个产品上使用的所有Woocommerce产品标签

如何对每个产品从后端选择的标签进行分类/仅输出

这是我的密码:

add_action( 'woocommerce_before_shop_loop_item', 'woocommerce_product_loop_tags', 5 );
add_action( 'woocommerce_product_thumbnails', 'woocommerce_product_loop_tags',  5 );

function woocommerce_product_loop_tags() {
    global $post, $product;
        if ( is_array (get_terms( 'product_tag' ))) {
           $tags = get_terms( 'product_tag' , 'orderby=id' );
           echo '<span class="badge-cloud">';
           foreach($tags as $tag) {
              echo '<span rel="tag" class="fl-badge '.$tag->slug.'"><p>'.$tag->name.'</p></span>';
           } 
           echo '</span>';
        } 
}
add_action('woocommerce_在_shop_loop_项目之前,'woocommerce_产品_loop_标签',5);
添加操作(“woocommerce\u产品\u缩略图”、“woocommerce\u产品\u循环\u标签”,5);
函数\u产品\u循环\u标签(){
全球$post$product;
if(是数组(获取术语(“产品标签”)){
$tags=get_terms('product_tag','orderby=id');
回声';
foreach($tags作为$tag){
回显“”.$tag->name.“

”; } 回声'; } }
正确的方法是使用,您可以为给定的分类设置帖子ID,以获取此特定帖子ID的术语。因此,您的代码应该是:

add_action( 'woocommerce_before_shop_loop_item', 'woocommerce_product_loop_tags', 5 );
add_action( 'woocommerce_product_thumbnails', 'woocommerce_product_loop_tags',  5 );
function woocommerce_product_loop_tags() {
    global $post;

    $taxonomy = 'product_tag';
    $args = 'orderby=id';
    $product_tags = wp_get_post_terms( $post->ID, $taxonomy, $args );

    if ( count($product_tags) > 0 ){
        echo '<span class="badge-cloud">';
        foreach( $product_tags as $term )
            echo '<span rel="tag" class="fl-badge '.$term->slug.'"><p>'.$term->name.'</p></span>';
        echo '</span>';
    }
}
add_action('woocommerce_在_shop_loop_项目之前,'woocommerce_产品_loop_标签',5);
添加操作(“woocommerce\u产品\u缩略图”、“woocommerce\u产品\u循环\u标签”,5);
函数\u产品\u循环\u标签(){
全球$员额;
$taxonomy='product_tag';
$args='orderby=id';
$product\u tags=wp\u get\u post\u术语($post->ID,$taxonomy,$args);
如果(计数($product_标签)>0){
回声';
foreach($product_标记为$term)
回显“”.$term->name.“

”; 回声'; } }
代码放在活动子主题(活动主题或任何插件文件)的function.php文件中


测试和工作

酷,谢谢你!“转义”是好的/必要的还是默认情况下已经安全/转义了?@RawTom我认为你不需要转义或清理任何东西,因为没有提交任何东西……它应该像现在这样工作。