やればやるほどDrupal。
Drupalでサイトの作成を行う上でのネックになりそうな携帯電話への対応。
以前から、モバイル対応のモジュールやテーマ等もありましたが、それだけで充分な携帯対応ができてたかと言えば、ほぼNOだったと思います。
今回、あるサイトをDrupalで作成し、携帯への対応もかなりがんばりました。
そこで一番よく働いてくれたのがコンテンツテンプレートモジュールです。
このコンテンツテンプレートモジュールは、コンテンツタイプ毎に出力するコードの制御を行えるモジュールで、ティーザー・本文・RSSとそれぞれを違った形で出力させる事もできちゃうモジュールです。
コンテンツテンプレートモジュールを利用するにはCCKモジュールの使用が前提となります。
CCKで定義したフィールドのデータを整形して出力させる事が可能になります。
Drupalの場合、CCKで定義したフィールドのデータにそれぞれ個別のクラスが与えられた形でHTMLコードが出力されますが、無駄にタグが増えてしまいますので、それらの不要なタグを削除したり、任意のタグや文字列を追加して出力させられるようになりますので、CSSでの表示の整形もかなり好き放題やれるようになります。
この、コンテンツテンプレートモジュールでも、PHPコードを利用できますので、独自の処理を追加したりという事も可能になってきます。
今回のサイトでは、このコンテンツテンプレートモジュールの中で、携帯とPCとで違うコードを出力させる処理を入れる事で振分けを行う事ができるようになりました。
そして、その次に頑張ってくれたモジュールはVIEWSモジュールです。
VIEWSモジュールは、このモジュールを使わなければ、Drupalの魅力に気づく事ができないほど、必要不可欠なモジュールです。
記事一覧の生成などにもって来いのモジュールなのですが、こちらもCCKで定義したフィールドをチョイスして表示させる事ができるモジュールです。
今回のサイトでは、PC用と携帯用とそれぞれ別々の記事一覧を生成させ、PC用・携帯用でそれぞれどちらを表示させるかをメニューやブロック、そしてテーマで切替えるようにしました。
今回、携帯用に使用したテーマはjp_mobileというテーマで、内部はUTF-8、入出力はS-JISに変換するという、日本の携帯電話事情に合わせた素晴らしいテーマです。
また、このテーマは、携帯キャリア毎に出力するヘッダをも変えてくれる機能まで備わっています。
そしてそして。PC・ケータイの振分けを行ってくれるモジュールはMobile Toolsモジュール。
こちらのモジュールで、どのテーマを適用するかの判定を行うのですが、ケータイでも今ではiPhoneやExperiaなどのスマートフォンが多くなってきて、その判定で困るかな?とも思ったのですが、それらもOS毎に判定を行い、どのテーマで出力させるかを細かく設定できるようになってます。
今回のサイトの制作をやってみて、Drupalでは、最初は無理か?なんて思った事もできてしまう柔軟さを再確認しました。
とにもかくにも、CCK・コンテンツテンプレート・Views。この三つのモジュールは必須中の必須です。
このモジュールがあれば、だいたいの事ができてしまうのがDrupalです。




