社員ブログ

elasticacheで挙動がおかしくなった話

ズィスト に投稿

皆さんこんにちは
今回はAWSのelasticacheを使おうとして挙動がおかしくなった話をご紹介します。
この記事ではmemcacheについてとなります。

環境

今回問題が起きた環境はこちら

  • EC2インスタンス (centos)
    • php,apache,Drupalなどインストール済み
  • Elasticache (memcache)
    • クラスター構成

概要

memcacheを使用するためremiリポジトリからphp拡張モジュールのphp-pecl-memcachedをインストールしました。
しかし、ここに落とし穴がありました。

Drupal8からDrupal9にアップデートする方法

ズィスト に投稿

タグ

はじめに

Drupal9が公開されて半年が経とうとしています。
D9に触れる機会がなかなかなかったのですが、時間ができたためローカルの環境をD8からD9にアップデートしました。
その時の手順を公開します。
今回はDrupal8.9.5から9.0.8にアップデートしました。

手順

手順は以下の通りとなります。

  1. バックアップを取得する。

  2. サイトの状態を確認する。

  3. D9への更新

特定のコンテンツタイプにだけCSSを適用させる方法

funada に投稿
/* code { border-radius: 3px; padding: 0 10px !important; } pre > code .hljs-ln-n:before { display: none; } /*]]>*/

特定のコンテンツタイプにだけCSSを適用させる方法

DrupalにおいてCSSは基本的に「テーマ」の管轄ですが、テーマに手を加えることなくCSSを効かせたい……という場面もあると思います。

方法はシンプルで、hook関数を使えば簡単に実現できます。
例えば、後から作ったコンテンツタイプに専用のスタイルを適用させたい、といった場合に役立ちます。

コンテンツタイプを移行する

funada に投稿

タグ

コンテンツタイプを移行する

作成したコンテンツタイプを別の環境に移行する手順について説明します。

大まかな手順としては、各種の構成ファイルを含んだカスタムモジュールを作成し、そのモジュールを新しい環境にインストールするという流れになります。

この「構成ファイル」というのは、コンテンツタイプ名、各フィールド名、各フィールドの設定などといった情報をyml形式で表現したファイルのことです。構成ファイルは全てデータベースの「config」というテーブルに16進数に変換して保存されています。

カスタムモジュールを作成する

まず最初に適当な名前のカスタムモジュールを作成します。モジュールとしてインストール出来さえすればいいので、info.yml以外のファイルは不要です。

カスタムDrushコマンドでコンテンツを生成する

funada に投稿

タグ

カスタムDrushコマンドでコンテンツを生成する

Drushコマンドを用いてコンテンツの作成を行ってみます。
Drushコマンド作成の基本的な方法については、前回の記事「Drushのカスタムコマンドを作成する」をご覧ください。

今回は「drush_create_node」という名前でモジュールを作成します。
作成するファイルは前回と同様、下記の4種類となります。

Drushのカスタムコマンドを作成する

funada に投稿

Drushのカスタムコマンドを作成する

コマンドラインに"Hello!"と表示するだけの簡単なカスタムコマンドを作ります。

# drush hello
Hello!

まずはカスタムモジュールを作り、その中でコマンドを定義します。
今回は"drush_hello"というモジュール名にします。

作成するファイル

  • drush_hello.info.yml
  • drush.services.yml
  • composer.json
  • Hello.php

 

ディレクトリ構造は次のようにします。