In Magento 2.1 führt das Deaktivieren der Ausgabe, wie von @Max empfohlen, zu einem fehlerhaften Pop-in in der Produktansicht.
Nicht sehr cool. Es wird durch eine Ajax-Anfrage verursacht, die in 503 endet. Und Sie werden feststellen, dass es noch eine Registerkarte "Produktbewertungen" gibt. Es funktionierte auf 2.0, da der Admin immer noch durch Blöcke gerendert wurde. Nun ist es mit UiComponent erledigt.
Der "Product Review Tab" wird adminhtml/di.xml
über Magento_Review hinzugefügt
<virtualType name="Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\Pool">
<arguments>
<argument name="modifiers" xsi:type="array">
<item name="review" xsi:type="array">
<item name="class" xsi:type="string">Magento\Review\Ui\DataProvider\Product\Form\Modifier\Review</item>
<item name="sortOrder" xsi:type="number">20</item>
</item>
</argument>
</arguments>
</virtualType>
Es gibt keine Möglichkeit, ein Argument zu entfernen - oder zumindest nicht, wie man es findet. Also müssen wir es so oder so umschreiben.
Zuerst dachte ich daran, ein Plugin zu machen Magento\Review\Ui\DataProvider\Product\Form\Modifier\Review
. Aber das Durchstöbern des Kerncodes lässt mich eine Dummy.php
Klasse entdecken . Erstellen Sie also in einem benutzerdefinierten Modul einadminhtml/di.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<virtualType name="Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\Pool">
<arguments>
<argument name="modifiers" xsi:type="array">
<item name="review" xsi:type="array">
<item name="class" xsi:type="string">Magento\Ui\DataProvider\Modifier\Dummy</item>
</item>
</argument>
</arguments>
</virtualType>
</config>
Und vergessen Sie nicht, <sequence><Magento_Review/>
in Ihrem hinzuzufügen module.xml
. Weil XML in einer genauen Reihenfolge zusammengeführt werden. Es muss NACH Magento_Review sein
Und bitte beachte: Beim Deaktivieren von Ouput wird das Modul NICHT deaktiviert, da der Titel dieses Threads erwähnt wird. Es wird es nur verbergen:
Controller sind weiterhin aktiv. Wenn Sie einen Beitrag zur richtigen Aktion verfassen, funktioniert der Controller weiterhin, und Sie erhalten sogar eine Erfolgsmeldung im Frontend.
Sie finden immer noch Menüs in Admin, in "Bericht"
Jede Modelllogik, Injektion, Beobachter wird weiterhin gelten.
Jedenfalls ist es aus meiner Sicht immer noch die beste Lösung. Weil das Erzwingen der Deaktivierung des Moduls mit module:disable -f
ein bisschen hart scheint ...