都道府県プルダウンメニュー
2008/04/22 火曜日 23:47:58 JST

VirtueMart はデフォルト設定は、都道府県のプルダウン表示や、ユーザ登録をしない設定になっています。いずれも必須ではありませんが、設定方法を説明します。

1. 下記画面は、お客さまがチェックアウトして、お客さま情報を入力する画面です。

 ユーザ登録をしていない場合、請求先情報を入力して送信すると、お客さまのメールアドレスにパスワードが送信され、そのパスワードを使ってチェックアウトができるようになっています。

 また、都道府県は登録しない設定になっていますので、表示もされません。このままですと、どこに県名を入力するのか迷ってしまうことになりそうです。

 ここでは、ユーザ登録をしていただき、都道府県も入力するように設定変更をします。

 default

 

2. 「コンポーネント」メニューの「VirtueMart」を選択し、メニュー画面を表示し、「設定」をクリックします。

conf

 

3. 全般設定タブが開き、スクロールダウンします。

  • 「ユーザ登録設定」の「サイレントユーザ登録を利用しますか?」のチェックを外します。
  • 「フロントエンド設定」の「顧客は都道府県/地域を選択しますか?」にチェックを入れます。

 設定後、「保存」をクリックします。

changeconf

 

4. 上記の設定後は、ユーザ登録を求めるようになり、都道府県のプルダウンメニューが表示されますが、県名に何も表示されません。

change

 

5. 県名を表示されるためには、県名をデータベースに登録する必要がありますので、どこに登録するか調べてみます。

 まず、jos_vm_country (プリフィックスはデータベース登録時に指定したものになりますが、ここでは jos_ として表示します)テーブルを開きます。

country

top

6. country_id 107 に Japan が登録されていることがわかります。

japan

 

7. 次に、jos_vm_state を開きます。

state

 

8. state_id は 208 まで登録されていますので、都道府県は、state_id 211 から、country_id はすべて 107、country_3_code は 001 から連番、country_2_code は 県名を登録します。
 登録する前に、state_2_code の種別を char(2) から char(4) に変更してください。
 以下が、登録した内容のサンプルです。

mysql1


mysql2

mysql3

 

9. 都道府県データを登録後に表示してみると、登録順序とはまったく違った順番で表示されてしまいました。

nosort

top

11. 都道府県の表示順を、state_id 順にするためには、下記の修正が必要です。

 修正ファイル: joomla ルート/administrator/components/com_virtuemart/classes/ps_html.php
 修正部分: state_name → state_id に変更(237行目くらい)

soft

                    ↓

sort

 

12. 修正後、都道府県が北海道から順番に表示されるようになりました。

reorder

以上が、VirtueMart で都道府県をプルダウンされる設定方法です。

top

最終更新日 ( 2008/10/02 木曜日 19:13:10 JST )
 
JAccelerator by wypoczynek w grach
RocketTheme Joomla Templates
Copyright (C) 2007-2009 wordart All Rights Reserved. Presented by ssluser.com.