Questions tagged [di]

Denotes questions related to Dependency Injection in Magento 2.

Filter by
Sorted by
Tagged with
0 votes
1 answer
74 views

Page Builder use Child in the di.xml

If we want to add a chiid in page builder like slider how will we inject the child using di.xml
Rana Zain's user avatar
  • 616
0 votes
0 answers
49 views

Override Magento\Catalog\Model\Layer

I want to override the class Magento\Catalog\Model\Layer In my /etc/di.xml <preference for="Magento\Catalog\Model\Layer" type="Custom\Module\Model\Layer" /> Then I did the ...
Camilo Torres's user avatar
1 vote
1 answer
253 views

Magento 2 di.xml reuse array arguments

In Magento 2 di.xml we can inject an array to a class like this: <type name="Vendor\Module\Model\Foo"> <arguments> <argument name="data" xsi:type="array&...
Hieu Duong's user avatar
0 votes
1 answer
65 views

Does area emulation also influence DI / plugins?

We are reading the Magento configurable configuration inside an API call: private function getSpConfig($product) { if ($product->getTypeId() != 'configurable') { return ...
Alex's user avatar
  • 13.7k
0 votes
1 answer
286 views

How argument and item node work in di.xml in Magento 2?

I just wanted to know in deeply how argument, type , virtual type and item work in di.xml
Mark's user avatar
  • 43
0 votes
1 answer
40 views

How can I get the admin edit user url key for a specific user if I have the user_id and account info, what are the classes/methods for di?

Example: http://localhost/admin/admin/user/edit/user_id/5/key/db1082c352e51cfb817ce0335dd060cf6e953568daf2da25cca24eadb04dc884/ I want to return '...
Justin Collins's user avatar
0 votes
1 answer
207 views

Inject dependency based on php version

I use soap to do some calls to a remote server, php has changed method signature for __doRequest between php 7.4 & 8.x, is there any di.xml tag that can conditionally change the loaded class based ...
madalinivascu's user avatar
0 votes
1 answer
782 views

Override Abstract class in Magento 2 not working

I'm using magento v2.4.3, i tried to override \Magento\Customer\Model\Address\AbstractAddress like this: app/code/Vendor/Module/etc/module.xml <?xml version="1.0" ?> <config xmlns:...
blue's user avatar
  • 118
0 votes
2 answers
263 views

Magento 2 - How to disable a plugin

Problem: I am using the extension Fooman_PdfCustomiser. I need to disable the plugin named fooman_pdfcustomiser_paymentinfoblock. vendor/fooman/pdfcustomiser-implementation-m2/src/etc/di.xml: <...
Black's user avatar
  • 3,100
0 votes
2 answers
54 views

What is the meaning of below code (DI injection of proxy)

Can someone explain me what does this code does, when we need this. di.xml <type name="Magento\Wishlist\Helper\Data"> <arguments> <argument name="...
ravichandra's user avatar
0 votes
1 answer
17 views

What does the meaning of below piece of code (DI)

I found this code in a di.xml file with the code below. can someone tell me what the piece of code means. <virtualType name="Magento\Downloadable\Pricing\Price\Pool" type="Magento\...
ravichandra's user avatar
0 votes
1 answer
1k views

Admin Grid wont show and getting "Request validation failed for action" error in debug

I was trying to create an admin grid in the adminhtml trying to learn how they function and work and I ran into an issue following this guide: Mageplaza. I've been trying to debug where the issue is ...
Zyzzx's user avatar
  • 81
0 votes
2 answers
422 views

Magento 2 - Can't override class - must be an instance of

I created a preference override for Magento\Quote\Model\Quote\Item\CartItemPersister in my own module. But I get this error in the browser developer console: Total: Type Error occurred when creating ...
Black's user avatar
  • 3,100
0 votes
2 answers
266 views

I get a blank page after adding $block->getLayout()->createBlock() to the Module?

I am trying to inject \Magento\Customer\Model\Session into the QuickOrder module. I want the page to show a different message when the user is not logged in. In the directory app/code/Magento/...
Payman Khayree's user avatar
1 vote
0 answers
370 views

Magento 2 override resource model collection not working

I want to override Magento Reports module and it's not working. here's my code : di.xml <preference for="Magento\Reports\Model\ResourceModel\Report\Collection" type="SZK\Shamsi\Model\...
Mahdi Alikhani's user avatar
0 votes
1 answer
90 views

Error during compilation - Extra parameters passed to parent construct

During deployment when i run setup:di:compile i got error in one of my block, Extra parameters passed to parent construct: $data Guide me on this issue File name:index.php File location:app/code/...
Sabin's user avatar
  • 1
0 votes
2 answers
1k views

How to change the constructor parameter in magento2?

public function __construct( \Magento\Framework\Data\Collection\EntityFactoryInterface $entity, \Psr\Log\LoggerInterface $logger, \Magento\Framework\Data\Collection\Db\...
Abhay Agrawal's user avatar
0 votes
2 answers
679 views

Magento 2 - preference override not working for method sendConfirmationRequestEmail of module-newsletter

I try to override the method sendConfirmationRequestEmail from the module-newsletter Module in vendor\magento\module-newsletter\Model\Subscriber.php. Attempt: app\code\Company\Newsletter2Go\etc\di.xml ...
Black's user avatar
  • 3,100
0 votes
1 answer
236 views

Override Model from third party vendor in custom theme

I am trying to override a Model from a third Party vendor in a custom-theme. The original file was: /vendor/3rdpartyompany/3rdpartymodule/Model/Formatter/BaseImage.php I copied that file over to: /...
Mario's user avatar
  • 433
0 votes
1 answer
301 views

Magento 2 - Product gallery magnifier not working after overriding Gallery class

My magnifier is not showing anymore IF THE PRODUCT HAS MULTIPLE IMAGES, after I have overriden the gallery class! I have enabled the magnifier in THEME\etc\view.xml: <?xml version="1.0"?&...
Black's user avatar
  • 3,100
1 vote
2 answers
975 views

Error during compilation in magento2 .3 Incompatible argument type: Required type:

Webkul\Marketplace\Model\Order\Pdf\Creditmemo Incompatible argument type: Required type: \Magento\Store\Model\App\Emulation. Actual type: \Magento\Framework\Locale\ResolverInterface; File: /var/www/...
Sonali Ghule's user avatar
0 votes
1 answer
181 views

Error during compilation of Magento 2 Incompatible argument type : Required type:

Webkul\VendorPos\Model\ResourceModel\Orders\Grid\Collection Incompatible argument type: Required type: \Magento\Framework\App\Config\ScopeConfigInterface. Actual type: \Magento\Framework\DB\Adapter\...
Sonali Ghule's user avatar
0 votes
1 answer
186 views

Adding a productAttribute handler in Magento 2.4

I'd like my Magento 2.4 module to be able to modify the output of one of the product attributes programatically. I see that the ability to create a handler for this purpose was added in Magento 2.3.4, ...
Nick's user avatar
  • 121
0 votes
2 answers
660 views

How do I get an order collection in admin order view using the email address of the current order?

I am trying to build an order history table to display previous orders (order number/date/items ordered, etc) from a customer order in the admin order view (Magento\Sales\Block\Adminhtml\Order\View\...
wss web's user avatar
  • 13
0 votes
2 answers
313 views

Plugin for Magento\Shipping\Model\Rate\Result not working

I am trying to disable the default sorting based on price, that is happening on shipping methods. I found that this is happening in sortRatesByPrice() vendor/magento/module-shipping/Model/Rate/Result....
puntable's user avatar
  • 518
0 votes
1 answer
2k views

Search $block->getData('configProvider') in form.mini.phtml returns null after upgrade to 2.3.6

In 2.3.6, the following line was added to form.mini.phtml: $configProvider = $block->getData('configProvider'); Since the upgrade, this returns null and causes a fatal error due to this subsequent ...
mattf10's user avatar
  • 33
0 votes
1 answer
2k views

Is it possible to override a vendor module's di.xml file in Magento2?

So a module installed via composer lives in vendor/module, and I'd like to change its etc/di.xml from this: <virtualType name="customCategoryCollection" type="Magento\...
SantiBM's user avatar
  • 1,315
0 votes
1 answer
2k views

Getting error Not registered handle cms_page_listing_data_source in Magento 2?

I have added some filter in Sales -> Order and for that add a di.xml file. di.xml file <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&...
Prits's user avatar
  • 626
1 vote
3 answers
2k views

Magento 2 di.xml Parameter configuration inheritance explanation with example

I read about the Parameter configuration inheritance in Magento documentation but not able to understand the concept properly! https://devdocs.magento.com/guides/v2.4/extension-dev-guide/build/di-xml-...
Bhaumik Upadhyay's user avatar
1 vote
1 answer
887 views

Why I'm receiving an error messages Class does not exist when running DI compile?

Why am I receiving error messages "Class does not exist" when running DI compile? I removed some modules using the node replace in my composer.json, as you can see below. "replace"...
Rafael Corrêa Gomes's user avatar
1 vote
0 answers
29 views

DI compilation error when referenced module is not installed

I have a module that integrates with other modules from other developers. These other modules may or may not be installed, it is different for each user. As an example, the MSG_InstantSearch module ...
Ben Tideswell's user avatar
1 vote
0 answers
27 views

Is it possible to retrieve dependency injected arguments in another class?

Is it possible to retrieve dependency injected arguments in another class? For example, we have a class Vendor\Module\Block\Autocomplete. // app/code/Vendor/Module/Block/Autocomplete.php namespace ...
Quisse's user avatar
  • 850
0 votes
1 answer
930 views

Dependency Injection (di.xml) - (virtualType vs type) Magento 2 xsi:type='object'

Can someone please explain when you would use <type/> or <virtualType in your di.xml file? I want to make sure I understand it correctly.. At the moment, this is what I sort of think the ...
CvRChameleon's user avatar
0 votes
2 answers
546 views

Magento 2.3 - Error related to Amasty shopby while RUNNING setup di:compile

MiBPHP Fatal error: Declaration of Amasty\Shopby\Model\Source\Attribute\Extended::toOptionArray() must be compatible with Amasty\Shopby\Model\Source\Attribute::toOptionArray($boolean = 1) in /...
Yousaf's user avatar
  • 384
0 votes
2 answers
384 views

Override Magento 2 Order Invoice PDF

I can not seem to override the Magento Invoice class. I've created a module, installed it, enabled it. I have the following in my di.xml file <?xml version="1.0"?> <config xmlns:xsi="http://...
Josh Harmon's user avatar
1 vote
1 answer
363 views

Not able to use virtualType as Action constructor argument

In short I seem unable to use a virtualType I created as an argument in my Action's contructor but everything works fine when using a concrete class instead. Index.php (my action): namespace Unit1\...
frezq's user avatar
  • 155
1 vote
2 answers
2k views

What is the use of php bin/magento dev:di:info command?

With Magento 2.3, console command found which helps developers to find all the classes related to dependency injection. It seems that it shows dependency Injection classes from di.xml from all areas. ...
sandip's user avatar
  • 3,914
2 votes
1 answer
1k views

Magento 2 Override public static method of framework class

I want to override public static function getCorrectFileName method of Magento\Framework\File\Uploader, I have check with Preference and Plugin but it is not working for me. Anyone have idea about ...
Niranjan Gondaliya's user avatar
0 votes
0 answers
114 views

aroundSavePaymentInformationAndPlaceOrder plugin not working in magento 2

etc/di.xml <?xml version="1.0" encoding="UTF-8"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config....
prabhakaran7's user avatar
  • 1,057
1 vote
1 answer
1k views

Magento 2 Injecting Object in $data array

I am trying to inject my custom object in constructor like this in di.xml <type name="Magento\CatalogSearch\Block\Advanced\Result"> <arguments> <argument name="data" xsi:...
Amit Singh's user avatar
  • 1,735
10 votes
1 answer
1k views

What is/means/does Magento\Framework\EntityManager\MetadataPool and Magento\Framework\EntityManager\Operation\ExtensionPool

There are new things we can see at Magento 2.3 in di.xml for service contracts. let's give an example:Magento_Cms module Like Magento\Framework\EntityManager\MetadataPool Magento\Framework\...
Amit Bera's user avatar
  • 77.1k
0 votes
1 answer
179 views

Magento 2 Class CoinGate\Merchant does not exist

I have installed the CoinGage_Merchant module in Magento 2.3 setup but when I fire di:compile command it is showing below error. I set the generated folder permission 777 before compile command but ...
Utsav Gupta's user avatar
  • 1,243
1 vote
1 answer
39 views

Why avoiding ObjectManager can save us from multiple issues if Magento upgrade?

A new dependency injection framework will be used for the code. By avoiding ObjectManager in Magento 2, you won’t face multiple issues caused by the improvement. source:https://firebearstudio.com/blog/...
Sagar Parikh's user avatar
18 votes
5 answers
7k views

Magento 2.3.3 Fails on magento setup:di:compile with an error mentioning InvoiceFlexFieldProcessorInterface

I have installed the new Magento 2.3.3 version. After I have run the command: php bin/magento setup:di:compile I have Faced the following error: PHP Fatal error: Interface 'Vertex\Tax\Model\...
Hardik Makwana's user avatar
1 vote
0 answers
151 views

Di.xml error Cannot instantiate interface

I am trying to use the di.xml to pull a table from different module to populate a dropdown in the admin panel. When I write the XML code below it is throwing this error: PHP Fatal error: Uncaught ...
WS_Marc's user avatar
  • 13
2 votes
0 answers
192 views

Where are di.xml files merged?

My questions is pretty simple and straight forward. Somewhere in the code di.xml files are read and merged. Where is this happening?
vitoriodachef's user avatar
1 vote
1 answer
1k views

Magento 2: Override di.xml in custom theme

I have a module in vendor/company/module. I have created the following folder to override files. /vendor/theme/theme-frontend-default/Company_Module. I am able to override files in view folder but I ...
mysterious's user avatar
0 votes
3 answers
160 views

Error while running di:compile command

Getting ReflectionException] Class PayPal\Api\PayoutSenderBatchHeader does not exist error while running php bin/magento setup:di:compile command
Punith's user avatar
  • 61
1 vote
1 answer
80 views

Using composition in patches / install scripts

TL;DR: Is there a way to declare virtual types and different arguments in di.xml of a module and have that configuration be picked up when the module gets installed without calling bin/magento module:...
Marius's user avatar
  • 198k
0 votes
1 answer
786 views

How does Magento 2 sku generated automatically?

I want to know how does Magento 2 sku generated automaticlly. I wonder when I type product name while creating new product in admin then its sku is automatically typed in sku field. I researched ...
Arshad Hussain's user avatar

1
2 3 4 5