このエラーに直面しています。管理者で製品を保存しようとすると、必須パラメーター「theme_dir」が渡されませんでした。ストアに割り当てられたテーマ構成を確認しました。最近、2.0.7から2.1.0にアップグレードしました。また、テーマディレクトリregistration.phpファイルが存在することを確認しました。誰もがこの問題に遭遇しました。
このエラーに直面しています。管理者で製品を保存しようとすると、必須パラメーター「theme_dir」が渡されませんでした。ストアに割り当てられたテーマ構成を確認しました。最近、2.0.7から2.1.0にアップグレードしました。また、テーマディレクトリregistration.phpファイルが存在することを確認しました。誰もがこの問題に遭遇しました。
回答:
データベースでまだ参照されているテンプレートフォルダーを削除すると、このエラーが表示されます。それを修正する最も簡単な方法は、データベースに移動し、テーブル 'theme'で、に存在しないテーマ名を見つけることapp/design/frontend/package
です。
DELETE
テーブルから欠落しているテーマへの参照。
Vu Anhの答えが機能していることを確認できます。削除されたテーマはどこでも使用されていませんが、製品が保存されたときにこれが発生する理由を説明します
製品を保存すると、すべてのテーマの画像キャッシュが再生成されます。各テーマには独自の画像サイズ形式を定義でき、etc/view.xml
これらの形式はすべて定義され、これらすべてが生成されます。
しかし、Magentoはすべてのストアで構成されたテーマを探す代わりに、theme
テーブル内のすべてのテーマを調べます。
テーマを適切にアンインストールせずにファイルを削除しただけの場合、孤立したエントリは存在しないパスを参照し、説明されている例外がスローされます。
同じエラーが発生しました必須パラメーター 'theme_dir'が渡されませんでした。更新ではなく、最初から2.1.0を使用しています。そして、1つのカスタム製品属性「スタイル」があります。
問題は、素材に新しい写真を保存しようとすると発生します。画像がなければ、製品は正常に保存されました。
ファイルの下の例外にコメントを付けて修正します。
vendor/magento/framework/view/design/Fallbck/Rule/Simple.php
それは私のために働いた。しかし、それはハックだと思います。
最後に、の例外をコメントアウトして修正しましたvendor/magento/framework/View/Design/Fallback/Rule/Simple.php
。
if (in_array($placeholder, $this->optionalParams)) {
return [];
} else {
return [];
//throw new \InvalidArgumentException("Required parameter '{$placeholder}' was not passed");
}