【EC-CUBE】カテゴリの並び順をCSVで変更する方法


【EC-CUBE】 CSVファイルからカテゴリを一括登録する(1)」でも書きましたが、EC-CUBEの管理画面からカテゴリを登録すると表示順が登録順と逆になったり、CSVファイルで登録しても妙な並びになってしまったり・・・と結局修正せざるを得ない状況になりがち。

カテゴリの総数が10個や20個ならまだがんばる気も起きますが、100を超えてくるといちいち管理画面で↑ボタンや↓ボタンを押すのもツラい(そんな時間かけて何百回もクリックできへんわい)。

調べた結果、これもCSVファイルでの登録で解決できそうです。

(1) カテゴリCSV出力時の項目設定を変更する

ec-001-3
管理画面の 商品管理>カテゴリ登録で、左上にある「CSV出力項目設定」ボタンをクリック。

ec-002
デフォルトのままだと、左側のCSV出力しない項目に「階層」「表示ランク」「削除フラグ」があり、右側のCSV出力する項目に「カテゴリID」「カテゴリ名」「親カテゴリID」が表示されていると思います。

この状態から、「階層」「表示ランク」「削除フラグ」を選択して「>」ボタンを押すと、選択した3項目が右側に移るので、「この内容で登録する」ボタンをクリック。

※正直なところ「削除フラグ」は出力項目に設定しなくてもええんちゃう?と思いますが、こちとら自慢じゃないがド素人なので、素直に全部出し設定にしておきます・・・

(2) CSVファイルをダウンロード

ec-001-2
管理画面の 商品管理>カテゴリ登録に戻り、「CSVダウンロード」ボタンをクリックすると、先ほど指定した出力項目のデータがダウンロードできます。

(3) ファイルを表計算ソフトで開いてみる

今回はExcelを使いました。(普段文句ばっか言ってるくせに…)
開いてみると、セルの列は「カテゴリID」「カテゴリ名」「親カテゴリID」「階層」「表示ランク」「削除フラグ」になっているはず。

(4) データ行の並び替え

とりあえず一旦「階層」「表示ランク」「削除フラグ」のことは忘れて、わかりやすくする為に行ごと並べ替えたい順番(一番上が一番上に表示したいもの、という順でOK)にごそっと並び替えます。

その後、問題の「階層」「表示ランク」の数値を変更していきます。


「階層」は、文字通りカテゴリの階層のようです。
例えば
ec-004
という感じに並べたいとすると、階層は
・親カテゴリにあたる「カメラ・デジタルカメラ」「テレビ・レコーダー」「生活家電」が
・子カテゴリにあたる「コンパクトカメラ」「デジタルカメラ」「ビデオカメラ」「双眼鏡・望遠鏡」「洗濯機」「掃除機」が
・孫カテゴリにあたる「コンパクトデジタルカメラ」「デジタル一眼レフ」が
になっている模様。


「表示ランク」は実際に表示される順番のようで、例えば1が一番上、100が一番下。
普通の感覚だと「親カテゴリの表示ランクと子カテゴリ・孫カテゴリの表示ランクそれぞれ分かれている」という風に考えてしまいがちだと思いますが・・・(私だけ?)
ec-005-2
↑これが間違いでした。カテゴリ階層に関係なく連番のようです。

ec-006-2
↑連番なので、表示ランクはこれが正解。

(5) アップロード

ここまで来たらCSV形式で保存して、保存したCSVファイルをEC-CUBEの管理画面でアップロード。
管理画面の 商品管理>カテゴリ登録CSVからアップロードします。
ec-007
これで、商品管理>カテゴリ登録でも希望通りの並び順になっていることが確認できたら成功です!!

(※EC-CUBE バージョン2.13.1にて)

【EC-CUBE】再インストール -ダウンロードから解凍まで


前回ちまちまとアップデートファイルを更新していくと書きましたが・・・
結局、自分が信用できない(SQL等ちゃんとできているのかわからない・どこにアップロードするのかわからないファイルがある、など)という理由でやっぱり1からインストールし直すことにしました。
幸いなことにテンプレートのカスタマイズもまだ、登録が完了している商品情報も全体の1/10程度、という感じなので、早々に諦めがつきました・・・

念のためデータベースと現在サーバにあるファイルのバックアップを取ってから、データベースを全削除、サーバのファイルも全削除(T_T)

参考URL:
小粋空間: MySQL + phpMyAdmin によるバックアップ
テーブルを全削除する|データベースの作成と削除|さくらのレンタルサーバ|さくらインターネット公式サポートサイト


準備したもの

・レンタルサーバ(さくらインターネット・スタンダードプラン)
・フリーソフト「Poderosa
・フリーソフト「FFFTP」
のみ。

EC-CUBEのダウンロード→アップロード→解凍

通常だとZipファイルか何かをダウンロードしてきて、それをローカルで解凍してFFFTPで全部アップロード・・・という感じでやっていましたが、今回はSSHという方法を使用するのでPoderosaというオープンソースの Windows 用高機能ターミナルエミュレータなるものを使います。

※Poderosaのインストールから設定についてはさくらインターネットのサポート情報に詳しく載っています。
 以前に「そもそもSSHゆうたらなんじゃい」という頃に書いた記事でも紹介しています。

(1) まずはPoderosaを起動して、ログイン。

(2) 現在のディレクトリ階層を確認
   今回のインストール先は「/home/●●●/ec」にする予定なので、「%pwd」と入力して、「/home/●●●」と表示されればOK。

(3) EC-CUBE公式サイトから希望のバージョンをダウンロードする
   ダウンロードもPoderosaで行います。
   http://www.ec-cube.net/download/#dl_anchorで、希望のバージョンに(tar.gz)と書いてあるもののURLをコピーします。
   例えばバージョン2.13.1をダウンロードしたい場合は、「http://downloads.ec-cube.net/src/eccube-2.13.1」。
   コピーしたらPoderosaで「%wget http://downloads.ec-cube.net/src/eccube-2.13.1.tar.gz」と入力。これでダウンロードが開始されます。
   ダウンロードが完了したら、念のため「%ls -al」と入力して、ディレクトリにeccubeのtar.gzがダウンロードされていることを確認します。
(4) 解凍→ちょっと調整
   ダウンロードが確認できたら、「%tar -zxvf eccube-2.13.1.tar.gz」と入力。すると解凍が始まります。
   解凍が完了したらまた「%ls -al」と入力して、新しく「eccube-2.13.1」というディレクトリが出現していることを確認します。
   今回は「/home/●●●/ec」というディレクトリ名で運用したいので、ディレクトリ名をeccube-2.13.1からecに変更しました。(もうFFFTPでOK)
   ここまで進んだら、最初にダウンロードしたeccube-2.13.1.tar.gzは消します。
   この後、ecディレクトリ内のhtmlディレクトリとdataディレクトリのパーミッションを755に変更。
   /home/●●●/ec/data/.htaccess、/home/●●●/ec/html/.htaccessを削除します。

シンボリックリンクの作成

   シンボリックリンクとは 【 symbolic link 】 – 意味/解説/説明/定義 : IT用語辞典
   要はサーバ内でのショートカットのようなものらしい。
   独自ドメインを取得していて、そのサブドメインで使用するのでこういう設定が必要らしい。
   今回はhttp://shopping.●●●.com/というURLで運用したいので、/home/●●●/ec/html/を/home/●●●/www/shopping/というディレクトリにショートカットさせます。
   Poderosaで「%ln -s /home/●●●/ec/html /home/●●●/www/shopping」と入力するとシンボリックリンクが作成されます。(※先にshoppingディレクトリを作ってしまうとおかしくなるそうなので注意)
   これで、http://shopping.●●●.com/にアクセスするとEC-CUBEのトップページが表示されるようになりました。

次はデータベースの作成とインストールについて書きます。