Trong khi tùy chỉnh đơn hàng, Magento sử dụng plugin để xác minh đơn hàng đã được đặt hay chưa. Sửa đổi tệp lõi không phải là một tùy chọn thích hợp. Trong tình huống này, bạn có thể ghi đè các phương thức plugin cốt lõi
Hãy đi sâu vào các bước để Ghi đè Phương thức Plugin cốt lõi trong Magento 2
nội dung
Các bước để ghi đè phương pháp plugin cốt lõi trong Magento 2
Bước 1. Tạo tệp theo đường dẫn bên dưới
ứng dụng\code\Nhà cung cấp\Tiện ích mở rộng\etc\di. xml
Bây giờ, thêm đoạn mã dưới đây
1
2
3
4
5
6
7
Bước 2. Bây giờ hãy chuyển đến đường dẫn bên dưới
app\code\Vendor\Extension\Plugin\StockState\CheckQuoteItemQtyPlugin. php
Và thêm mã như sau
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
objectFactory = $objectFactory;
$định dạng->này = $format;
$cái này->là Sản phẩm có thể bán được cho số lượng được yêu cầu = $areProductsSalableForRequestedQty;
$này->isProductSalableForRequestedQtyRequestInterfaceFactory = $isProductSalableForRequestedQtyRequestFactory;
$này->getSkusByProductIds = $getSkusByProductIds;
$this->stockResolver = $stockResolver;
$này->quản lý cửa hàng = $storeManager;
$này->backOrderNotifyCustomerCondition = $backOrderNotifyCustomerCondition;
}
/**
* Thay thế kiểm tra mục trích dẫn kế thừa
*
* @param StockStateInterface $subject
* @param \Đóng $proceed
* @param int $productId
* @param float $itemQty
* @param float $qtyToCheck
* @param float $origQty
* @param int. null $scopeId
*
* @return DataObject
* @throws LocalizedException
* @throws NoSuchEntityException
* @SuppressWarnings[PHPMD. UnusedFormalParameter]
*/
chức năng công khai quanhCheckQuoteItemQty[
Giao diện StockState $chủ đề,
\Kết thúc $tiến hành,
$productId,
$số lượng mặt hàng,
$số lượng cần kiểm tra,
$origQty,
$scopeId = null
] {
$kết quả = $this->objectFactory->create[];
$kết quả->setHasError[false];
chết['plugin cốt lõi']format->getNumber[$qty];
}
trả lại $số lượng;
}
}
Phần kết luận
Bằng cách này, bạn có thể Ghi đè Plugin lõi trong Magento 2. Kiểm tra blog liên quan – Cách ghi đè mã lõi bằng Plugin tùy chỉnh trong Magento 2 .
Nếu bạn gặp bất kỳ khó khăn nào, hãy kết nối với tôi qua hộp bình luận. Chia sẻ bài viết với bạn bè của bạn và hẹn gặp lại trong bài viết tiếp theo