Magento 2カスタムモジュールがロードされていません
-
12-12-2019 - |
質問
Magento 2のローカルコピーをXamppにインストールし、新しい構造を知るようになっています。ただし、基本モジュールを設定しようとすると問題が発生しました。
次のファイル/フォルダ構造を作成しました
app/code/Heirik/Test/etc/module.xml
.
このファイルの内側には、次のがあります
<?xml version="1.0"?>
<config>
<module name="Heirik_Test" schema_version="2.0.0">
</module>
</config>
.
私はストアキャッシュを更新しましたが、Store> Configuration> Advancedに移動すると、モジュールはリストにロードされていません。最新のDevDocによると、モジュールをXML内でアクティブに設定する必要はもうありません。
Magentoがmodule.xmlを読み取っていることを知っていることを知っている。スキーマを削除するとエラーが発生します。
解決
Magentoの最新のビルドでこれはに変更されました
php -f bin/magento module:enable --clear-static-content Module_Name
php -f bin/magento setup:upgrade
. 他のヒント
検索、試行錯誤の後、私は以下の答えを見つけた
既存のMagentoインスタンスの場合は、カスタムモジュールを次のように登録する必要があります。
- app / etc / config.phpファイルを編集し、そこにモジュールを追加し、値 "1"(有効)を指定します。
- その後キャッシュを更新します。
だから私はを追加しなければならなかった
.'Heirik_Test' => 1,
App / etc / config.php 内のモジュール配列に配列
またはさらに簡単に、DIRSを取り付けて実行して実行します。
php -f setup/index.php module-enable --modules=MODULENAME
php -f setup/index.php update
. だから私の問題は、カスタムモジュールを登録することを試みるとき、Magento 2.2.0を実行していることは、Composer Updateを実行したときに、作曲家生成ファイルGeneraCoditagCodeが更新されなかったことでした。
私が何をしたのかは関係ありませんでした.vendor/composer/autoload_files.php
に手動で追加すると、それが機能しているように見えますが、config.php
を実行した後、モジュールは登録されなくなり、インストール/アップグレードスクリプトを実行しませんでした。
作曲家を適切に更新した後、magento setup:upgrade
、Moduleが登録され、私は救済を主にしました。
何かを知っているだけです。うまくいけば、他の誰かが似たような問題がある場合、これはいくつかの光を当てることができます。
module.xml
file configタグという名前のモジュールのファイルには、XMLスキーマと、module.xml
ファイル構造を検証するXSDの場所があります。スキーマ値はのようにする必要があります
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd"
.