2017-08-23 5 views
0

のWordpress> WooCommerceは表示されません> 1ページチェックアウトWooCommerce 1ページチェックアウトは、属性やバリエーション

単一の製品では1ページチェックアウトで有効になって、私は、属性の3つのバリエーションがあります。

Product Variations Dashboard

バリエーションが選択されてオーダーに追加されると、ワンページチェックアウトに商品名が表示されますが、バリエーションは含まれません:

One Page Checkout - No Variations Displayed

バリエーションは完全ショッピングカートに表示されますが、1ページを使用している場合は表示されません。顧客が複数のパターンを注文している場合は、混乱する可能性があります。

ワンページチェックアウトを使用して、商品名の横に顧客が選択したパターンを表示するだけです。

誰でも手助けできますか?

PS:これが間違った投稿場所である場合はお詫び申し上げます。私はコミュニティには新しく、PHPとCSSで1クラスしか持っていないし、GoogleとStackを調べて答えを出してきた。誰かが助けてくれると願っています。前もって感謝します! :)

+0

その製品のタイトルを取得する代わりにget_titleをカートアイテムデータからの変動情報を削除し、(get_nameを使用するプラグインやテーマを必要としているようだWooCommerce 3.xの変更)が()がありますバリエーション情報が含まれています。おそらく1ページのチェックアウトがその変更を反映するように更新されていないのでしょうか? – Jake

答えて

1

WooCommerce 2.xでは、バリエーション属性がカートのメタデータとして表示されましたが、WooCommerce 3.xでは商品名に含まれています。しかしこれには、get_title()の代わりに新しいWC_Productメソッドget_name()を使用するためのプラグインまたはテーマのカートカスタマイズを変更する必要があります。

サードパーティ製のプラグインまたはテーマの場合は、WooCommerce 3.xと完全に互換性のある新しいバージョンが利用可能かどうかを知り、問題を解決するのが理想的です。しかし、回避策として、プラグイン/テーマがフィルタフックwoocommerce_cart_item_nameを使用すると仮定すると、あなたのテーマのfunctions.phpに以下を追加することができます(サードパーティのテーマを使用している場合は、create a child themeを更新する必要があります) ):

add_filter(
    'woocommerce_cart_item_name', 
    function($name, $cart_item, $cart_item_key) { 
    $product = apply_filters(
     'woocommerce_cart_item_product', 
     $cart_item['data'], 
     $cart_item, 
     $cart_item_key 
    ); 
    if (method_exists($product, 'get_name')) { 
     // WooCommerce 3.x 
     $is_link = substr($name, 0, 3) === '<a '; 
     $name = $product->get_name(); 
     if ($is_link) { 
     $name = sprintf(
      '<a href="%s">%s</a>', 
      esc_url($product->get_permalink($cart_item)), 
      $name 
     ); 
     } 
    } 
    return $name; 
    }, 
    50, 3 
); 
+0

JAKE!あなたはそれを釘付けにした。ああ、私のおかげで、私はあなたの助けにどれくらい感謝しているかを伝えることさえできません。このコードは私の(多くのことを強調した)問題を完全に解決しました。私は実際にプラグインを使用しています。私はWooCommerce 3.xとの比較可能性に関するこの情報を渡すために著者に連絡します。 本当にありがとうございます。ピンバックボタンが好きですか?私はあなたに感謝パッケージを送るのが大好きです。私はスタックには新しいですが、私にDMをすることができれば、私は完全にあなたをつかまえます! – user8507215

+0

サードパーティテーマでカートテンプレートをカスタマイズしたが、更新されていない同じコードを使用しました。あなたのケースでもうまくいきました。あなたの質問に答えた場合、回答を「受け入れられた回答」としてマークする必要があります。あなたが望むなら、あなたはそれをupvoteすることができます... – Jake

+0

完了しました!ありがとう、ジェイク。あなたはWooCommerceのウィザードです! :) – user8507215

関連する問題