商品詳細画面の数量入力フィールドをプルダウンメニューに変更できない
-
投稿者投稿
-
2014年4月24日 6:53 PM #69875hiyo参加者
お世話になっております。
welcart公式ガイド「小さなECサイトのWordPress+Welcart導入・設定ガイド」にて、
「数量入力フィールドをセレクトフィールドに変更する」のカスタマイズを、現在
製作中のテーマに導入をしようとしております。しかし、セレクトフィールドは表示されるにも関わらず、数量が表示されない(何も選択できない)状態となっております。(*画像参照)
また、現在製作中のテーマだけでなく、welcartデフォルトテーマでも同様の症状が出ます。
仕様の変更などがあったため表示がされないのでしょうか?
それでなければ他にカスタマイズした箇所が原因でエラーになっているのかもしれませんが、
分かる範囲でご教授願いませんでしょうか?——————————————-
WordPress のバージョン:3.9
Welcart のバージョン:1.3.14
ご利用のテーマ:welcart calm
症状を確認したブラウザ:safiri
サーバー(会社名、サービス名):エックスサーバー
SSLの利用: 利用あり
WordPress のパーマリンク設定:カスタム
——————————————–Attachments:
You must be logged in to view attached files.2014年4月26日 5:59 AM #69890nanbuキーマスターこんにちは。
いただきました情報だけでは推測できません。
実際のコードを見せていただけますか?2014年4月26日 1:58 PM #69895hiyo参加者nanbu 様
ご連絡ありがとうございます。
該当すると思われる箇所をコードを記載致しますので、
恐れ入りますがご確認の程よろしくお願い致します。【functions.php】
function bks_the_itemQuant_select( $max ){global $post, $usces;
if(empty($max)){$max = 10;}
$zaiko = usces_the_itemZaikoNum(‘return’);
$sku_enc = urlencode(usces_the_itemSku(‘return’));
$restriction = $usces->getItemRestriction($post->ID);
if( (” != $zaiko && 0 < $zaiko && ” != $restriction && $zaiko > $restriction) || (” == $zaiko && ” != $restriction) ){
$max = $restriction;}
elseif( ” != $zaiko && 0 < $zaiko && ” != $restriction && $zaiko < $restriction ){$max = $zaiko;}
$select = ‘<select name=”quant[‘ . $post->ID . ‘][‘ . $sku_enc . ‘]” id=”quant[‘ . $post->ID . ‘][‘ . $sku_enc . ‘]” class=”skuquantity” onkeydown=”if (event.keyCode == 13) {return false;}”>’ . “\n”;
for($i=1; $i<=$max; $i++){
$select .= ‘<option value=”‘ . $i . ‘”>’ . $i . ‘</option>’ . “\n”;}
$select .= ‘</select>’;
echo $select;}【製作中のsingle.item.php】
<div class=”actionform”>
<form action=”<?php echo USCES_CART_URL; ?>” method=”post”>
<?php usces_the_itemGpExp(); ?>
<div class=”skuform”>
<?php if (usces_is_options()) : ?>
<table class=’skusingle’>
<?php while (usces_have_options()) : ?>
<tr><th><?php usces_the_itemOptName(); ?></th><td><?php usces_the_itemOption(usces_getItemOptName(),”); ?></td></tr>
<?php endwhile; ?>
</table>
<?php endif; ?>
<?php if( !usces_have_zaiko() ) : ?>
<div class=”zaiko_status”><?php echo apply_filters(‘usces_filters_single_sku_zaiko_message’, __(‘Sold Out’,’usces’)); ?></div>
<?php else : ?>
<div class=”addtocart”>
<div style=”margin-top:10px”><?php _e(‘Quantity’, ‘usces’); ?><?php bks_the_itemQuant_select( 30 ); ?> <?php usces_the_itemSkuUnit(); ?><?php usces_the_itemSkuButton(__(‘Add to Shopping Cart’, ‘usces’), 0); ?></div>
<div class=”error_message”><?php usces_singleitem_error_message($post->ID, usces_the_itemSku(‘return’)); ?></div>
<?php wpfp_link() ?>
<?php endif; ?>
</div><!– end of skuform –>
<?php echo apply_filters(‘single_item_single_sku_after_field’, NULL); ?>
<?php do_action(‘usces_action_single_item_inform’); ?>
</form>
</div>2014年5月1日 5:11 PM #69937yskysmrキーマスターこんにちは。
bks_the_itemQuant_select をこちらのサイトに展開してみたのですが、php のエラーが出ていることにお気付きでしょうか。
php のエラーを取るためには、DEBUG_MODE を true にして検証してください。例えば、以下のコード
if( (” != $zaiko && 0 < $zaiko && ” != $restriction && $zaiko > $restriction) || (” == $zaiko && ” != $restriction) ){
の中の「” != $zaiko」の比較値ですが、ダブルクォーテーションになっています。正しくは半角のシングルクォーテーションが2つ、です。php の条件分岐が正しく動作しますと、数量も表示されるかと思います。
-
投稿者投稿
- このトピックに返信するにはログインが必要です。