今時の(会社)ホームページはリース契約らしい

最近、あるホームページ制作会社さんに訪問する機会があったので、その時の話。

その制作会社は、iタウンページに積極的に広告を出していたり、リアル店舗でもフレッツの代理店をやっていたりして、一見、通信関係に強い会社なのかなというイメージだったんですね。

ホームページは作りっぱなしでは×

ホームページを立ち上げても、その後の更新がいちいち面倒だったりするのは、よくある事です。

それをこの会社では、「オリジナルの」CMSツールを提供するという事で、解消しています。

  • レゾナント・ソリューションズ株式会社
    WebChanger
    ・ネットショップの更新・管理をする為に必要な、画像更新、文章作成・修正といった作業を誰もが行えるようにソフトウェア化した画期的な商品です。
    ・デザインはプロによるオリジナルデザインで、お店の雰囲気に合ったデザインを提供する事が可能です。
    ・ショッピング機能を搭載しているので、どなたでも短期間でネットショップを導入することができます。

なんとかくインターフェースを見たところDreamweaverの「テンプレート」と「FTP機能」だけを取り出して、Excelに本文を記述する様なソフト。

Excelのようなセルに本文になるテキストや、イメージ画像を入れて、「更新」ボタンを押せば、サーバー上のファイルを更新してくれる。

ダメなところをあげるならば、サーバーとローカルの同期チェックを行わずに“常に上書き”してしまっている所かな?せめてDreamweaverのチェックイン/チェックアウトくらいの機能は付けてほしいところだと思った。

ホームページは¥0円で作ります!?

上記のCMSを導入する事を前提で、ホームページは無料で作成するそう。

そのかわり、CMSソフトと保守費用込みの価格を『リース契約』するそうです。

「その考えは無かったわー!」という声が聞こえてきそうですが、最近はこんな感じで、ソフトのCD-ROMを商材に高額のリース契約を結ぶ制作会社が多いそうです。

MODxのサーバー移転で・・

MODxをXREA(CoreServer)からAT+LINKの専用サーバーに移転した時にいろいろ困った件。

特にサーバー移転した場合、リンクまわり(CSSへのリンクとか)がうまくいかないことが多い。

で、結局一番早くできた方法。

  1. まっさらなMODxをセットアップする。
    このとき、フレンドリーURLはNoで、やっといた方がエラーの切り分けに便利なのでNoの状態で作業します。
  2. テンプレート、チャンク、スニペット、プラグインをコピペで移す。
    DBのインポートでも何とかなりそうですが、パスをハードコーディングしている場合があるので、目視で一つずつ移します。
  3. フレンドリーURL=Noの状態でエラーを出すプラグインを停止しておきます。
    例えば、SEO_Strict_URLsとかね。
  4. 元のDBからsite_contentテーブルの中身をコピーします。
  5. 最後に停止しておいたプラグインの再開と、フレンドリーURLsをYesにしてサイトを確認します。

サイトの確認の際は、特に動的な部分AjaxSearchとかeFormとかの動作を入念に確認します。

最後に、今後のことも考えて、スニペットやプラグインでは、パスをハードコーディングしないように気をつけましょう。
面倒くさくてもそれが、あとで役に立ちます。

ショッピングカートを作ってみる

さて、MODxでカートモジュールを作ってみるとかみないとか、言ってるわけですが、ちょっと頓挫気味。

MODxでセッションを管理するのってPluginが必要みたいだけど、そのへんの情報が、まだまだ未熟です。(言い訳)

というわけで、単独のPHPでショッピングカートを作ってみる。

一部では「PHPはセキュリティが甘いから・・」とか「オープンソースは品質に問題が・・」とかいうシステム屋さんがたまにいますが。

『それは、お前らが責任取りたくねーだけの言い訳だろ!』と言いたい。

では、まずレシピから・・

  1. Linuxサーバー(Apache)
  2. MySQL
  3. PHP
  4. Dreamweaver
  5. テキストエディタ(秀丸推奨)

レシピの1~3は、ホスティングサーバーについてくる物で十分です。(月額400円くらい)

あそうそう、間違っても高価なWindowsサーバープラン(IIS)とか選んじゃダメですよ。

IIS版のPHPは、あくまでエミュレーターみたいな物ですから(最近は良くなった?)

ホスティングサーバーによって、MySQLのバージョン、PHPのバージョンが違う場合があるので、自分の使うサーバーがどのバージョンを使っているかよく確認しておきましょう。

PHPが上手く動かなくて、「PHPのバージョンのせいだ・・」とか、「MySQLの文字コードが・・」とかいう人もいますが、それも言い訳でしか、ありません。

きちんとソースを記述すれば問題ありません。

Dreamweaverを使う利点は、HTMLが簡単に記述できる点と、リモートのMySQLサーバーに接続して「まるでサーバー上で作業しているように」PHPコードを記述できるという2点です。

Dreamweaverのコードエディタについているポップヒントと、補完機能は、本当に便利です。

最後のテキストエディタは、秀丸+PHP強調表示を追加して使用するのがベストですね。

最終的な調整とか、PHPコードのクリーンアップとかに使います。

じゃあ、作ってみます。

ショッピングカートの作り方

ショッピングカートって何かを考えると、要するにメールフォームの一つなんだと思う。

今でも時々、メールフォームだけで、注文を受けているページを見る事があります。商品がひとつだけのお店とかそうですね。

それを多数の商品ラインナップに対応すべく、複数の注文を受けられるようにしたり、注文者情報をフォームに入力して、最後は、注文者とお店にメールを送る。

そう考えれば、ショッピングカートがずっと簡単なものに見えてきますね。

1.メール送信部分を作る。

というわけで、基本の基本、注文者とお店にメールを送信する部分を作ります。

この時にメールの内容を日時とともにMySQLに保存する部分も作ります。
これで、注文履歴を参照する“元”ができるわけですね。

2.購入希望商品を持ちまわるカート部分を作る。

ショッピングサイトでは、サイト内をブラブラといろんな商品を見て回るので、サイト内でカートに入れた商品を持ちまわる機能が必要になります。

これは、SESSION関数を使って簡単にできます。

SESSIONには、商品コードと数量、あと必要ならオプション値(色とかサイズ)を保持しておきます。

SESSIONの追加、削除をきちんとできれば上出来です。

3.注文者情報もSESSIONで持ちまわります。

お客様は、どこで気が変わるかわかりません。

時に、住所を入力して、決定ボタンを押す直前に「あ、あれも買おう」とか思って、商品ページに戻る事もあります。

そんな時に、注文ページでまた、一から、名前、住所などを入力するのは、かったるいですよね。

なので、「一度入力された」データーは、ショッピング終了まで保持するようにします。

4.おまけ機能で、他に差をつける。

他のライバルサイトに無い、機能で買い物の楽しさ、カートの使いやすさをアピールします。

  • 郵便番号→住所 自動補完機能。
  • お届け日時の指定をカレンダーで指定。
  • 商品レビュー。
  • 他のおすすめ商品。
  • ポイント機能。

などなど、流行のAjaxとかいろいろ使ってイケテルカートを目指します。

MySQL GUI ツールを使ってみる

今時なホスティングサーバーなら、データベースにMySQLやPostgreSQLなんかが使えると思います。

またデータベースの管理用にphpMyAdminとかphpPgAdminとかが、インストールされてたります。

普通はそれらのツールを使えば、だいたい事足りるのですが、専用サーバーとかデータセンターとか、なんだかこだわったサーバーですと、接続ホストを制限してたり、いろいろ面倒な事があります。

(面倒とか言ってはいけないんですが)

そこでMySQLの本家というか開発元の「MySQL AB」が提供しているMySQL GUI Tools(英語)を使ってみる。

KompoZerとVistaの謎

前のエントリーでもちょっと書いたHTMLオーサリングソフトですが。

使い勝手の良さでKompoZerを使い始めています。

ところがなんでか理由が分からないんですが、XPでは問題ないのにVistaにインストールしたら不具合が。

その不具合というのが、サイトマネージャにサイト情報が保存できないという物。はっきり言って致命的でした。

Mozilla、SeaMonkeyでは、どちらも問題なかったのにKompoZerだけ変なんですよ。

諦めかけてVistaでは、SeaMonkeyを使っていたんですが、今日もう一度KompoZerをダウンロードしてきたら使えるようになった。

さっぱりわけわからん。

でもまあ、つかえてるからよしとします。
いいソフトですからね。