私はモバイルサイトの開発サイトから設定を移動して、プロダクションサイトで作業しています。しかし、上記のエラーが発生します。このエラーの原因はわかりません。私がjqueryモバイル環境を変更するテーマも関係ありません。すべてのモジュールを確認しましたが、同じバージョンのようです。私が見ることができる唯一の違いは、開発サイトではブロックキャッシュのチェックを解除/チェックできることです。本番環境ではこれを行うことはできません。
JavaScriptファイルの順序に関する問題のように聞こえます。 Drupalは
/misc/Drupal.js
var Drupal = Drupal || { 'settings': {}, 'behaviors': {}, 'locale': {} };
変数が要求される前に、Drupal.jsがHTMLソースに追加されていることを確認してください。
ダンプからdrupal 7 Webサイトをインストールするときに同じ問題が発生しました。
元のdefault
フォルダーは、サイズ管理のために空で提供されていました。 settings.php
ファイルとfiles
ディレクトリをプッシュした後、Drupal is not defined
エラーが発生しました。
元々、開発者はdefault
フォルダー内に他の2つのフォルダーを持っていました。
このフォルダを復元すると、エラーが解決されました。
drupal 8では、core/drupalをモジュールの依存関係として追加する必要があるかもしれません。
your-custom-module:
version: 1.x
js:
js/your_custom_module.js: {}
dependencies:
- core/drupal
- core/drupalSettings
@David Thomasが述べたように、これはファイルmisc/drupal.js
の問題です。 Drupalデフォルトでは、ファイルは正しい順序に配置されます。そのため、ほとんどの場合、ファイルはWebサーバーからアクセスできません。そのURLを作成し、ブラウザーでアクセスしてみてください。
私の場合、これはPHP-FPM(mod_suphp
と同様のユーザー権限で実行されます)を使用していて、静的ファイル( `png、jpg、css、jsなど)が引き続きApache2によって提供されていることを忘れていたためです私の場合。したがって、これらは世界中で読み取り可能である必要がありました。