Drupal 8

Drupal サイトでモジュール一覧を csv で取得する方法

今回も Drupal の開発ネタで、掲題のとおり「 Drupal サイトで利用されているモジュールの一覧を csv として取得する方法 」についてです。

個人的には、サイトの引き継ぎのときや、モジュールのアップデートをまとめてかけたいときに、モジュール一覧をスプレッドシートで管理したくなることがときどきあるのですが、そんな場合にはモジュール一覧が csv 形式で取得できるととても便利です。

2 つほど方法があるので、シンプルな方から順にご説明していきます。

  • Drush コマンドを使った方法
  • スクリプトを使った方法

Drush コマンドを使った方法

まずは Drush コマンドを使った方法をご紹介します。

Drupal のモジュール構成パターンあれこれ

今回は CMS の Drupal を使った開発に関する少しマニアックなお話です。

Drupal を使ったサイト制作において「カスタムモジュールをどのように分割するか」というのはそのサイトの中長期のメンテナンス性に影響する重要なポイントです。

一般に、 Drupal 上で A というひとつの機能を実現する方法はたくさんあり、そのモジュール構成の形もいくつもあります。 例えば、すべてを内包した大きなひとつのモジュールで実現する形もあれば、小さく小分けにした多くのモジュールで実現するやり方もあります。 極端なまでに粒度を細かくしていくと「 1 プラグイン = 1 モジュール」「 1 フック = 1 モジュール」というのも可能は可能ですが、単純に粒度を細かくすればメンテナンス性が上がるかというとそういうわけでもありません。

Drupal 8 の #markup のエスケープを避ける方法

Drupal 開発ネタです。

Drupal 8 には前のバージョン Drupal 7 と同じ #markup という要素タイプが存在しますが、この挙動は Drupal 7 とは少し異なり、 #markup の中身にも一定のオートエスケープがかかるようになっています。 今回はこのオートエスケープを避ける方法をかんたんにまとめておきたいと思います。

#markup のオートエスケープを避ける方法は、大きく分けて 3 つのパターンがあります。

Drupal 8 プラグイン その 2: プラグインデリバティブの作り方

前回に引き続き CMS 「 Drupal 」のプラグインについて解説します。

前回はプラグインとは何ぞやという概念的な部分とプラグインの作り方について説明しました。

今回はプラグインシステムのいち機能である「 プラグインデリバティブ 」について解説してみたいと思います。 今回も概念的な説明をした後に実例を紹介し最後に実際の作り方をご説明します。

対象の Drupal のバージョンは本稿執筆時点で最新の Drupal 8.3.2 です。 バージョンが進むと実装方法が変わるかもしれないのでその点にご注意ください。

Drupal 8 プラグイン その 1: プラグインの作り方

Drupal 8 で新たに導入された「 プラグイン 」の概念とその作り方について解説してみたいと思います。

まずはじめに Drupal 8 のプラグインとは何ぞやという概念の説明をした後に具体的な実装方法について説明していきます。

本稿では執筆時点で最新の Drupal 8.3.2 を対象としています。 バージョンが進むとコードの書き方が変わることなどもあるためその点にご注意ください。

想定読者

想定読者は「 プログラムは知っているけれど Drupal にはあまり馴染みがない技術者 」の方です。 コードのお話が出てきます。

Composer で Drush を入れようとしたときのエラー

エラー文

Could not parse version constraint ^2.6.3: Invalid version string

原因

Composer のバージョンが古いために起こるエラーのようです。 私は Composer 0.9-dev で Drush 7.0 を入れようとしたときに発生し Drush を入れることができませんでした。

対処方法

Composer をアップデートします。 Composer は self-update コマンドで Composer 自身をアップデートすることができます。