こんにちは、東京に住みだして早3ヶ月。渋谷の街にもだいぶ慣れてきた大野です。滋賀と東京を入った来たりしている中でボーっとしているとたまに自分がどっちに居るのか一瞬わからなくなります(笑)

日本時間の今日 Drupal 7.50 がリリースされました。

えっ、7.50……???

普段 Drupal をお使いの方ならお気づきだと思いますが、この前のバージョンは 7.44 でした。これまでは一つ一つバージョンが上がってきていたので、何だか違和感を感じるバージョンの上りかたですね。Drupal.org のリリースブログを見ると 7.50 と言う数字は正しくて、どうやら少し大きめの変更や新機能があることを示すってことらしいです。なるほど。Drupal 8 のバージョンニングと似た形式を取っていくんでしょうか。

リリースブログに代表的な新機能がハイライトとして紹介されていたので、こちらで紹介したいと思います。

フィールドの管理権限を追加

フィールドの管理権限が新たに追加されました。これまでは「コンテンツタイプの管理」や 「ボキャブラリーとタームの管理」の権限があるだけで、フィールド構造まで変更することができてしまいましたが、別の権限として動くようになったそうです。

「タクソノミーのタームは担当者に管理してもらいたいけど、フィールドの構造までは触ってほしくない」というケースはよくあることなので便利になりました。

フィールドの権限管理

クリックジャッキング攻撃対策がデフォルトで有効に

クリックジャッキング攻撃とはページ内に悪意のある <frame><iframe> を埋め込み対象のサイトを攻撃する方法です。Drupal 7.50 ではこの攻撃への対策がなされ、その機能がデフォルトで有効となりました。

<iframe> を利用したサイトではコンテンツが表示されなくなるはずですので、アップデートには十分に注意しましょう。設定が必要な方は Drupal.org の Change records に settings.php への設定方法が書かれているので、参考にしてください。

MySQL上で絵文字や漢字、数学記号などが使えるフルUTF-8がサポート

Drupal 7 の4バイトUTF-8の参考イメージ

MySQL を使用する Drupal サイトで絵文字が正しく保存されるようになりました。今までは絵文字を入力しても MySQL の都合で正しく保存されなかったのですが、このスクリーンショットのようにちゃんと見えるようです。ちなみに PostgreSQL や SQLite ではもともとサポートしているとのこと。

ただし、MySQL や settings.php にそれを使用するための設定を追加する必要があるとのことですので、管理画面から気軽に有効化できる訳ではないようです。絵文字をどうしても使いたいと言う場合にだけ検討して設定する感じでしょうか。詳しくは Multi-byte UTF-8 support in Drupal 7 の記事をご覧ください。

私的にはサイト上で絵文字があると真っ先に互換性の心配をしてしまうのですが、最近では Slack などの特に海外のサイトで絵文字を利用するサイトが増えてきていますからね。オッサンだからと言う言い訳はしないで積極的に使っていきたいと思います!

PHP 7 を含む最近の PHP バージョンのサポートを改善

Drupal 本体のテストで PHP 5.4, 5.5, 5.6 と 7 で発生していた、いくつかのエラーが修正され、公式にサポートされたそうです。動作速度が 5.6 と較べて2倍位早いと言われる PHP 7 が公式にサポートされたのは特に嬉しいですね。海外の方がされている Drupal のベンチマークを見ると、PHP 7 にするだけで 1.5 倍くらいは早くなるみたいです。素晴らしい!

ただし、本体がサポートしたと言っても、コントリビュートモジュールの PHP 7 対応はまた別ですので注意してください。既存サイトの PHP をアップグレードする際には十分にテストを行ないましょう。

Drupal が存在しないファイルを検索する時のパフォーマンスを改善

Drupal が存在しないファイルを検索する時のパフォーマンスを改善したそうです。リンク切れのパスが多いほど無駄に Drupal が呼び出されることになるのでパフォーマンスにかなりの影響があるところですね。

そもそもリンク切れを起きないようにするのがサイト管理者の宿命なので、こまめにログを見て 404 Not found が起きない状態を心がけましょう。外部のサイトからリンクされてしまっているパスを変更した場合は Redirect モジュールがお勧めです。

検索エンジンに対する robots.txt の親和性が向上

最近の検索エンジンのクローラーは CSS や画像、JavaScript まで読み込んでサイトの評価するようになっています。今回のアップデートではそれらのファイルへのアクセスが許可されるようになりました。

新しい robots.txt を覗いて見ると、/themes//modules/ ディレクトリなどの Drupal コアのファイルに対する修正だけみたいなので、一般的なカスタムファイルのインストール先のディレクトリである /sites/ 以下のもは影響は無く、「コアのモジュールやテーマだけ検索エンジンに正しく評価されるようになった」と言うことみたいですね。

ハイライトは以上です。その他にも様々な修正がされていますので、詳しくは drupal 7.50 のリリースノート をご覧ください。

Drupal 7 は API を崩すような変更はないものの、リリースノートを見てると実は地味に機能や API の追加があります。Drupal 8 が出た後の今でもこういったアップデートが行われるのは、エンジニアとしては嬉しい限りです。今回のリリースは大きな修正が混じっているので、本番サイトへの適用はしばらく様子を見るか、ちゃんテストをしてからバージョンアップしたほうが良さそうですね。


共に働く新しい仲間を
募集しています

スタジオ・ウミは「Drupal」に特化したサービスを提供する Drupal のエキスパートチーム。
フルリモート&フレックス制だから、働く場所を選ばず時間の使い方も自由です。
そんなワークライフバランスの整った環境で、当ブログに書かれているような
様々な技術を共に学びながら、Drupalサイト開発に携わってみたい方を募集しています。
まずはお話だけでも大歓迎!ぜひお気軽にご連絡ください。