第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

顯示 WooCommerce 自定義產(chǎn)品屬性和單個(gè)產(chǎn)品的所有術(shù)語

顯示 WooCommerce 自定義產(chǎn)品屬性和單個(gè)產(chǎn)品的所有術(shù)語

PHP
拉丁的傳說 2023-06-24 17:06:56
我使用自定義函數(shù)在 WooCommerce 單一產(chǎn)品頁面上創(chuàng)建了六個(gè)自定義屬性。它們包括:圖標(biāo)、標(biāo)簽和術(shù)語。基于將 WooCommerce 屬性標(biāo)簽替換為每個(gè)答案代碼的自定義圖像,我使用了以下函數(shù)(使用自定義 HTML 標(biāo)記,與 WooCommerce Product-attributes.php 模板中的標(biāo)記不同):add_action('woocommerce_single_product_summary', 'pa_custom_attributes', 25);function pa_custom_attributes(){? ? global $product;? ? $attributes = $product->get_attributes();? ? if ( ! $attributes ) return;? ? $out = '<div class="custom-attributes">';? ? foreach ( $attributes as $attribute ) {? ? ? ? if ( $attribute->get_variation() ) continue;? ? ? ? if ( $attribute->is_taxonomy() ) {? ? ? ? ? ??? ? ? ? ? ? $taxonomy = $attribute->get_name();? ? ? ? ? ? $taxo_obj = $attribute->get_taxonomy_object();? ? ? ? ? ? $name = $taxo_obj->attribute_name;? ? ? ? ? ? $label = $taxo_obj->attribute_label;? ? ? ? ? ? $label_name = wc_attribute_label( $taxonomy );? ? ? ? ? ? $out .= '<div class="' . esc_attr( $taxonomy ) . ' single-attribute">';? ? ? ? ? ? $out .= '<div><img class="attribute-image" src="'.get_stylesheet_directory_uri().'/woocommerce/attributes/'.$name.'.svg" alt="Attribute '.$label.'"/></div>';? ? ? ? ? ? $out .= '<div class="attribute-label '.$label.'">'.$label_name.'</div>';? ? ? ? ? ??? ? ? ? ? ? $out .= '<div class="attribute-values">';? ? ? ? ? ? $terms = wp_get_post_terms( $product->get_id(), $taxonomy, array('fields' => 'names') );? ? ? ? ? ? foreach ( $terms as $term_name )? ? ? ? ? ? ? ? $term_names['names'] = $term_name;? ? ? ? ? ? $out .= implode(', ', $term_names);? ? ? ? ? ? $out .= '</div></div>';? ? ? ? }?該函數(shù)工作正常,但有一個(gè)問題:如果特定屬性的項(xiàng)超過一個(gè)(例如顏色:紅色、藍(lán)色、綠色),則該函數(shù)在屏幕上僅打印數(shù)組的最后一個(gè)值。我閱讀了文檔并做了很多測試,檢查CSS沒有問題。有誰可以幫我理解錯(cuò)誤出在哪里嗎?
查看完整描述

1 回答

?
侃侃爾雅

TA貢獻(xiàn)1801條經(jīng)驗(yàn) 獲得超16個(gè)贊

問題來自于您的代碼中的以下內(nèi)容:


            $terms = wp_get_post_terms( $product->get_id(), $taxonomy, array('fields' => 'names') );


            foreach ( $terms as $term_name )

                $term_names['names'] = $term_name;


            $out .= implode(', ', $term_names);

你可以用這個(gè)替換:


            $terms = wp_get_post_terms( $product->get_id(), $taxonomy, array('fields' => 'names') );


            $term_names = []; // Initializing


            // Loop through each terms

            foreach ( $terms as $term_name ) {

                $term_names[] = $term_name;

            }


            $out .= implode(', ', $term_names);

或者用一行代碼就更好了:


            $out .= $product->get_attribute( $taxonomy );


查看完整回答
反對 回復(fù) 2023-06-24
  • 1 回答
  • 0 關(guān)注
  • 199 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號