staana-blog

staana-studio 近況報告 ★ staana-shopがオープンしました!
 

来ましたよ! 2010/5/29 土曜日

みなさん、こんにちは :-P

昨日、きました!ニュースでも話題のこれ、Appleストアで予約しておいたやつがきちんと発売日に届きました。

デジタル道具に疎い両親も「iPad」という名前を知っていてびっくり。普通のニュースでガンガン流れてましたものね。今日はSoftbankの回線がぎゅうぎゅうなのではないでしょうか :mrgreen:

私が手に入れたのはWi-Fi 16GBモデルです。多分外出先ではiPhoneがあれば十分なので、少し迷いましたがこちらのモデルにしました。将来SIMロックフリーになるかもしれないし、いざとなったら「Pocket Wifi」を+するとか手はありますしね。

↑の写真はiPhoneで撮ったショット。ちょっとかっこ良く見えるようにiPhoneアプリで加工してみました。こんなのも簡単にできて楽しいですね!

 

さてこんな感じでやってきました。いつもながらきれいなパッケージです。箱も捨てないぞ!

最初の印象は「結構重い…」仕様もよく見ずに予約したのですけれど、裏面はiPhoneみたいにポリカーボネートではなくiMacと同じアルミなんですね。だからでしょうか?

片手でずっと持ち続けてのネット操作等は出来ないですね。膝に置くとかしないと。

今回買ったのはこの3点です。

iPad本体とApple純正ケース、iPad用ドッグ。ドッグはあって正解でした。前述の通り結構重いので持つのはNG、机に置くと上に覆いかぶさるようにして画面を見る事になるので疲れます :-|

ケースは一応純正を研究しておかないと!という理由で注文しました。

staana-shopからも iPad用の新商品を作りたいなと計画中です。一応頭の中では「こんなの」と思っていたアイデアがあったのですけれど、予想より「重い」ので少し軌道修正が必要なようです。

iPad用アクセサリはこれからたくさん発売されるでしょうね!

staana-shopでも「欲しい!」と思っていただけるようなものが作れるよう頑張ってみます!リクエストなどありましたらご意見を聞かせてくださいね!

机周りが散らかっていてお恥ずかしいのですが、ドッグに立ててiMacにつなげてみました。
まだタッチスクリーンの防護シールを手に入れていないのでとりあえず梱包時についていた透明フィルム付です ;-)

(iPhoneもちらっと写っています。iPadに反射して映っている赤いものはいつも仕事で使っているBERNINAのミシンカバーです!)

本当は「これで今後はblogの更新はiPadでらくらく!」と思っていたのですが、Wordpressのバージョンが古い事、php5ではなく4のまま使い続けている…などの情けない理由で問題多発でiPadからの投稿は出来ませんでした…

staana-shopのショッピングカートに使用しているブラグイン(WP e-commerce)がWordpressとphpのバージョンアップでどんな影響を受けるか心配でなかなかバージョンアップに踏み切れないでいるこの頃です。

商品開発もしたいし、デジタル関係の整備もしなくちゃだし、しばらく大忙しになりそうです!!


 
 

MOLESKINEカバー新発売(最終回) 2009/10/20 火曜日

みなさん、こんにちは MOLESKINEカバー発売への道のりその6です。

MOLESKINEカバーの商品開発、終わりが見えたと思ったと思ったのですが最後に最大の難関が…

それは本体カラー、合成皮革カラー、革タグカラー、ペンホルダーの有無と4つのオプションを表示させられるのか?という問題でした。

staana-shopはWordPressのWP e-commerceというプラグインを使用させてもらっていますが、これまでオプションは2つまでしか設けておらず、それで問題なく動いていました。

さて、4つに増やすと… 恐る恐るまずは単純に追加してみました。商品詳細ページにきちんと4つ表示されるものの、「カートへ入れる」ボタンを押しても反応なし!

当然レジへ行っても「カートに何も入っていません」の冷たい返事。

ああ、またphpと格闘なのか…と肩を落としつつ久しぶりにソースを追い始めました。実は先日の連休、お出かけ日和だったのに、このphp修理にあけくれてしまいました :cry:

しかし思ったより重症でなく、妥協した点もあったりしましたが、何とかオプション4つを実現でき、その他以前から気になっていたところもついでに直し、10/12UPの運びとなりました。

staana-blogにしては大河ドラマ級の壮大な6回連載でお届けしてまいりましたが、無事MOLESKINEカバーを世に出す事ができました。今後はアレンジとしてデニムを使ってみようかな、とか同じ撥水帆布のお揃いのRHODIAカバーの開発をなどと考えております。

216通りの中からお好きなカバーをお作りします!ぜひstaana-shopへお越し下さいませ、お待ちしております。


 
 

WP e-commerceカスタマイズメモ -6 2008/2/18 月曜日

Filed under: デジタルな仕事, 仕事のメモ, WordPress — staana @ 10:32:am

追記:3/14にshopオープンしました! →shopへ行く

引き続き「カスタマイズメモ-1」でリストアップしたカスタマイズ部分のラフな詳細(?)です。

●カスタマイズ内容:

5. 同じく購入履歴リストとログ用注文控メールのタイトル部分に注文No.が表示されるように、カスタマイズ。

7. オリジナルではなぜかお客様のメールアドレスとこちらのログ用アドレスに確認メール&控メールがいかなかったのを、カスタマイズ。

●現象:

  • 注文後、お客様と自分とにメールが送られる設定になっているにもかかわらず送られない。
  • 自分のアドレスに送られる控メールのタイトルに注文No.が入っていないので確認しにくい。

●対策:

WP e-commerceの管理画面の「オプション」ページには「買い物ログの送信先メールアドレス」と「返答メールの送信元メールアドレス」を設定する箇所があり、ここにメールアドレスを入れておくと注文確定後、お客様への自動返信メールとショップの控メールが送られるような設定になっています。

この処理を行っているのは「transaction_results.php」から呼び出される

function transaction_results(transaction_result_functions.php内)

です。submit_checkout_function.php内のfunctionでいろいろ処理をした後 function transaction_results で送信結果ページ(成功ならthank youページ/クレジットカード払いが不調に終わった場合はその結果)を出力し、ショッピングカート内のデータ、名前、住所などのお客様情報を集めてメールの本文を編集し、お客様とショップ用にメールを送ります。

ところが、ショップ用の控メールは届くものの、一番大事なお客様へのメールがなぜか届きません…

submit_checkout_function.php内のfunction を調べてみたところ、送信結果ページを出力後、ごく簡単な内容のショップ用控メールを送る処理をした後、return false;となっており、お客様へのメール本文の編集と肝心の送信を行う前にfunctionを出てしまう仕様になっていました。

これではメールはいくら待っても送られませんね。そこでこの「return false;」をコメントアウトにし、その後の処理が続行されるようにしたところ、無事メールが送られるようになりました。

送られてきたメールを確認すると、少し内容的に乏しい感じでしたので、最低限必要な情報が見栄えよく送られるよう編集し直しました。(もちろん、そのまま送ってしまうとひどい文字化けを起こしますので、日本語用にmb_send_mail()に変更するのを忘れずに…)

ついでにショップの控メールのタイトルに分かりやすいよう注文No.を入れるなどなどさらに編集を追加し、出先でもご注文をいただいたらすぐ分かるよう、自分の携帯にも簡単なメールを送るようにしておきました。迅速に対応できるようバッチリ(?)カスタマイズしました :-P


 
 

WP e-commerceカスタマイズメモ -5 2008/2/15 金曜日

Filed under: デジタルな仕事, 仕事のメモ, WordPress — staana @ 5:58:pm

追記:3/14にshopオープンしました! →shopへ行く

久しぶりの投稿となってしまいました。 :-(

引き続き「カスタマイズメモ-1」でリストアップしたカスタマイズ部分のラフな詳細(?)です。

●カスタマイズ内容:

6. お客様情報を入力後確認画面が出ずにすぐにthank youページへ移動してしまう仕様になっていたのを、入力フォームの必須項目チェック後に確認画面を出すように、カスタマイズ。

●現象:

  • 注文確定前に最終確認を行うページがない。

●対策:

WP e-commerceでは、

ショッピングカートに追加しレジへ

カートの中身を確認

お客様情報の入力

注文確定(Thank youページへ)

という流れになっていて、 「お客様情報の入力」で入力必須項目のチェックをクリアするとそのまま注文が確定してしまい、買い物内容や入力内容の最終確認をする機会がありません。

私がこれまでネット上で買い物をしたお店はどこも最後に確認の機会を与えてくれて「本当に買っていいのか」と今一度心の整理をつけてくれました。

最終確認のページはやはり必要だと思いましたし、「お客様情報」でつい入力ミスなどがあって商品を届けられない、連絡が取れないなどのトラブルを最小限にとどめるため最終確認のページを追加する事にしました。

お客様情報を入力してsubmitボタンがクリックされると、function nzshpcrt_submit_checkout()(submit_checkout_function.php内で定義)による処理が行われます。

function nzshpcrt_submit_checkout()ではまずフォームの入力必須項目のチェックが行われ、エラーがあればエラーメッセージを返し、またチェックをクリアすると住所などのフォームの内容をMySQLテーブル「wpxx_purchase_logs」にINSERTします。その後もろもろの処理をし、transaction_results.phpへ移りthank youページの出力となります。

そこでSESSION[]を利用して「確認ページを出力したかどうかのフラグ」を持たせ、さらにfunction nzshpcrt_submit_checkout()に手を加え確認ページ未出力(フラグ=off)であるなら必須項目チェックの結果すべてクリアであった場合はconfirmページ(確認ページ)を出力、となるようにしました。

confirmページの処理は「お客様情報の入力」フォームを出力させている「checkout.php」を参考にconfirm.phpを新たに作り、この中でショッピングカートの内容を表示させ(このショッピングカートの内容もconfirmページに合うよう少々改造)、続けてフォームに入力された内容を表示させる処理を行います。具体的には他のWP e-commerceで使用しているページと同じように新たにWordPressのページを1ページ追加し、wp-shopping-cart.php内でconfirmページが要求されたらconfirm.phpが動くように関連づけます。

さらに、confirmページのurlはいろいろと他でも使う事があるので、他のページ同様にWordPressのオプションテーブル「wpxx_option」に「confirm_url」として手動で追加、これで

get_option(’confirm_url’);

でいつでも取得する事ができます。

confirmページを表示させる際に先ほどのSESSION[]フラグをonにしておきます。(これを忘れると永遠に注文がこなくなってしまいます…)

そして最終的に「注文確定」ボタンがクリックされると再び function nzshpcrt_submit_checkout()に入り、今度はwpxx_purchase_logsにお客様情報が書き込まれ、transaction_results.phpへ移るという従来の動きを経てオーダーがショップに届く、という流れになります。

今回のカスタマイズの中でこれが一番の大仕事でした :-|


 
 

WP e-commerceカスタマイズメモ -4 2008/1/31 木曜日

Filed under: デジタルな仕事, 仕事のメモ, WordPress — staana @ 11:42:am

追記:3/14にshopオープンしました! →shopへ行く

引き続き「カスタマイズメモ-1」でリストアップしたカスタマイズ部分のラフな詳細(?)です。

●カスタマイズ内容:

3. 支払い方法として、「クレジットカードのみ」(ただし、クレジットカードはPayPal、Google Checkoutなど(gold cartにアップグレードした場合。標準ではPayPalのみ)日本ではあまりおなじみではない方法のみ)or 「クレジットカード+manual payment option」の2種類しか選べなかったのを「銀行振込 or 郵便振替」、にカスタマイズ。

4. 上記の支払い方法でどちらが選択されたのか、購入履歴リストに表示されるように、カスタマイズ。

●現象:

  • 支払い方法を選択する際、「クレジットカード(PayPal)」のみか、「クレジットカード(PayPal)+ Manual Payment」の2つしかデフォルトの選択肢にない。
  • WP e-commerceの管理画面で注文No.が表示されない。
  • WP e-commerceの管理画面で支払方法の詳細(銀行振込か郵便振替か)までは表示されない。

●対策:

staana-shopではクレジットカードでの支払いは近い将来に実現するとして、まずは銀行振込と郵便振替のどちらかでお支払いいただくことに決めました。デフォルトでは必ず「クレジットカード」が選択肢に入ってきてしまいますのでこれをなんとかしなければと思いカスタマイズを試みました。

支払い方法の選択はWP e-commerceの管理画面の「Checkout Form Fields」ページで行います。このページでは他にお客様情報入力の際の入力エリアの表示順、必須項目の設定も行えます。
ページ下部にある「Payment Options」で上記2つの選択肢が並んでいます。ここで選んだものがcheckout.phpにより処理され、checkoutページでフォームとなって現れます。また「Checkout Form Fields」ページのフォームから送信された内容(name=’payment_method’ value=’1′ or ‘2′)はWordPressのoptionテーブルに格納されます。

具体的なカスタマイズはここからです。checkout.phpの最後のあたり、支払い方法のラジオボタンを表示させているところに手を加えます。

クレジットカードのラジオボタンの<li><input 〜 /></li>部分(name=’payment_method’ value=’1′)をコメントアウトにし、銀行振込用ラジオボタン(name=’payment_method’ value=’2′)と、新たに郵便振替用のラジオボタン(name=’payment_method’ value=’3‘)を加えます。もちろん<label 〜>も「銀行振込」と「郵便振替」という日本語を定義し表示するように設定します。これで見かけの上では支払い方法の選択で選択肢が 「銀行振込」と「郵便振替」の2つになりました。

さらに、 「銀行振込」と「郵便振替」のどちらが選択されたのかをWP e-commerce管理画面の「Purchase Log」ページに表示されるように変更を加えます。

まずWordPressのテーブル「wp**_purchase_logs」に「bankcheck」という名前のフィールドを手動で1つ追加し、ここに支払い方法として’1′(クレジットカード)、’2′(銀行振込)、’3′(郵便振替)のどれが選択されたかを格納します。

実際に格納するのはsubmit_checkout_function.phpの中です。submit_checkout_function.phpは全体がfunction nzshpcrt_submit_checkout() という1つの大きな関数定義になっていて「お客様情報」のフォームが送信された際の処理を行っています。
function nzshpcrt_submit_checkout()内で必須項目のチェックをした後、入力漏れがなければフォームの内容を「wp**_purchase_logs」テーブルへINSERTしています。ここで先ほどの支払い方法を「bankcheck」に格納するようにクエリに追加します。

さて、今度はWP e-commerce管理画面の「Purchase Log」ページに表示させなくてはなりません。「Purchase Log」ページの処理はdisplay-log.phpで行われています。ここではsubmit_checkout_function.php内でINSERTしたwp**_purchase_logsのデータを読み込んで表示させ、さらにUPDATEを処理します。

めでたくお客様からの注文が入るとこのページに注文内容が1行追加されますが、その中に支払い方法として何が選択されたのかを表示させます。

display-log.phpの275行目あたりに
if(get_option(’payment_method’) == 2)
というif文が現れます。ここでクレジットカードのgateway名(PayPalなど)または「Manual Payment」のどちらかが出力されるようになっています。これが 「Manual Payment」だった場合には「銀行振込」または「郵便振替」と表示させるようにswitchを追加しました。

また「Purchase Log」ページにはオーダーNo.は表示されないのでついでにこれも表示させるように追加しました。

最後に。 「Purchase Log」ページに表示項目を追加させる場合は<table>のカラム数を変更するのを忘れずに…表示が崩れてしまいます。
105行目あたりで計算させています。