使用例:必要なモジュールを有効にせずに、モジュールを有効にしました。モジュールページで構成を保存しました。次の画面が表示されました-
[続行]をクリックすると、WSOD(空白ページ)が表示されます。
ルートディレクトリのindex.phpにエラーレポートのphpコードを追加しました。致命的なエラーが表示されました-致命的なエラー:/mysite/sites/all/modules/i18n/i18n_variable/i18n_variable.moduleの54行目の未定義の関数variable_realm_switch()への呼び出し
WSODのため、必要なモジュールを有効にするために管理ページに戻ることができません。コードからモジュールを有効にする方法はありますか?モジュールに関連付けられたデータが失われるため、このエラーに関連するモジュールを削除できません。
PhpMyAdminまたは他のデータベース管理ソフトウェアを使用して(または、それに慣れている場合は、コマンドラインmysqlを使用して)、system
テーブルで有効または無効にするモジュールの名前を見つけます。そのモジュールのstatus
を、無効の場合は0
に、有効の場合は1
に設定します。
mysqlコマンド:
UPDATE `database_name`.`system` SET `status` = '1' WHERE `system`.`name` = 'module_name';
phpMyAdminスクリーンショット:
サーバーに Drush をインストールすることもお勧めします。これにより、コマンドラインからモジュールの有効化/無効化、キャッシュのクリアなどのコマンドを実行できるようになります。これは、WSODが原因でDrupal adminにアクセスできない場合に非常に便利です。