Ho lavorato in Magento 2 e ho sovrascritto alcuni moduli che ho installato (sul frontend).
Tuttavia oggi ho appena incontrato qualcosa che non avevo mai visto prima. Il modulo che sto usando ha un blocco al suo interno che ha il seguente:
<referenceBlock name="product.info.details">
<block class="Vender\Module\Block\Catalog\Related" name="posts.tab" as="blog.posts"
template="Vender_Module::catalog/posts.phtml" group="detailed_info">
</block>
</referenceBlock>
Imposta il suo nome:
posts.tab
e quindi usa il come per consentirne la chiamata tramite:
come = "blog.posts"
Quando ho provato a fare riferimento al blocco da rimuovere usando il nome come ho notato che non lo stava rimuovendo dalla pagina:
<referenceBlock name="product.info.details">
<referenceBlock as="blog.posts" remove="true"/>
</referenceBlock>
quindi sono andato a vedere come si chiamava effettivamente la pagina sul frontend (nel caso in cui fosse stata rinominata da qualche altra parte o non stesse usando il nome posts.tab) - il nome del blocco viene chiamato con posts.tab , che va bene come posso solo fare riferimento a quel blocco per rimuoverlo. Funzionava bene.
Ma la mia domanda è: perché il blocco non viene rimosso usando as e invece viene tirato attraverso usando il nome .
In secondo luogo, qual è il punto in quanto , perché ovviamente i blocchi non possono avere nomi in conflitto comunque e dovrebbero essere univoci, ma potrei sbagliarmi totalmente.