Drupal 7 から WordPress への移行方法
今回は Drupal 7 から WordPress への移行方法についてまとめたのでそのことを書きます。 なぜ Drupal 7 から WordPress に? Drupa 7 は 2021 年の 11 月に 公式のメンテナンスが終了することが決定しています(追記: その後 1…
今回は Drupal 7 から WordPress への移行方法についてまとめたのでそのことを書きます。 なぜ Drupal 7 から WordPress に? Drupa 7 は 2021 年の 11 月に 公式のメンテナンスが終了することが決定しています(追記: その後 1…
Drupal 7 から他のプラットフォームに移行する方法についてまとめました。 Drupal 7 は公式のメンテナンスが 2021 年 11 月に終了することが決定したため、 2020 〜 2022 年の間に脱 Drupal 7 を必要とするサイトがたくさん出てくるものと思いま…
I'd like to share a way to set default values of fields to new nodes (more generally "entities") programatically in Drupal 7. At the time w…
今回も Drupal の開発ネタで、掲題のとおり「 Drupal サイトで利用されているモジュールの一覧を csv として取得する方法 」についてです。 個人的には、サイトの引き継ぎのときや、モジュールのアップデートをまとめてかけたいときに、モジュール一覧をスプレッドシートで管…
今回は CMS の Drupal を使った開発に関する少しマニアックなお話です。 Drupal を使ったサイト制作において「カスタムモジュールをどのように分割するか」というのはそのサイトの中長期のメンテナンス性に影響する重要なポイントです。 一般に、 Drupal 上で A と…
There're many JavaScript libraries included in the Drupal 7 core. Many of them are rarely used in custom modules (I haven't used many of th…
Drupal 7 has a powerful query class in its core. EntityFieldQuery | entity.inc | Drupal 7.x | Drupal API There're 3 main methods to specif…
Drupal 7 was created mainly with a procedural style but OOP styles can be used in many parts of it. For example, there're many callbacks us…
At times I'd like to check the size of databases used by Drupal. But I don't like to launch apps like phpMyAdmin and Sequel Pro only for th…
While developing a site with Drupal, at times I'd like to disable a content type without removing it. I just want to disable one. The datab…
Drupal 7 で次のようなエラーに遭遇することがあります。 原因 問題の原因は関数 の中で連想配列とその他の何か(たいてい )の加算が行なわれていることです。 そしてそれが起こるのは の戻り値が正しく指定されていないことが原因です。 次のような を書いていると発生し…
今回は Drupal 7 の ファイルの についてのお話です( Drupal に興味のない方にはおもしろくないちょっとマニアックなお話です・・・)。 Drupal で開発を行う際に必ず必要となるもののひとつが .info ファイルです。 その中に記述可能な項目のひとつに …
Drupal 7 には仮想ブラウザを使った自動テストを行うための というテストクラスがデフォルトで用意されています。 ただ、 には驚くほどたくさんの便利機能が備わってはいるのですが、主に利用するのがコアコントリビュータだけだからなのか、英語で検索してもわかりやすく解説してい…
Drupal 7 で Drush コマンドを実行しようとすると クラスが存在しないというエラーが出る場合の対処方法についてです。 問題 Drupal 7 で Drush コマンドを実行しようとすると クラスが存在しないと怒られます。 原因と解決策 このエラーは(私の環境では…
今回も Drupal 7 のマニアックなお話です。 今回は「すべてのページリクエストに対してある処理を行いたい場合、どの関数を使うべきか」の判断ポイントについてまとめてみたいと思います。 Drupal 7 では、原則すべてのページリクエストにおいて実行される関数として次の 3 …
問題 Drupal 7 で (もしくは )コマンドを実行すると下記のようなエラーが出て処理が失敗してしまいます。 原因 この問題の原因は「モジュールの更新情報の文字列を がうまく認識できないこと」にあります。 細かい原因まで把握できていませんが、テーブル状で表示されるモジ…
Drupal 7 でノードのファイルフィールドからファイルをアップロードした後ノードを保存せず破棄した場合にアップロードしたファイルがその後どうなるかについてです。 結論は、一定時間経過すると cron で自動的に削除されます。 流れ: アップロードされたとき、ファイルは一時デ…
今回は Drupal 7 の開発のマニアックなお話です。 Drupal 7 で開発を行っていると EntityFieldQuery でオリジナルの条件指定メソッドを作成したくなることがあります。 オリジナルの条件を指定するには基本的には メソッドを利用すれば OK です。 た…
Drupal でモジュールの cron 処理の順序を指定する方法について。 Drupal のモジュールの hook の実行順序はデフォルトではアルファベット順ですが、 を変更することで任意の順序で処理を実行する事が可能です。 次のコードでは、 というモジュールの処理を と…
Drupal 7 の Views でリストを作成していると、リストを date 型のフィールドでグルーピングしたくなる場合があります。 過去の投稿一覧を月単位でまとめたり、エンティティを日付の単位をまとめたり、といったケースです。 このような場合にグルーピングを使うと複数の項目…
今回は Drupal 7 で などデータベース関連の関数が発行するクエリを確認する方法について。 結論からいうと、 の戻り値である クラスのインスタンスのメソッドを利用すれば OK です。 同様のことは など他のデータベース関連関数についても言えます。 具体的には、 …
今回は Drupal 7 で一度無効化されたデフォルトのテキストフォーマットを再度有効化する方法についてご紹介したいと思います。 Drupal 7 を Standard プロファイルでセットアップした場合、次の 3 つのテキストフォーマットがデフォルトで有効になっています。 P…
手短な説明にはなりますが、 Drupal の Form API の #states というパラメータの使い方についてかんたんにご紹介したいと思います。 Drupal でフォームをプログラムで作成する場合は #states というパラメータを使うことにより、通常 JavaScri…
Drupal 7 で開発をしていると、次のようなメッセージで怒られることがあります。 今回はこの問題の原因と対策について。 原因と対策 原因は、エラーメッセージのとおり への引数が正しく渡されていないことです。 は Render array 、 theme 関数周りでよく使…
Drupal 開発を行う上で欠かせない Drush ですが、アップデートを行おうとしたときに思うように動いてくれないことがたまにあります。 そんなときの解決方法をいくつか書き留めておきます。 1. サブコマンド で Drush のリリース情報を更新することができます。 2.…
Drupal のデフォルトの検索フォームのボタンを Font Awesome のものにスタイル変更する方法について。 Drupal に Font Awesome を導入するには、「そのまま Font Awesome を自作のテーマに含めて使う方法」と「専用のコントリビュートモジ…
Drupal 7 の Webform の日付フィールドはデフォルトでは「 月/日/年 」というフォーマットになっています。 これは日本では馴染みの薄いフォーマットなので、国内のプロジェクトで使用する場合は変更して使う形がほとんどになるかと思います。 明示的な説明がありませんが、…
Drupal 7 の Views で出力のテンプレートを変更したいことがあるかと思います。 そういう場合にはどこかのテンプレートを実装/上書きする必要があるということはパッとわかるのですが、具体的にどのテンプレートを利用すればよいのかにわかにはわかりません。 そういう場合には、…
タイトルのとおり Drupal でレコードを複数行まとめて入れる挿入する方法について。 こちら可能は可能なのですがちゃんと解説しているドキュメントがあまりないようでパッと確認したいときに不便します。メモ代わりに書いておきたいと思います。 おなじみ で生成した に対して を…
Drupal 7 で DB トランザクションを明示的にコミットする方法について。 Drupal では使用している DB がトランザクションをサポートしている場合は 関数でトランザクションを開始することができます。そして、ロールバックや例外などが発生しないかぎり一連の処理が終了…
エラー文 原因 Composer のバージョンが古いために起こるエラーのようです。 私は Composer 0.9-dev で Drush 7.0 を入れようとしたときに発生し Drush を入れることができませんでした。 対処方法 Composer をアップデートします。 C…
Views で日付フィールドの値によってフィルタリングしたい場合があるかと思います。たとえば未来のお知らせだけを表示したい、直近 1 ヶ月のイベントだけを表示したい、など。 今回はそんな「 Drupal の日付フィールドでフィルタリングする方法」をご紹介します。 前提として、 …
Drupal のテンプレートファイルでは多数の変数が使用できるようになっていますが、テーマの継承などを行っていると使える変数が非常に多く「何が使えて何が使えないのかわからない」という状況になりがちです。 変数をチェックするにはテンプレートファイル内で以下のコードを記述するとよい…
Drupal で単一、あるいは小数のノードを特定の Drupal サイトから別の Drupal サイトに移動する方法について。 いくつか方法はあるかと思いますが、たとえば、ローカルの開発環境から本番環境へひとつだけのノードをサッと移すだけであれば Node export モジュ…
エラー Drupal で有効でデフォルトになっているテーマのベーステーマが存在しないときに以下のような警告文が表示されます。 厳密にはエラーではありませんが、そのまま放置していても正常な動作をするようにはならないので広義のエラーと言ってもよいでしょう。 対処方法 Drupal …
問題 Drupal 7 の HTTP リクエスト用の関数 を使って POST リクエストをしようとしても POST データが送れない。 原因 ヘッダが正しく設定されていないことが原因です。 と だけでなく header の を正しく設定する必要があります。 解決方法 以…
Drupal があるルートディレクトリを移動したりリネームしたりするとエラーが出てしまいページが見れなくなります。 エラー 私の環境では次のようなエラーが出ました。出てくるエラーは状況により変わることがあるようです。 原因 正確な原因は不明のままですが、キャッシュ周りが怪しそう…
Drush を使って cron を実行しようとすると次のようなエラーが出てしまい実行できないことがあります。 原因 このエラーが起こるのは、 cron プロセスがすでに実行中のときか、実行中でなければ前回の cron 実行中に処理が途中で終了し関連データが残った場合に多いようで…
Drupal 7 で Features モジュールをアンインストールしようとすると以下のエラーが出てアンインストールができない場合があります。 エラー 原因 原因は、アンインストールの処理内で Features モジュールの関数 が使われていることです。 アンインストールの処…
に次の行を追加します。 すると、エラー発生時はなるべく画面に表示することができます。開発用なので本番サイトでは必ず削除するようにしましょう。ネタ元は Definitive guide to Drupal 7 です。
エラー 原因 / 対処方法 原因は有効にしているテーマの .info ファイル内のスタイルシートなどの設定が間違っていることです。よくあるのは次のまちがい。正の方に修正してキャッシュをクリアしたら直ります。 誤: 正: の部分には などを記入します。