Webform

ウミメンバーが選ぶ個人的に好きなDrupalモジュール BEST3!

こんにちは、ウミの森山です。

実は先日、ウミで働いているメンバーたちに「個人的に好きなDrupalモジュール BEST3」についてアンケートをとってみました。日々Drupalに親しみDrupalと格闘している(?)ドゥルーパリストたちが選ぶモジュールは一体どんなものなのか興味が湧きませんか?(私だけだったらすみません..)本日はそのアンケート結果をご紹介してみたいと思います。

今回は、各モジュールの簡単なご説明の他、選出理由を書いたコメントも一緒にご紹介しています。「Drupal開発会社のおすすめモジュールを聞いてみたい」という方や「どんなモジュールがあるのかサラッと情報を仕入れておきたい」という方に、メンバーの生の声とともにお楽しみいただければ幸いです。

※今回の記事はあくまでウミメンバーの個人的な感想を紹介している記事となります。一般的に人気のあるモジュールについては、大野が以前にご紹介した「Drupal 8 定番モジュールランキング トップ20【2017年9月更新】」をご参照いただければと思います。

それでは早速いってみましょう!

第1位: Viewsモジュール

堂々の第1位は「Views」です! この結果は薄々予想されていた方も多いのではないでしょうか?

Viewsモジュールは、Webサイトでよく見かける「新着情報」や「ニュース」の表示にも欠かせないDrupalの定番モジュール。データベースからコンテンツを取り出して、リスト表示やテーブル表示、一覧ページやブロックの作成などなど、ここに書ききれないくらい様々なことを、なんとGUI操作だけで行なうことができてしまうスーパーモジュールです。そういえば私が入社して初めて覚えたモジュールもViewsでした。

Drupal7ではコントリビュートモジュールという位置づけでしたが、Drupal8からはコアモジュールに仲間入りを果たしたことからも、そのお役立ち度が伺えますね。

Viewsモジュールを選んだメンバーの声を以下にご紹介しておきます。

  • 「ありとあらゆるコンテンツを管理画面上から、好きなフォーマットで、ダイナミックに表示できるから。」 
  • 「設定のみで、ページや画面の埋め込むブロックを簡単に作成出来る」
  • 「お知らせやブログなど配信するコンテンツに非常に便利なよろず屋って感じです。」
  • 「こんなことまでできるのかといつも驚かされる万能選手。ビューズなしにDrupalは語れない超絶便利なモジュール。」

第2位: Develモジュール

そして注目の第2位は、「Devel」モジュールでした!私自身はあまり触れる機会の少ないモジュールですが、開発者用に様々なデバッグ用の機能を提供してくれるモジュールで、エンジニアの皆さんにとっては必要不可欠な存在のモジュールだそうです。

Develモジュールを選んだメンバーの声はこちら。

  • 「デバッグ用モジュール!これがないとやっていけないと思います。。」 
  • 「カスタムモジュール開発時にデバッグ機能を提供してくれるので、困った時にデバッグして効率的に開発をすすめられるので」 

どのコメントもエンジニアさんのコメントですが、一つめのコメントは特にその依存度が伺えますね!文末の「。。」にはどのような想いが込められているのでしょうか(笑)

第3位

第3位は得票数が割れる結果となりましたので、以下にモジュールについての簡単な説明と選んだメンバーのコメントとともに順にご紹介しておきます。

Webformモジュール

Webformモジュールは、Drupalでフォームとアンケートを作成するためのモジュールです。ユーザーがフォームに入力した結果を任意のメールアドレス宛に通知することができ、Excelまたは他のスプレッドシート等に結果をエクスポートすることも可能です。また、簡単な統計レビューを提供することもでき、機能を拡張するための広範なAPIも備えています。

  • 「完成度が高く、他のCMSでもこれほどの機能を持ったお問い合わせフォームは見たことがない」

Paragraphsモジュール

Paragraphsモジュールはコンテンツ作成のための新しいソリューションを提供するモジュールです。 パラグラフモジュールを利用することで、予め定義した独立した段落タイプを用意・選択いただけるようになるため、WYSIWYGのボディフィールドに画像や動画を含むすべてのコンテンツを突っ込むということはなくなり、更新担当者さんにとってより分かりやすく使いやすい管理画面を提供することができます。段落タイプは、単純なテキストブロックや画像から、複雑なスライドショーまで、様々な要素を扱うことができます。

  • 「フィールドとエンティティを紐付けることができてデータ構造の可能性が特段に高まったから。上手く利用すると、HTMLがわからなくても見栄えを保った素敵な管理画面を作れるから」

REST UIモジュール

REST UIモジュールは、GUIよりREST APIの設定を行うためのモジュールです。 弊社小林が「RESTful Web Services と REST UIで始めるDrupal8 REST API入門」というブログを書いていますので、こちらもよろしければご参照ください。

  • 「管理画面上からRESTの設定ができて便利です。」

Videoモジュール

ビデオモジュールは、任意の形式で動画をアップロードし再生することができるモジュールです。動画のサムネイルを自動作成したり、Amazon S3のようなクラウドファイルシステムからビデオをコピーして配信することもできます。

  • 「動画埋め込みを勝手にやってくれるので、、」

Metatagモジュール

メタタグモジュールは、SEO(検索エンジン最適化)に有効とされる「メタタグ」を管理画面から簡単に設定できるようにするためのモジュールです。ソーシャルネットワーク上で共有するときのコンテンツの表示方法を制御できるメタタグ(FacebookのOpen Graph Protocol、TwitterのTwitter Cards)もサポートしています。

  • 「簡単に各ページにmetaタグを設定でき、SEOを気にされているお客様に喜んでいただけるので」

Blockモジュール

ブロックとは、ウェブページの特定の領域にレンダリングされるコンテンツのボックスのことで、それらブロックを制御するためのモジュールです。Drupalサイトを構築する時には必要不可欠な存在ですのでコアモジュールとしてDrupal本体に組み込まれています。

  • 「配置したいコンテンツや表示先のページを自由に選択でき、非常に使い勝手が良い。」

Taxonomyモジュール

こちらもコアモジュールです。キーワードをカテゴリやタグ、あるいはメタデータとして使用し、コンテンツ同士を関連付けたり、分類することができます。Drupalでは、これらの用語(Terms)は「ボキャブラリー」内に集められており、Taxonomyモジュールでは、それらのボキャブラリーを作成、管理、適用することができます。

  • 「簡単にカテゴリやタグなどが設定できて、検索やお知らせなどの利用に非常に便利。お客様側で簡単に設定いただけるのも良い。」

Multiupload Filefield WidgetモジュールMultiupload Imagefield Widgetモジュール

Drupal7用のモジュールで、画像(またはファイル)をアップロードするときに複数画像を一度にまとめて選択できる複数選択機能を提供するためのモジュールです。ちなみにDrupal8ではこの機能がコアに取り込まれたので標準で複数のファイルがアップロードできるようになっています。

  • 「何気に便利でよく使ってました。地味だけど、Drupal7サイトを更新する際にこのモジュールが入ってないと、不便でがっかりしてしまう。」

Konami Codeモジュール

多くのコナミのゲームに登場するチートコード「コナミコマンド」をDrupalサイトに設定することのできるモジュールです!ユーザーがWebサイト上で特定のコードを入力すると、画面からDrupaliconが降ってきたり(!)Webサイトが崩れ始めたり(笑)などおもしろいアクションを呼び起こすことができる遊び心溢れるモジュールです。残念ながらDrupal8には対応していないようです。

  • 「おもしろい。実際のプロジェクトで使うことは多分一生ないだろうけど、こっそり使ってみたくなります(笑)。(お客様のサイトにこっそり仕込むようなことは決してございませんのでご安心ください。)」

最後に

以上です。コアモジュールもコントリビュートモジュールも含めた様々な回答が上がりましたがいかがでしたでしょうか?約26,000ものモジュールがあるといわれるDrupalだけに、私たちのような小さなチームでも非常にバラエティーに富んだ回答結果となりました。

今回はウミメンバーから見た人気モジュールをご紹介いたしましたが、今後も開発者目線とはまた違った角度からDrupalについてご紹介していければと思います。

コメントを追加

プレーンテキスト

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。

Drupal 8 定番モジュールランキング トップ20【2017年9月更新】

こんにちは、スタジオ・ウミの大野です。

今回は drupal.org のダウンロードページのモジュールセクションにある、Drupal 8 でのサイト利用数が上位20以内の定番と言えるモジュールを簡単に紹介します。

1位: Token

  • 利用サイト数: 65,089サイト
  • バージョン: 8.x-1.0

Token モジュール利用時の例

Drupal 上に設定されたフィールドに対して、特定のキーワード(トークン)を設定しておくことで、閲覧中のページなどの現在の状況に応じたテキストを自動入力することができるモジュールです。

例えば、フィールドのデフォルト値として [site:url] と入力しておくことで、そのフィールドが利用されるフォームを開くと現在のサイトのURLが自動的に入力されます。

基本的には他のモジュールから利用する事が多く、単体で使う機会はあまりないかもしれません。

2位: Chaos tool suite (ctools)

  • 利用サイト数: 61,629サイト
  • バージョン: 8.x-3.0

Chaos tool suite はモジュール開発者向けの便利な機能を提供するモジュールです。単体で利用することはありません。他のモジュールの依存モジュールとして設定されることが多いため、上位に入っています。

3位: Pathauto

  • 利用サイト数: 52,580サイト
  • バージョン: 8.x-1.0

Pathauto の URL 表示例

ノードやタクソノミーターム、ユーザーのURLを Token を使って自動的に生成する機能を提供します。

例えばノードのURLはデフォルトは node/123 のようなURLですが、news/[node:nid] と設定しておくことで、コンテンツを作成した際に news/123 と言ったURLでアクセスすることができるURLのエイリアスを生成してくれます。

Drupal 7 版の記事ですが、自動的にURLを生成できる Pathauto モジュールと言うブログを書いています。Drupal 8 版では UI や仕様が大きく変わっているので、あまり参考にはなりませんが、雰囲気はわかるかもしれませんので、よろしければご覧ください。

4位: Admin Toolbar

  • 利用サイト数: 50,880サイト
  • バージョン: 8.x-1.19

Admin Toolbarの動作イメージ

Drupal コアの Toolbar を置き換える形で利用する、管理者の運用に更にフォーカスしたツールバーです。通常の Toolbar と比べ、プルダウンでメニューにアクセスすることができるようになり、キャッシュのクリアなどのアクションもメニューから素早く行うことが可能です。

5位: Metatag

  • 利用サイト数: 33,995サイト
  • バージョン: 8.x-1.2

Metatag モジュールの設定画面例

名前の通り、管理画面上から様々なメタタグを設定する機能を提供するモジュールです。OGPなどの特殊なメタタグもこのモジュールと Token モジュールを組み合わせることで簡単に設定することができます。

6位: Entity Reference Revisions

  • 利用サイト数: 29,579サイト
  • バージョン: 8.x-1.3

エンティティ参照型のフィールドを、リビジョン機能に対応させることができるモジュールです。9位で紹介する Paragraphs モジュールや Field collecion モジュールを利用する場合に便利です。

7位: Devel

  • 利用サイト数: 27,098サイト
  • バージョン: 8.x-1.0

開発者用に様々なデバッグ用の機能を提供するモジュールです。カスタムモジュールやテーマを開発する場合には必須のモジュールです。

Drupal 7 版の記事ですが、Drupal 開発に便利なツールを提供する Devel モジュールというブログを書いていますので、ご覧ください。

8位: Field Group

Filed Group モジュールの利用イメージ

  • 利用サイト数: 27,634サイト
  • バージョン: 8.x-1.0-rc6

ノードなどのエンティティに設定するフィールドをグループ分けし、開閉可能なようにしたり単純にフィールドセットにしたり構造的にもビジュアル的に分けることができるモジュールです。入力フォーム、表示画面と個別に設定することが可能です。

9位: Paragraphs

Paragraphs のイメージ

  • 利用サイト数: 25,478サイト
  • バージョン: 8.x-1.1

コンテンツを今までのアプローチとは違った方法で組み立てていくことができるモジュールです。管理画面からブロック単位で要素を一つ一つ追加していくことができます。比較的新しいモジュールですが、海外での利用数が多く急激に人気が出たモジュールです。パラグラフのフィールドは予め別のエンティティとして構築したりする必要があるため、Drupal 初心者の方には少し敷居が高いかもしれません。

10位: Entity API

  • 利用サイト数: 24,511サイト
  • バージョン: 8.x-1.0-alpha4

Drupal 7 の頃に、エンティティの取り扱いをもっと簡単にするためのAPIを提供するモジュールとして誕生しました。Drupal 8 ではその殆どの機能がコアで実装されましたが、Drupal 8 版の Entity モジュールではエンティティAPI改良のために開発が続けられています。

APIの提供しかありませんので単体では動作しません。モジュール開発者が利用する上級者向きのモジュールです。

Drupal 7 版の記事ですが、Drupal 7 の Entity Metadata Wrapper の基本的な使い方と言うブログを書いております。

11位: Google Analytics

  • 利用サイト数: 23,967サイト
  • バージョン: 8.x-2.1

Google Analytics モジュールの管理画面

Drupal 上に Google Analytics のトラッキングコードを埋め込むことができるモジュールです。基本的にはIDを管理画面から設定するだけで利用できますが、ユーザーのロールに応じてトラッキング対象を絞ったりすることも可能で、様々な設定が管理画面上で行なえます。

12位: Video Embed Field

  • 利用サイト数: 23,030サイト
  • バージョン: 8.x-1.5

Video Embed Field の動作イメージ

動画埋め込み用のフィールドを追加するためのモジュールです。YouTube や Vimeo などの大手の動画配信サイトには殆ど対応しています。

13位: Configuration Update Manager

  • 利用サイト数: 19,176サイト
  • バージョン: 8.x-1.3

コアの設定の同期機能にレポート表示機能を追加してより管理しやすくするモジュールです。設定の差分確認や個別エクスポートをより簡単に行うことが可能になります。

14位: Webform

  • 利用サイト数: 19,286サイト
  • バージョン: 8.x-5.0-beta16

Webform ページのサンプル

Drupal のモジュール中でも Drupal を使う理由の一つにもなるほどの利便性・柔軟性を兼ね備えた、有償・無償のCMS全て含めても最強のお問い合わせフォームです。お問合わせの項目の設定や、集計、エクスポートなど様々なことが管理画面で完結します。弊社の山中が書いた、Webform 8.x-5.x の新機能を 9 つピックアップして紹介と言う記事で、Webformの機能を解説していますので、ご覧ください。

15位: Inline Entity Form

  • 利用サイト数: 19,559サイト
  • バージョン: 8.x-1.0-beta1

Inline Entity Form の編集画面サンプル

ノード(エンティティ)の編集フォームで、エンティティ参照フィルードのエンティティを作成・編集することができるモジュールです。

16位: Entity Browser

  • 利用サイト数: 17,747サイト
  • バージョン: 8.x-1.1

Entity browser のロゴ

エンティティ参照フィールドなどでエンティティを参照するためのブラウザ機能を提供するモジュールです。通常は Inline Entity Form と組み合わせて利用します。

17位: Redirect

  • 利用サイト数: 18,691サイト
  • バージョン: 8.x-1.0-beta1

特定のパスにアクセスしてきたユーザーをリダイレクトすることができるモジュールです。ウェブサイトをリニューアルした際に適切なページへリダイレクトしたい時に役立ちます。

18位: Media entity

  • 利用サイト数: 16,792サイト
  • バージョン: 8.x-1.6

画像やオーディオ、スライドショーなどをエンティティとして取り扱うことができるようにするためのモジュールです。スライドショーなどを実装する際に、ノードで作ってしまうと不要な詳細画面ができてしまいますが、メディアは個別にアクセス権限がセットすることができます。なお、このモジュールは Drupal 8.4 からコアに取り込まれる予定です。

19位: Search API

  • 利用サイト数: 15,509サイト
  • バージョン: 8.x-1.3

Search API

様々なエンティティを検索できるようにし、検索をカスタマイズするためのAPIを提供するモジュールです。

20位: Embed

  • 利用サイト数: 15,258サイト
  • バージョン: 8.x-1.0

Drupal コアで提供される CKEditor に、エンティティなどを埋め込む機能・ボタンを追加します。このモジュールはAPIの提供だけですので、利用するには Entity Embed モジュールなどが必要です。


いかがでしたでしょうか。駆け足で20個のモジュールを紹介しました。人気のあるモジュールはこのUmiブログでも今後掘り下げて紹介して行く予定です!

Drupal 7 のランキングに比べると Views や Date などの定番モジュールがランキングから居なくなっていますが、それらは全て Drupal の標準モジュールとして搭載されています。Drupal はバージョンアップを重ねる毎に、メジャーで安定したモジュールを本体に取り込んでいくことも特徴の一つですね。

コメントを追加

プレーンテキスト

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。

Webform 8.x-5.x の新機能を 9 つピックアップして紹介

こんにちは。プログラマの山中です。 今回は Drupal 8 版の Webform の気になる新機能を独断でピックアップして紹介する記事となります。

Drupal 7 の Webform 7.x-4.x に比べて Webform 8.x-5.x は機能が増え、できることがたくさん増えました。 機能が多すぎて Drupal の中で もうひとつ別の CMS を操作しているような感覚になるほどです。早速ご紹介していきましょう。

なお、 Drupal 7 版の Webform では 「フィールド(Field)」と呼んでいた要素が「エレメント(Element)」の一部の要素になっていますので、この記事でもそれに合わせて「エレメント」と呼んでいくことにします。

1. Webform という「エンティティ」

Webform 自体がエンティティ化されました。これにより、Node から完全に切り離されて別物として管理することができるようになりました。 なお、 Webform モジュールに同梱されている Webform Node モジュールを有効化すれば、これまで通り Node でも Webform を使用することができます。

2. ライブラリ・アドオン

ライブラリは Webform の UI を良くするための JavaScript のライブラリのことを指します。デフォルトの状態では外部の CDN で配信されている各ライブラリを読み込みに行っているのですが、自分の Drupal のライブラリのディレクトリに入れておくことがおすすめされているのでライブラリはダウンロードしておきましょう。 drush コマンドがセットアップされた環境で、ターミナルなどで drush webform-libraries-download コマンドを打てば Webform モジュールに入っている webform.libraries.make.yml の中身を読み込んで自動的にインストールしてくれます。

アドオンは Webform をより便利にしたり(Token や Clientside Validation等)、スパム対策をしたりする(Honeypot や CAPTCHA等)ようなモジュールやツール(CLI ツールなど)などの総称で、 Webform の機能の拡張パックといったところでしょうか。こちらは自分の手で選択して導入していく必要があります。

ちなみに、もともと Drupal 7 でも Webform を便利にするために拡張するモジュールはいくつか存在していましたが、Webform 8.x-5.x ではなんと、ご丁寧に管理画面上にアドオン一覧ページを用意してくれています。

アドオン一覧ページは下記にあります。

サイト構築 » ウェブフォーム » アドオン
パス: admin/structure/webform/addons

Webform の アドオン一覧画面

参考リンク:

エレメント関連

3. エレメントの設定の YML 化

Webform UI モジュールをインストールすれば従来の Webform と同じように管理画面上の GUI を使ってエレメントの作成・編集ができるのですが、 Webform 8.x-5.x では YML 形式でエレメントの情報が保存され、 また、 YML 形式でエレメントを作成・編集することができるようになりました。 もともと YML form で実装されていた機能ですが、ある時期に Webform 8.x-5.x に吸収合併のように取り込まれた機能です。(現在 YML form のページ では Webform を使用するようにと促してる)

Webform の YML の画面

テキストデータなのでコピーして別の Webform にペーストしてエレメントの移行をしたり、 エレメント全体をテキストファイルに保存してバックアップにする、なども気軽に行うことができちゃいますね。 YML はモジュールやテーマの設定ファイルやルーティング用のファイルにも使われてますので、エンジニアもとっつきやすいんじゃないでしょうか?

4. Form API が使える

YML 設定フォームで設定できる項目は Drupal の Form API の項目をそのまま使用できるようになりました。 Form API はモジュール内の PHP コードでフォームを作成するときに使用する API です。

参考リンク:

書き方は簡単で、PHP 上での書き方と比べると下記のような形になります。

Webform で Form API を使った PHP サンプル

<?php
$form['title'] = array(
  '#type' => 'textfield', 
  '#title' => t('Name'), 
  '#default_value' => $user->name, 
  '#size' => 60, 
  '#maxlength' => 128, 
  '#required' => TRUE,
);

Webform で Form API を使った YML サンプル

name:
  '#type': textfield
  '#title': 'Name'
  '#default_value': '[current-user:account-name]'
  '#size': '60'
  '#maxlength': '128'
  '#required': true

5. エレメントの種類

これまでの Webform で使用できたフィールドに加えて、たくさんのエレメントが使用できるようになりました。 今回追加され、デフォルトで使用可能なエレメントは HTML5 のフォーム要素(Email、日付、時間等)、色、エンティティリファレンス、住所(デフォルトは海外仕様)、星によるレート、 Flexbox レイアウト(コンテナなどの一種)、 リッカート尺度(非常に同意できる、どちらかと言えば同意できる、どちらともいえない、どちらかと言えば同意できない、まったく同意できない...の選択肢から選ぶ、心理的な調査のあれです) ...など Webform をいろんな用途に使用できそうなエレメントがたくさん増えました。

すべてのエレメントを確認したい場合は実際に Webform モジュールをさわってみるか、下記 Web ページをご参照ください。

参考リンク:

6. 管理画面上から JavaScript/CSS が設定できる

各 Webform ごとに JavaScript や CSS を設定することができます。 テーマファイルはさわらずに、自分の手である程度のスタイル調整はしたいという要望があればこれで安心ですね。

Webform の CSS と JS 編集画面

7. 個別にアクセス制限がかけられる

Webform ごとにアクセス制限がかけられるだけでも驚きなんですが、エレメントごとにアクセス制限を書けることもできます。 それぞれ役割ごとに権限設定できるのはもちろんのこと、ユーザーごとに設定することも可能です。

Webform の 各エレメントのアクセス権限設定画面

8. 選択リスト・チェックボックス・ラジオボタンなどのデータのテンプレート

選択リスト(セレクトボックス)・チェックボックス・ラジオボタンなどの複数の項目から選択するタイプのエレメントのデータは、性別や都道府県のような決まったものを使用することがありますよね。 この決まったデータをテンプレートとして使用したり、作成・保存したりすることができます。

Webform 7.x-4.x にもこっそり(?)テンプレートの機能はありましたが、管理画面上からテンプレートの作成が作成できなくて、テンプレートを追加するにはカスタムモジュールを作る必要がありました。 Webform 8.x-5.x からは管理画面上からテンプレートが作成できますのでとても使いやすくなりました。

このテンプレートの確認・作成については下記のページから行えます。

サイト構築 » ウェブフォーム » 設定 » オプション
パス: admin/structure/webform/settings/options/manage

Webform の Option のテンプレート設定画面

なお、デフォルトで曜日、国名、性別、Yes/No、言語、タイムゾーン、雇用形態...などなど全部で30個ほどのテンプレートが用意されています。

9. テスト機能

Webform のテスト画面

Webform の送信・受信後の確認などのテスト用に Webform の投稿データを自動生成してくれます。 Webform のページを開いて、「テスト」タブをクリックすると入力フォームに適当な値が入力された状態の Webform を読み込みます。

ここで入力される値はエレメントごとに決まっているのですが、 この値は Webform 全般の設定ページの 「TEST の設定」 で編集することができます。

サイト構築 » ウェブフォーム » 設定 » オプション
パス: admin/structure/webform/settings

テスト用のテンプレートを設定する画面

おわりに

いかがでしたでしょうか?この他にも「Webform が書き込み途中でユーザーがページを離れるときにポップアップで『このページを離れても良いのか?』と警告するオプション」が付けられたり、E-mail 送信設定が更に便利になっていたり(CC や BCC を UI で選択できるようになってます) 、細かい部分でも新しい機能が付け加えられています。 2017年7月現在、まだ Beta 版ではありますが Drupal 7 時代の Webform に比べより使いやすくなっていますので、(バグなどに注意しつつも)ぜひ使ってみてください。

コメント

わかりやすい記事ありがとうございます。
8. 選択リスト・チェックボックス・ラジオボタンなどのデータのテンプレート

パス: admin/structure/webform/settings/options/manage
ですが、現在はpathが換わっているようでした。
admin/structure/webform/config/options/manage
ありがとうございます。

コメントを追加

プレーンテキスト

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。

Drupal 7 の定番人気モジュールトップ 20

アイキャッチ画像 Umi->d

本日は「 Drupal 7 の定番人気モジュールトップ 20」と題しまして、 Drupal 7 (ドルーパル7)で世界的に最もよく使われている定番モジュールのご紹介ができればと思います。

Drupal モジュール プロジェクトページ

はじめに

本題に入る前に、イメージしている読者層と Drupal の基本的な概念を押さえておきたいと思います。

対象読者

本記事の対象読者は「 Drupal の利用をはじめて間もない方」です。 現役の Drupal のテーマ作成者や開発者の方にはすでに知っている情報がほとんどになってしまうかと思います。

Drupal の 2 つの概念ーー「テーマ」と「モジュール」

Drupal は豊富な基本機能を備えた CMS ですが、ビジネス目的で使う場合には何らかの「拡張」を行って使うスタイルが基本です。

Drupal で「拡張」というときに、方法は大きく 2 つあります。 ひとつが「テーマ」( theme )、もうひとつが「モジュール」( module )と呼ばれるものです。 テーマというのは、サイトのデザイン面、見た目の部分を扱うもので、主に HTML のテンプレート、 CSS 、ロゴやファビコンなどを切り替えるのに使うものです。 モジュールというのは、サイトの機能面、動作の部分を扱うもので、 Drupal に新たな機能を追加したり特定の処理をはさみこんだりするために使います。

テーマもモジュールも、大きく次の 3 つに分類することができます。

  1. コア
  2. コントリビュート
  3. カスタム

1 のコアというのは Drupal 本体に同梱される形で配布されている標準添付のもの、 2 のコントリビュートは世界の Drupal コミュニティによって開発され無償で配布されているものです。 3 のカスタムというのは各制作会社 / 開発会社が独自に作るもののことです。 ちなみに 2 番目のコントリビュートモジュールは寄与モジュールと呼ばれたりもします。

このあたりの説明はカスタムモジュール作成入門のページにも書いていますので興味のある方はそちらもご覧になってみてください。

・・・ではここからが本題です。

Drupal の定番の人気モジュールについて

ということでモジュールは「コア」「コントリビュート」「カスタム」の 3 タイプに分けられるのですが、「人気」というときに対象となるのは 2 つめの「コントリビュートモジュール」です。 コアモジュールは選ぶ選ばないにかかわらず Drupal のコアに同梱されてきますし、カスタムモジュールの方は一般に配布されるものではありません。 ですので、人気をはかる際に対象となるのは自然コントリビュートモジュールだけとなります。

本当にトップの人気コントリビュートモジュールとなると世界中のサイトで数万、数十万サイトという単位で広く使われています。

定番人気モジュールのチェック方法

Drupal の定番人気のモジュールがどれなのかというのは実は Drupal.org の Module project というページを見れば誰でも確認することができます。

対応している Drupal のバージョンやモジュールのカテゴリーによって絞り込みを行うこともできますので、ここをチェックするだけで、どういうモジュールがあるのか、どういうモジュールが人気を得ているのか、どういうモジュールが最近リリースされたのかといった情報をチェックすることができます。

たとえば、最もたくさんインストールされている Drupal 7 対応のモジュール最近新たなリリースのあった Drupal 7 対応のモジュールといった切り口でチェックできますので興味のある方はぜひ実際のページをのぞいてみてください。

定番人気モジュールトップ 20

ここからは、 Drupal の定番人気となっているモジュールを上から順に 20 個ご紹介できればと思います。

ご紹介するのは、記事執筆時点( 2014 年 09 月)における「インストールされているサイトの数」が多い順から 20 個です。 見る時期が変わるとランキングも少し変わってくるかと思います。

全体的に長いので、ひとつひとつの説明は短めに、なるべくわかりやすく、ということを心がけてみました。 1 番目から順番にどうぞ。

1. Views

Views モジュールは端的に言うと「一覧ページ」「一覧パーツ」を作るためのモジュールです。

コンテンツやユーザー、タグなどを任意の基準で絞り込み、任意の順序で、任意の項目を表示する機能を備えたモジュールです。 たとえば、一般的な企業ホームページではトップに「お知らせ」や「ブログ」などが一覧で表示されたりしますが、 Views はそのようなパーツを管理画面からかんたんに作れる機能を提供します。

Views は長年 Drupal を代表するたいへん人気の高いモジュールで、 Drupal 8 ではコアモジュール化され Drupal 本体に同梱される形になります。

2. Chaos tool suite (ctools)

Chaos tool suite 通称 ctools モジュールは多くの便利機能をパッケージとして詰め込んだモジュールです。 開発者向けの数多くの API を提供してくれます。

ctools 単体で何かをするということはありませんが、数多くのモジュールが ctools を利用しているため結果として数多くのサイトでインストールされているモジュールです。

3. Token

Token モジュールは他のテキストに変換されるキーワード群を提供するモジュールです。

キーワードにはさまざまなものがあり、たとえば、 %site-name でそのサイトのサイト名を、%user-name で対象となるユーザのユーザ ID をといった形でさまざまなテキストを利用することができます。 管理画面上からプログラミングにおける「変数」が使えるようなイメージです。

4. Pathauto

Pathauto モジュールは コンテンツやユーザの内容から URL (パス)を自動生成するためのモジュールです。

Drupal にはコンテンツ( Drupal 用語でいうと「ノード」)などの URL を自由に設定できる Path というコアモジュールがあります。 Pathauto はその名のとおり( Path + Auto ) Path による URL 設定を自動化してくれるというものです。 Token モジュールが提供するキーワード(トークン)を使うこともできます。

5. Libraries API

Libraries API モジュールは外部ライブラリを取り扱うための開発者向けモジュールです。

Ckeditor などの外部ツールを Drupal に取り込むのに便利な API を提供してくれます。 こちらもこのモジュール単体で何かに使うというよりは、他のモジュールで利用できる汎用機能を提供するためのモジュールです。

6. Administration menu

Administration menu モジュールはデフォルトとは異なる管理者用メニューを提供するモジュールです。

Drupal にはデフォルトの管理画面もありますが、こちらはそれとは構成や見た目の異なる半透明の管理者メニューを提供してくれます。

7. Entity API

Entity API モジュールはコンテンツやユーザーのデータのプログラム上での取り扱いをかんたんにしてくれる開発者向けモジュールです。

Drupal にはエンティティ( entity )という、一言では説明の難しい Drupal ならではのすばらしいコンセプトがあるのですが、このモジュールを使えばそのエンティティがよりかんたん・便利に扱えるようになります。 開発者向けなので、こちらも単体で使うというよりは他のモジュールから利用する汎用機能を提供するタイプのモジュールです。

8. Date

Date モジュールは日時データをコンテンツやユーザーにくっつけられる機能を提供するモジュールです。

正確にいうと「コンテンツやユーザーにくっつける」というところは Date モジュールの機能ではありませんが、最初はとにかく「日時データが扱いやすくなる」という認識で大きな問題はないのではないでしょうか。

9. Webform

Webform モジュールはオンラインフォームを管理画面から自由に作れるモジュールです。

Drupal には標準的な問い合わせフォームがコアに同梱されていますが、 Webform を使うと標準とは異なる凝った入力フォームなんかも素早く作成することができます。

Drupal は CMS でありながら、開発用のプラットフォーム、いわゆる「ウェブフレームワーク」としての色合いも強い独特なツールですが、この Webform のような機能なんかは他のウェブフレームワークではなかなか対抗の難しい目玉機能だと思います。

10. IMCE

IMCE モジュールは画像その他のファイルを Drupal サイト上で管理できる画面を提供するモジュールです。

ファイルブラウザのようなインタフェースで、画像のプレビューやリサイズなどのちょっとした処理、ファイルの一覧表示などの機能を提供してくれます。

ここからは 11 位から 20 位のモジュールです。 解説もひとことずつ手短にいきたいと思います。

11. Wysiwyg

Wysiwyg モジュールはいわゆる WYSIWYG (ウィジウィグ)ーー Word のように HTML テキストを編集できる機能を提供するモジュールです。

HTML がわからない方でも、スタイルや構造に工夫を加えたコンテンツをかんたんに投稿することができます。

12. Google Analytics

Google Analytics モジュールはその名のとおりGoogle Analytics を導入するためのモジュールです。

本来 Google Analytics を利用するときはページの HTML 内に script タグを貼り付ける必要がありますが、こちらのモジュールを使うと管理画面からかんたんに Analytics 用の設定を行うことができます。

13. jQuery Update

jQuery Update モジュールはjQuery の新しいバージョンを利用できるようにしてくれるモジュールです。

Drupal 7 のコアには jQuery の 1.4 が同梱されています。 もっと新しいバージョンの jQuery を使いたい場合にはこちらの jQuery Update を使うとかんたんに新しいバージョンの jQuery をし始めることができます。

14. CKEditor - WYSIWYG HTML editor

CKEditor モジュールはCKEditor という WYSIWYG ツールを Drupal で利用するためのモジュールです。

「 WYSIWYG 」(ウィジウィグ)の意味については 11 番目の Wysiwyg と同じです。 Wysiwyg が複数のエディタをサポートしているのに対し、こちらの CKEditor は CKEditor 専用となっています。

15. Link

Link モジュールはURL データをコンテンツやユーザーにくっつけられる機能を提供するモジュールです。

正確にいうと、 Date モジュールと同じく「くっつける」という部分は Link モジュールが担っているわけではありませんが、このモジュールを使えば「参考記事」や「関連ページ」などがコンテンツにくっつけられるというようなイメージです。

16. Backup and Migrate

Backup and Migrate はDrupal サイトのバックアップや環境間のデータ移行のためのモジュールです。

バックアップ先やスケジュールなどを細かく設定することができます。

17. Rules

Rules モジュールは「自動化」処理がかんたんに設定できるモジュールです。

「 Drupal 内で○○が起こったときに××という処理をする」といった条件と処理を管理画面から設定することができます。

18. Views Slideshow

Views Slideshow モジュールはコンテンツのスライドショーを手軽に作成できるモジュールです。

Views モジュールで一覧表示できるさまざまなもの(コンテンツやユーザ)に対してスライドショーを作成することができます。

19. CAPTCHA

CAPTCHA モジュールはボットによるスパムを防止するための CAPTCHA 機能をフォームに追加するためのモジュールです。

20. XML sitemap

XML sitemap モジュールはSEO に有効な XML 形式のサイトマップを生成するためのモジュールです。

おわりに

以上です。 いかがだったでしょうか?

Drupal 7 の人気モジュールのランキングを 1 位から 20 位までご紹介してみました。

最後は少し駆け足でしたが、 Drupal のコントリビュートモジュールとしてどのようなものが揃っているのかというのがおおづかみに把握していただけたのではないかと思います。 Drupal が CMS としてどういうサイトでよく使われているのかという部分もなんとなく把握できるのではないでしょうか。

コントリビュートモジュールだけでなく、自分で作るオリジナルの Drupal モジュールにも興味のある方はこちらに記事なんかもご覧になってみてください。

最後に少し宣伝を。 スタジオ・ウミでは Drupal 7 のカスタムモジュール開発のご依頼をお受けしています。 Drupal サイトに機能を追加したい、既存の機能を見直したい、とお考えの方はぜひお気軽にお問い合わせいただければと思います。

コメントを追加

プレーンテキスト

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。