2017-05-08 8 views
0

私は変数の製品のスキューを表示するための子テーマをカスタマイズしようとしています。 主なテーマは、主なテーマでは機能しますが、機能によって呼び出されているため、書式設定のために削除する必要がありました。変数Product Sku not working

クライアントはもっとコンパクトでクリアなインターフェースを求めていましたので、私のソリューションはすべてprice.phpに入れていましたが、この方法ではSkuの製品をSkuと呼ぶときに、 。

は、具体的には:
私のメインテーマのconfig.phpには、この機能を持っている:子テーマprice.phpで

public function woocommerce_add_hooks(){ 
add_action('woocommerce_single_product_summary', array(&$this, 'mad_woocommerce_template_single_meta'), 11); } 

に呼び出され

function mad_woocommerce_template_single_meta() { 
     ?> 

     <?php global $product; ?> 

     <section class="product-section"> 

      <div class="product_meta"> 

       <?php do_action('woocommerce_product_meta_start'); ?> 

       <?php if ('yes' == get_option('woocommerce_manage_stock')): ?> 

        <?php 
        $availability  = $product->get_availability(); 
        $availability_html = empty($availability['availability']) ? '' : '<span class="stock ' . esc_attr($availability['class']) . '">' . esc_html($availability['availability']) . '</span>'; 
        ?> 

        <span class="stock_wrapper"> 
         <span class="meta-title"><?php _e('Availability:', 'flatastic'); ?></span> 
         <?php echo apply_filters('woocommerce_stock_html', $availability_html, $availability['availability'], $product); ?> 
        </span> 

       <?php endif; ?> 

       <?php if (wc_product_sku_enabled() && ($product->get_sku() || $product->is_type('variable'))) : ?> 
        <span class="sku_wrapper"> 
         <span class="meta-title"><?php _e('SKU:', 'flatastic'); ?></span> 
         <span class="sku" itemprop="sku"><?php echo ($sku = $product->get_sku()) ? $sku : __('N/A', 'flatastic'); ?></span> 
        </span> 
       <?php endif; ?> 

       <?php do_action('woocommerce_product_meta_end'); ?> 

      </div><!--/ .product_meta--> 

     </section><!--/ .product-section--> 

     <?php 
      $post_content = !empty($product->post_excerpt) ? $product->post_excerpt : ''; 
      $post_content = apply_filters('the_excerpt', $post_content); 
      $post_content = str_replace(']]>', ']]&gt;', $post_content); 
     ?> 

     <?php if (!empty($post_content)): ?> 
      <section class="product-section"> 
       <?php echo $post_content; ?> 
      </section><!--/ .product-section--> 
     <?php endif; ?> 

     <?php 
    } 

私のコードは次のようになります。

<?php if (wc_product_sku_enabled() && ($product->get_sku() || $product->is_type('variable'))) : ?> 
    <span class="product-code"><?php _e('SKU:', 'flatastic'); ?> <span class="sku"><?php echo ($sku = $product->get_sku()) ? $sku : _e('N/A', 'flatastic'); ?></span></span> 
    <?php endif; ?> 

また、価格から変動株を呼び出す数量についても同様の問題が返されます。

これを解決する最良の方法は何ですか?私は別のソリューションを試しましたが、今まで働いたことはありません

答えて

1

私はあなたのコードで何をしているのか分かりません。

しかし、あなたの問題では、私が知っていることは、すべての子供をループしてバリエーションのスキューを取得する必要があるということです。このようなもの:

+0

バリエーションを変更すると、現在のスキューはどのように表示されますか? –