Drupalの最近のブログ記事

Drupal7で特に難しいとされるモジュール(及び学習価値のあるモジュール)は以下のとおりです。いずれも、ビデオなどで良く使い方を学習する必要がありそうなモジュールです。使いこなせると様々な事が可能になるので、学習を進めておきたいモジュールです。

Viewモジュール

既にDrupalでは必修モジュールと化しています。これないと、なーんにも出来ません。トップページの構成、ブロックの構成などに必修です。既にかなり使い勝手が向上してきていて、慣れればかなり凝った使い方が出来ます。

Suit Display

Viewモジュールと違ったアプローチから表示を行うモジュールです。Viewモジュールほど発展していないので、こちらはまだ発展余地がありそうです。現在の状況では、あまり使い勝手が良いとは言えません。Viewと同じく使いこなすのは慣れないと難しいモジュールです。

Context

私はViewのContext Filterの方を好んで使いますが、このContextでブロック表示などを代替する事が可能です。使い方はそれほど難しくないのですが、大型サイトになってくるとやや複雑に感じるかもしれません。

Panel

Suit Displayで代替出来るモジュールでもありますが、トップページなどを切り分ける時に威力を発揮します。使いこなすのはそれほど難しくありませんが、大型モジュールなだけに、小型サイトで使うのはためらわれるかもしれません。


非常に基本的な事なのですが、Colorboxを使えばどのようになるかメモするという事で、とりあえず動画を置いておきます。サイトによっては、javascript baseのcolorboxは使いやすいかもしれないなーなんて思ったりしています。

DrupalにおけるPHPの扱い

| トラックバック(0)
PHPの扱いは、ここに書いてあります。ビデオを見れば、理解が深まると思います。PHPの基本について、本当にわかり易く解説しているので、お勧め!英語圏の人だったら、1回見れば理解できてしまうかもしれませんね。日本人でも3、4回ほど見れば、PHPについて理解が深まると思います。functionまで解説しているので、初心者にもわかりやすい。

Advanced Theming in Drupal 7
http://www.lullabot.com/videos/advanced-theming-drupal-7

Functionの基本的な使い方については、普通のPHPと同じですが、parameterを使えるという事が書かれています。これをinput dataにすれば、どのようなデーターを入力しても処理出来るという内容です。

function my_function($a, $b) {
$c=$a +$b;
$a=$a +1;
return $c;
}

input data (example)
$a =3;
$b =5;

紹介されているのは、どれもシンプルなプログラムですけど、こういう基本的なところが大事に成ってくるのだろうなと思います。

-----------------------------------------------------------------------------
print $node->links['blog_usernames_blog']['href'];
       object   property(array)  key       key

blob/1

indivisual blog

-----------------------------------------------------------------------------
if/else

if ($a == $b) {
print "It's equal!";
}
elseif; ($a <$b) {
 print "It's smaller.";
}
else{ 
 print "who knows.";
}
-----------------------------------------------------------------------------

DrupalのField概念と設計図

| トラックバック(0)

Drupalを設計する時には、Fieldを何にするか、表示をどうするかという設定項目になります。基本的には、デフォルトのTitle,Bodyに加えて、何らかのメディア(例えばイメージなど)を入れていく事になるでしょう。

例えば、Fieldの設計はこのような形で想定します。

title 
Body
images
collection (body, image)
カテゴリ 

続いて表示部分の設計を行います。特にimageの表示、Teaserでいかに表示するかという部分にひと手間かかる事になります。トップのimageは、インパクトが必要になるので500px, それからcollectionのイメージは、350pxぐらいに設定しておけばどうでしょうかね。

上記のように実行すると、このようなフォームが出来上がります。最上部がBody、それから写真500pxが入ってくるフォームFieldで、その下にコレクションが続きます。これならば、初心者の人に投稿させても、簡単に投稿できるフォームになってくれるでしょう。このCollectionの写真は、画面でいくらでも追加出来るので、初心者にも簡単なはずです。

誰でも投稿できるようにするには

管理者であったり、自分の仲間が投稿するサイトとしては、これで完成でも大丈夫かと思います。しかし、誰か分からない参加者に投稿して貰うとなると、無制限に写真やページを追加させても良いのか?という問題であったり、レイアウトのよりいっそうの分かりやすさが求められます。また、文字のフォームにどのHTMLを許可するかという問題も結構大きな問題です。

少なくとも、広告がないので、この部分だけは、4travelの旅行記よりは少し見やすい感じがします。あとは、文字を大きくしたり、サイトの全体像を考える必要性が出てくる訳です。


コレクション

Drupalの第一段階テスト終了

| トラックバック(0)
Drupalのサイト郡を7.0系である程度完成できたので、第一段階のテストは終了したいと思います。実際にサーバーにあげてテストしていかないと、オフラインのテストとの違いが出てくる事があるので、1ヶ月1個ぐらいのペースでサイトを作ってきました。

次のサーバーを借りよう

試したサーバーは、ヘテムルですけど、使い勝手良かったです。以前にデーターを見事に吹き飛ばした会社という意外は、ヘテムルは価格に見合ったサービスを提供していると思います。これからも使い続けようと思います。ただ、たった42Gという制限つきなので、こんなの写真をガンガンアップロードしてたら、すぐに一杯になってしまいます。ヘテムルさんとは1ヶ所だけにして、どこか別の場所にまた借りよう。さて、もう少し容量が大きくてステップを押し上げるにはどのサーバーが良いのでしょうかね。

Drupal7の第二段階

Drupal7の第二段階では、いよいよモジュールの数をDrupal7で増やしまくってサイトを量産していきます。Drupal7のモジュールは、安定版が以前と比べてかなりリリースされていて、とても使い勝手が向上しています。まだ、Better Formatのように必修モジュールでも安定していないものもありますが、ある程度のサイトなら耐えられそうです。時間があれば、自分で簡単なモジュールを作ってもいいかもしれません。

Field Collectionとユーザー周辺

Field Collectionの使いまわしで、4Travelよりも使いやすいフォーマットが一瞬で完成します。それに加えていろいろやれば、かなり大規模サイトでも耐えられるかな?しかし、ユーザーのプロフィール周辺がまだ簡単に実装できる方法が思いつかない。このユーザープロフィールをどうするかは、Drupalの今後の課題のような気がします。

DrupalにおけるCollection概念

| トラックバック(0)
Drupalには、ブログから発展した幾つかの概念が存在しています。Drupalという媒体は、CMSで誰もが参加出来るコミュニティとなっているので、ある意味ではウェブ媒体の方向性を示すとも言えなくもありません。様々な概念やモジュールは、ウェブサイトのフレームを考える上で大変に有効です。

そのひとつがカテゴリーのようなTaxconomyであったり、Nodeとそれを分解したCCKモジュール、更に様々な情報をFieldから切り出して表示するViewモジュール、画面のレイアウトを分割するPanelモジュールだったりします。

Entity化するウェブサイト

Drupal7からは、概念「Entity」が導入されているので、全体で情報を統一して使おうという動きが強まってきています。これは、従来はFieldまで細かくなっていたものを更に細かく分割して再利用を可能にするものと考えても良いでしょう。そのひとつがタイトルにもしたCollection fieldであると考えています。Fieldの中にFieldが入ってくるので、なんて自由度が高いフォーマットだろうと思わずにはいられません。

働き方と似ている

最近は、フリーランスでやっている人も増えてきましたが、会社に属さない働き方として、会社には何らかのプロジェクトごとにコミットメントするという方法です。ウェブサイトもその方向性が強くなってきていると思います。情報を大量に保有して、それをいかに組み立てるかという事が重要になります。そうでなければ、保有する情報がどうしても断片的になって、相手の要求とずれてくるからです。

旅行を考えて見ましょう

旅行を考えてみるとしましょう。沖縄に旅行に行く人たちがいたとして、ある人は若者と恋人同士で参加、ある人は高齢者夫婦で参加、ある人はファミリーで参加とあれば、目的は自然と異なります。恋人同士で参加すれば、プールや海に行って水着で泳ぎたくなるでしょうが、ファミリーはホテルに滞在したいかもしれないし、高齢者夫婦は沖縄の文化に興味があるかもしれない。しかも、年齢によって「こうだ」と決め付ける事も出来なくて、それぞれの人が異なった嗜好を持っている。

満足度を最大にするサイト

あるバーに行った時に、そっとしておいて欲しいのにバーテンダーが寄ってきて話しかけて「何か作りましょうか」と言ってきた。サービスとしては素晴らしいけど、こちらは女性と大切なお話中に話しかけられては困ります。こういったのも人の好みであり、こうだという決まりはありません。
昔のサイトこそ専門的

以前のサイトというのは、何かに関する専門的なサイトというのが多かったのですが、最近のサイトは「総合型」が増えてきているように思います。それは、既に専門サイトでは他のサイトとの差別化が難しくなってきた為です。ある事についての専門的な分野は、見る人もそれなりに少ないのです。そこで、専門的なサイトから総合サイトになっていきます。

総合サイトのコンテンツ立て方

総合サイトというのは、以前はカテゴリで分けていたのですが、カテゴリで分ける事が難しくなってきました。そこで、カテゴリからタグ式で分けるサイトが増えてきました。最近では、コンテンツをどんな立て方をしても分けるという概念を廃止して、適当にコンテンツを立てていく「量産型」が増えてきました。そうしないと、(1)コンテンツの乱立の中で戦えなくなったという事と、(2)量産したコンテンツからFacebookやTwitterの個人と繋がるツールが発達したという2通りの理由からです。
DrupalのモジュールField Collectionを入れてみました。これは、Nodeの中にAdd New Fieldボタンを付けて、別のFieldを追加するというものです。言葉では非常に分かりづらいですが、要はユーザーが追加ボタンを押して、「新しいNodeごと追加出来る」と考えた方が良いでしょう。つまりは、NodeをNodeの中に埋め込むというものです。

それを画面上で編集できるところまで自由度が高くなっています。

Field Collection
http://drupal.org/project/field_collection

このField Collectionには、Field Collection Tableが付いていて、右側に解説を入れて、左側に写真を入れるような事も行う事が出来ます。Tableは自由に設定が利くところまで至ってはいませんが、やり方次第でどうにでもなるでしょう。

情報を相当な量とスピードで投入する際に向いています。

Field Collection Table
http://drupal.org/project/field_collection_table

試しにこのField Collectionを使ってサイトを1つ作ってみようと思います。旅行記サイトなどに向いているかもしれません。

Field Collection in Drupal 7

Drupal7のインストール

Drupal7をインストールする所までは、比較的簡単に行うことが出来ます。問題はインストールの後からで、インストールしただけでは、ブログとして使うとしても様々な操作が必要になります。先ず、Drupal7の大まかな概念のうちで、最も重要なNode, Field部分を確実に押さえておいて、画像挿入の処理を行います。

Drupalにおける画像挿入

画像挿入は、目的によって様々な挿入の仕方が考えられます。例えば、画像だけ挿入、そのまま挿入、大きさを調整して挿入などがあります。私の場合には、InsertとImage resize filterを想定しますが、これには以下の問題が生じます。(1)ユーザー側の写真挿入場所の問題(2)Google Chromeで大きさを調整出来ない問題。いずれも、Mixiのように写真だけ記事前に挿入型にすれば解決は可能です。

テーマの選定

実際にサイトを作るとなると、自分でゼロからテーマを開発するのはかなり時間がかかります。オープンソースCMSの特徴でもある他の場所からテーマを貰ってくるか、買ってくるのが一番です。Drupal7は、この記事を書いている段階ではまだThemeがそれほど多く出ている訳ではありません。それだけに気に入ったテーマを見つけるのは至難の業と言えるでしょう。ある程度テーマに合わせて自分の企画を変更する柔軟さも必要になるかもしれません。

wysiwygモジュール

そうだ、これを忘れてはいけません。Wysiwygモジュールと、好きなWysiwygを入れておけば、簡単にユーザー側でワープロのような操作を実現出来るというものです。実に様々なエディターから選択出来るようになっているので、シンプルそうなものを選んで使えるようにしておけば便利です。少なくとも、全く無いよりは有った方が確実に良いと言えるでしょう。
Drupal7の全体的な構造が見えてきました。

重要な場所としては、最初にメニューのStracture構造、そして画像管理の構造、CCK系の構造までを把握出来ました。最終的にViewの構造を把握出来れば、Drupalを使いこなすには完璧かな?と思います。初めてから結構な時間がかかりましたが、Drupal7でサイトを展開出来そうで何よりです。Drupal7が出たのが1月で、それから数ヶ月を経てようやくまともに使えるようになりました。

InsertとImage Resize Filterの習得

Drupal7において、insert, Image Resize Filterを習得しました。これだけやるのには、Drupal6だとかなり複雑な作業が必要になりますし、Drupal7だと簡単とは言っても、様々なトラブルが出てきて実際はかなり面倒です。これは、インストールなどは非常に簡単だと思いますが、Wordpressのように初心者向けとは言い難いと思いました。しかし、将来性を考えるとWordpressよりもいいかな。また、最初のコアファイルの大きさから言っても5Mほどで、Joomlaの4分の1ぐらいしかないので、カスタマイズ性がいかに高く設計されているかが分かります。良くこんな大きなソフトのプロジェクトを動かして前に進むよな・・・・と思います。

次なるチャレンジは、Viewを使ってのUser Listの取得です。

Drupal7におけるユーザーリストの取得は、ここに書いてあったりするのですけど、ユーザーリストのページを形成してしまう事が出来るというのですね。これは、会員制のサイトにあれば便利ですね。また、自分が過去に投稿したコンテンツもページで見れたりしたら便利でしょうね。これからは、そういったViewによる「ページ生成」の部分を中心に学習を進めていけたらと思います。
http://www.metaltoad.com/blog/how-improve-default-user-list-using-views-drupal7

スポンサードリンク




カテゴリ

スポンサードリンク




このアーカイブについて

このページには、過去に書かれたブログ記事のうちDrupalカテゴリに属しているものが含まれています。

前のカテゴリはCMSも検証です。

次のカテゴリはIT会社の分析です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

最近のブログ記事

アイテム

  • NAVERまとめ
  • プライベートメッセージ
  • seesaaNAVERまとめ
  • 食べログ
  • コレクション
  • サービス比較
  • mixi
  • NAVERまとめ
  • DeNA
  • まとめブログ
  • wordpress.jpg
  • NAVERまとめエラー
  • nanapi
  • 広告
  • NAVERまとめ
  • twitter
  • NAVERまとめバグ

最近のコメント