これはかなりです。私のphp-fuはまだかなり弱いですし、私はまだかなりのwoocommerceに新しいです。Woocommerce - 2つのproduct_idsの1つがチェックアウト時にカートに入っている場合は、フォームフィールドを追加してdivを表示/非表示にします
チェックアウトページのカートにある2つの特定商品IDのいずれかを確認するスクリプトを作成する必要があります。「paypalメールアドレス」テキストフィールドと「受信ニュースレター」を追加します。チェックボックスをクリックするだけでなく、 "form-shipping.php"テンプレートで作成したdivを別の隠しdivで置き換えることもできます。
驚いたことに、これまでの私の研究では、チェックアウトページのカート内の一致する商品IDを確認するだけではうまくいきませんでした。これは合理的に必要と思われるようです。私はそれだけでこの時点で大きな勝利になると考えています。
この目標を達成するための提案、指針または手掛かりがあれば幸いです。ここで
がhttps://wordimpress.com/create-conditional-checkout-fields-woocommerce/から適応しようと、私が取り組んできたコードです:
<?php
add_action('woocommerce_before_checkout_billing_form', 'aym_custom_checkout_field');
function aym_custom_checkout_field($checkout) {
//Check if Product in Cart
$prod_in_cart_17563 = aym_is_conditional_product_in_cart_17563(17563);
$prod_in_cart_17558 = aym_is_conditional_product_in_cart_17558(17558);
if ($prod_in_cart_17563 === true || $prod_in_cart_17558 === true) {
//Prod is in cart so hide div
echo '<script type="text/javascript">$(".checkout_promo_content").css("display", "none")</script>';
echo '<script type="text/javascript">$(".checkout_promo_aff_content").css("display", "block")</script>';
//and add additional fields
echo '<div id="email_paypal"><h3>' . __('Paypal Email Address') . '</h3><p style="margin: 0 0 8px;">Please enter the email address you use for Paypal</p>';
woocommerce_form_field('pp_email_textbox', array(
'type' => 'text',
'class' => array('paypal-email form-row-wide'),
'label' => __('Paypal Email Address'),
), $checkout->get_value('pp_email_textbox'));
echo '<h3>' . __('Ambassador Terms and Conditions') . '</h3><p style="margin: 0 0 8px;">Please accept the <a href="http://www.acceleratingyoungminds.com/ambassador-terms-conditions/">Ambassaor Terms and Conditions</a></p>';
woocommerce_form_field('amb_terms_checkbox', array(
'type' => 'checkbox',
'class' => array('amb_terms-checkbox form-row-wide'),
'label' => __('I accept Ambassador terms and Conditions'),
), $checkout->get_value('amb_terms_checkbox'));
echo '<h3>' . __('Subscribe for Ambassador Mailing List') . '</h3><p style="margin: 0 0 8px;">Would you like to subscribe for welcome emails and important information</p>';
woocommerce_form_field('amb_sub_checkbox', array(
'type' => 'checkbox',
'class' => array('amb_sub_checkbox form-row-wide'),
'label' => __('I would like to subscribe to the Ambassador Newsletter'),
), $checkout->get_value('amb_sub_checkbox'));
echo '</div>';
}
}
?>
してください、 "__write /デバッグ-MY-code__"、 "__recommend /サーチ何か-用-me__"、 "__tutorial__" リクエストと "__low-effort__"、 "__unclear__"、 "__opinion-based__" 、 "**プログラミングに関連しない**"の質問は[スタックオーバーフローのオフトピック](http://stackoverflow.com/help/on-topic)です。代わりに、[質問する方法](http://stackoverflow.com/help/how-to-ask)に記載されているように、良い質問を**研究努力**、**問題の明確な説明**、 [最小、完全、および検証可能な例](http://stackoverflow.com/help/mcve)を含みます。 –
どのバージョンのwoocommerceですか? – LoicTheAztec
バージョン2.6.14ですが、間もなくアップグレードする必要があります。まだ3.0に対応するようにアップグレードされていないプレミアムテーマを使用しています。 –