You are here: Home \ PHP \ wordpress \ WooCommerce \ WooCommerceで県や地域、国ごとの配送料金を設定する「Table Rate Shipping for WooCommerce」

    WooCommerceで県や地域、国ごとの配送料金を設定する「Table Rate Shipping for WooCommerce」

    20 10月 2015 - 4:40, by , in WooCommerce, 8 comments

    デフォルトのWooCommerceでは「無料配送」「宅配便」という選択肢は存在しますが、
    別々の配送方法とみなされ顧客がチェックボックス/ラジオボタンで選択しなければならず不自然な状態になります。
    この二つを組み合わせ、条件を満たした場合に自動的に送料無料にしたい場合はエクステンションを利用しなければなりません。
    20151015sc1

    また発送先の住所や都道府県によって送料を変えるという事ができません。
    なので以下の2点を満たしたエクステンションをWooCommeceに追加します。

    ・日本郵便の料金設定に従い、都道府県を7つの地帯に分け地帯毎に配送料金を設定する
    (日本郵便は離島料金が無いので例外設定はしない)

    ・○○円以上カートに入っている場合に自動で送料無料に設定する
    (第△地帯のみ××円以上で送料無料 という設定はしない)

    クロネコヤマトや佐川急便の料金設定がどうなっているのかはわかりませんが、日本郵便とそれほど違いと思いますので自分/自社で使用している宅配サービスに合わせて設定して下さい。
    この記事では日本郵便に合わせて設定しています。
    佐川などでの離島への配送は料金が変わるはずなので、郵便番号で例外設定をしなければならないはずです。
    この記事では説明しませんがそれほど難しくないと思いますので頑張ってください。

    以下の機能は紹介するプラグインにはついていません。拡張するか他のプラグインと組み合わせましょう。
    ・配送日時の指定
    ・配送先ごとにリードタイムの設定(沖縄の配送には+1日 など)

    ついでにボタンを押すだけで日本の宅配サービス各社の伝票印刷サービスに応じた形のcsvを落とせたりしたら良いのですが、流石にそんな都合の良いエクステンションはまだ無いようです。

    純正にすべきか、サードパーティにすべきか

    今回候補に挙げたのは純正とサードパーティ製の2つのエクステンション。
    精査はしていませんが、おそらく機能的には同じようなものでしょう。

    ストア 価格 サポート メリット デメリット
    純正 公式 199ドル/1サイト 1年(英語) 公式なので安心 アップデートも1年のみ有効なライセンスなので、常に最新の状態に保とうとしたら毎年199ドル必要
    サードパーティ Envato 22ドル/1サイト 6ヶ月(英語 / 6.6ドルで6ヶ月追加サポート) 安い
    サポートが切れてもアップデートは無料で可能なので買いっぱなしで維持費はかからない
    ・サードパーティ製なのでセキュリティの面で100%信用はできない
    ・そもそもEnvatoマーケットから削除されたらその後のアップデートの可能性は無くなる

    純正はこちら→ Table Rate Shipping
    199USD/1ライセンスの1年サポート付きで、1年後以降にアップデートを適応させたい場合は1年毎にライセンスを再度購入する必要があります。なので事実上1年199ドルですね。
    今回私は見送りましたが、インストールや設定方法は恐らくほとんど同じでしょう。

    今回紹介するサードパーティ製の「「Table Rate Shipping for WooCommerce」は世界最大級の素材・コード販売ストアenvatoのcodecanyonで販売されています。
    同社が運営しているwpやウェブサイト用テンプレート販売サイトthemeforestは利用したことがある方も多いのではないでしょうか。

    ダウンロードはこちらから→Table Rate Shipping for WooCommerce
    22ドルで半年間の英語サポート付き、アプリケーションがストアから削除されないかぎり無料でアップデートできます。
    2015年10月現在、codecanyonのWooCommerceエクステンション販売数でぶっちぎりNo1の9,372Salesなのである程度信用できるのではないでしょうか。
    まあサードパーティ製なので適応は自己責任でお願いします。
    バージョン3.6.4のシステム要件は以下の通りです。
    PHP 4.3
    WordPress 3.3
    WooCommerce 1.6
    Javscript / jQuery

    ダウンロード

    購入は省略。
    購入が完了したらDonwloadボタンを押し、ローカルにダウンロードします。
    下の方にある「Install for $20」というボタンはおそらくenvatoが運営している代行サービスに繋がるだけなので気にしないでOKです。20151014sc1
    codecanyon-3796656-table-rate-shipping-for-woocommerce.zipという圧縮ファイルがダウンロードされるので解凍します。
    解凍するとさらに中にwoocommerce-table-rate-shipping.zipという圧縮ファイルが入っており、これがエクステンションの本体となります。
    HELPというフォルダも入っており、設定の仕方などが英語で書かれたhtmlファイルが入っています。
    エクステンションのインストールには必要ありませんが、英語に抵抗のない方はサラッと読んでおくと良いかもしれません。
    もし生のコードを呼んだりディレクトリ構成を知りたい場合はwoocommerce-table-rate-shipping.zipを解凍して覗いてみましょう。
    20151014sc2

    インストール

    ではエクステンションのインストールをしていきましょう。
    envatoで購入したWooCommerceのエクステンションはwordpressのプラグインという形で追加します。
    他のプラグインと同じようにwpのadmin画面からこのwoocommerce-table-rate-shipping.zipをアップロードするという形でインストールしましょう。
    wordpress管理画面のプラグイン>新規追加からプラグインを追加します。
    タイトル「プラグインを追加」の右にあるプラグインのアップロードからアップロード画面に移ります。
    20151014sc3
    ここからアップロード
    20151014sc4

    アップロードが完了しただけではプラグインは適応されないので、有効化すればインストール完了です。
    インストールが完了した時点で
    WooCommerce > 設定 > 配送方法 > Table Rate 【以下、基本設定画面と呼びます】
    WooCommerce > 設定 >Shipping Zones【以下、ゾーン設定と呼びます】
    の2画面が追加されています。
    正常にインストールされていたらプラグインの管理画面に「初期設定してね!」という旨の警告が表示されるようになります。
    20151014sc5
    ではSetup Zonesをクリックすると【ゾーン設定】画面に移りますので、初期設定を完了させていきましょう。

    日本語化

    このプラグインには一応日本語の翻訳ファイルが用意されています。
    ただ明らかに機械翻訳であり、日本語化すると意味不明になったので私は英語に戻しました。
    この記事では英語で設定していきます。
    記事を書いてる途中で英語の説明が面倒になってきたので翻訳ファイルを作成しました。
    githubで公開しています。
    翻訳がおかしい点があるかもしれませんので、修正点がありましたらコメントを頂けたら幸いです。
    be-table-ship-ja.moを選択、次のページでRawボタンを押すとダウンロードできます。
    20151019sc1
    ftpでwp-content > plugins > woocommerce-table-rate-shipping > languageにアップロードして下さい。
    wordpressの設定が日本語になっていたらこれだけで日本語化されるはずです。
    一部翻訳ファイルが当たらない文章があったので英語のままの部分が存在しますが、運用でカバーしましょう。
    「Add New」ですら訳される画面と訳されない画面があるくらい結構ガバガバです。

    以下の2ファイルが元々の翻訳ファイルとして存在してしますが、念のため削除しておきましょう。
    be-table-ship-ja_JP.mo
    be-table-ship-ja_JP.po

    設定

    設定手順

    基本的には以下の流れで設定します。
    1.ゾーンを設定
    2.配送の一般設定
    3.ゾーンごとに送料を設定

    では実際に設定していきましょう。

    ゾーンを設定

    ゾーンを追加します。
    エクステンションをインストールすると
    WooCommerce > 設定 のタブにShipping Zonesが追加されますので、そこから追加ボタンをクリックすると追加画面に移ります。
    20151019sc2
    適応区分を切り替えると入力する項目が切り替わります。
    基本は国/州/都道府県(地域)で設定して良いでしょう。
    以下の全てのケースが「国/州/都道府県」で対応できます。
    ・地域や都道府県によって送料を変える
    ・全国一律の送料
    ・国外発送

    なおここでプルダウンに出力される国や州、都道府県は以下の設定の影響を受けるため、
    配送したい国がや都道府県が出てこない場合はこれらの一度設定を確認してみてください。
    ・WooCommerce > 一般 の「販売拠点」「販売を展開する国」
    ・WooCommerce > 配送方法 の「出荷先を制限する」

    ここで設定する項目は以下の通りです。

    有効化 チェックされているとこのゾーンが有効化されます
    タイトル そのゾーンの名前です
    基本的にお客様が見ることはありません
    説明 そのゾーンの説明です
    こちらもお客様が見ることはありません
    適応区分 ゾーンの適用の仕方です
    場所 使い道不明
    国と書いてありますが、都道府県もここで指定します
    除外する州/都道府県 都道県単位での例外処理
    あまり使うことは無さそうです
    除外する郵便番号 離島は郵便番号をもとにこのゾーンから外し、別料金に設定する時などに使えそうです

    ご利用されているサービスの地域区分の合わせてゾーンを作成して下さい。
    日本郵便で都内からの発送の場合以下のようになりました。
    20151020sc1

    離島料金の設定

    日本郵便の場合離島料金は必要なので設定していません。
    離島料金が必要な場合、恐らくご利用されている宅配サービスの担当営業に連絡すれば離島料金のcsvが貰えるかと思いますので、
    「除外する郵便番号」や「適応区分->郵便番号」などを組み合わせてうまいこと設定してください。

    配送の一般設定

    ゾーンの設定が完了したらWooCommerce > 配送方法 >テーブルレートから配送料金の一般設定を行っていきます。
    基本的に訳の中に説明を埋め込んだのであらかた省略します。

    ・荷物の大きさによって送料を変える
    国内のサービスを利用する分には恐らく必要の無い項目です。
    ここをチェックすると個別の商品の設定ページの「大きさ (cm)」から荷物のサイズを割り出し、直下で設定するVolumetric Divisorから重さを概算し、
    「大きさ (cm)/Volumetric Divisor」か「重さ (g)」のどちらか重い方の重量から送料を計算します。

    Volumetric Divisorについて
    海外の配送サービスでは (縦*横*高)/Volumetric Divisor で大体の重さを計算するそうです。
    例えばDHLではVolumetric Divisorは5000となり、縦横高がそれぞれ10cmだと
    (10*10*10)/5000 = 0.2kgと計算します。
    この数字は各社異なるらしいので自分が利用する配送会社のdivisorを各自調べて入力して下さい。

    Hide This Method」という項目はよくわかりませんでした。
    WooCommerceにデフォルトでついてくる「無料配送」の事かと思い色々テストしてみましたが何も影響しなかったので、
    とりあえずチェックボックスを外しておけば問題ないかと思われます。

    配送料金をゾーンごとに設定

    取扱料金・基本料金

    固定料金、オーダー金額に応じた変動料金の2つを設定できます。
    2つの料金は組み合わせ可能なので15400円のオーダー時に「固定料金300円」+「合計金額の10% 1540円」=1840円の基本取扱料金といった形でも設定できます。
    このプラグインでは1つのオーダーに所属することのできるゾーンは1つだけなので、
    取扱料金・基本料金用に「全国」というゾーンを作成し、取扱料金・基本料金は「全国」ゾーンの適用、送料は「第2地帯」ゾーンの適用という形での運用はできません。
    もし取扱料金・基本料金という形で料金を徴収する場合、ゾーンの数だけ取扱料金・基本料金を設定しなければなりません。
    面倒ですが以下のようにそれぞれ設定しましょう。
    20151020sc3

    ゾーンごとの送料の設定

    では仕上げにゾーン毎に送料を設定しましょう。
    参考:ゆうパック 基本運賃表 東京都の運賃
    日本郵便で都内から60サイズで発送する場合で設定すると以下のようになります。
    20151020sc2

    基本的な使い方は以上です。
    代引きは「支払い方法」で設定するので、配送設定での設定は必要ありません。
    商品の重さや大きさ、配送クラスなどを組み合わせれば柔軟に送料や取扱手数料をいじれますので色々試してみると良いかもしれません。

    About author:

    8件のコメント on "WooCommerceで県や地域、国ごとの配送料金を設定する「Table Rate Shipping for WooCommerce」"

    BONO - 26 10月 2015 返信

    はじめまして。 テープルレートの導入を検索して、こちらのサイトにたどりついて Table Rate Shipping for WooCommerceを導入しました。 一番送料の高い配送クラスを適応させようとチェックを入れて 送料発生条件を"配送クラス"ごとに変更して試してみると "配送が可能は方法が無いようです。"というエラーが出ます。 複数個の配送クラスの違う商品をカートに入れると 送料が表示されません。。。 再インストールしなおしたり、アップデートしたりしたのですが やはり、送料発生条件を配送クラスごとに変えると エラーが出てしまいます。 何か解決策はございますでしょうか。 アドバイス頂ければ幸いです。

      miyadir - 30 10月 2015 返信

      配送クラスの優先順位はテストしていないのでわかりませんが、「送料発生条件」で配送クラスに優先順位をつければ良いのではないでしょうか。 複数の商品が同時に注文され、それぞれの商品が異なる配送クラスを持っていた場合に優先順位が一番高い配送クラスの商品の送料が適用されます。

    endo - 29 10月 2015 返信

    大変貴重な情報をありがとうございました。送料設定で困っておったところ運良くこのページを発見できました。よろしければ1つ教えていただきたいのですが、わたしの場合、2か国語で運用しています。このページの通りにShipping Table Ratesの部分でゆうパックとEMSの設定を加えましたが、いざ注文画面にいくと住所入力の前にゆうパックもEMSも両方表示されてしまいます。仮に購入者が国外の方だとすると、ゆうパックも選択できて、そのままペイパルの決済画面まで進みことができて決済までできてしまいます。国外からの注文はEMSだけ表示したいのですが、ご存知であれば教えていただけると幸いです。

      miyadir - 30 10月 2015 返信

      国内便やEMSの送料が一律か地域によって送料を変えるか、等の細かい条件が不明なので何ともいえませんが、 ゾーン設定時に除外設定を組み合わせれば対応できるかと思われます。 EMSで国別の送料を設定していない(世界中送料一律)ようであれば、EMSというゾーンを設定し除外対象に日本を指定すれば良いのではないでしょうか。 私は試してはいませんが、WPMLは対応しているようなので他言語化には柔軟に対応できそうです。

    moro - 2 12月 2015 返信

    大変参考になる情報をありがとうございます。 WooCommerceで海外向けの販売サイトを作成し、Table Rate Shipping for WooCommerceを使って送料設定していたのですが、EMSの送料が地域(国)によって異なる場合はどのように設定すればよろしいでしょうか? http://www.post.japanpost.jp/int/charge/list/ems_all.html こちらの情報を反映したいと思っております。

      miyadir - 5 12月 2015 返信

      ゾーンを設定し国々を各ゾーンに所属させればよいかと思われます。

    三浦 - 25 8月 2016 返信

    midair.comさま めちゃめちゃ助かりました。 こちらの記事がなかったら、WooCommerce面倒だとおもって、Welcartにいっていたかもしれません。本当に有難うございました。相当感謝しております。

    Koba - 25 11月 2016 返信

    はじめまして。WooCommerce初制作中です。 ヤマト宅急便(沖縄のみ別料金・全国一律一定額以上送料無料)に加えて、ヤマトDM便(一定額以下の場合のみ表示)を実現できる方法を探していました。 WooCommerce Advanced Free Shippingと組み合わせることで、一定額以上の送料無料を実現することは可能でしょうか? このプラグインで、ヤマトDM便も追加可能でしょうか?ゾーンごとの送料設定の画像で、MinとMaxの表示があります。これは表示条件として、SubTotalの金額を入力できるということでしょうか? お教えいただけると幸いです。

    三浦 にコメントする コメントをキャンセル