J'ai remplacé le texte "Ajouter au panier" par "Je le veux" en remplaçant " vendor\magento\module-catalog\view\frontend\templates\product\list.phtml
".
Mais, lorsque je clique sur le bouton "Je veux ceci" (c'est-à-dire "Ajouter au panier"), le produit est ajouté au panier, puis à nouveau le texte "Ajouter au panier" apparaît sur le bouton.
Je pense que le produit est ajouté via l'appel ajax, c'est pourquoi un texte nouvellement ajouté ne s'affiche pas après l'appel ajax et le texte "Ajouter au panier" s'affiche.
J'ai essayé ceci:
J'ai créé une extension personnalisée Ved_Mymodule .
J'ai vérifié que l'extension est active.
Après cela, j'ai suivi ces étapes:
app / code / Ved / Mymodule / view / frontend / requirejs-config.js:
var config = {
map: {
'*': {
catalogAddToCart:'Ved_Mymodule/js/customCatalogAddToCart'
}
}
};
app / code / Ved / Mymodule / view / frontend / web / js / customCatalogAddToCart.js:
define([
'jquery',
'mage/translate',
'jquery/ui'
], function($, $t) {
"use strict";
$.widget('Ved_Mymodule.customCatalogAddToCart',$.mage.catalogAddToCart, {
//Override function
disableAddToCartButton: function(form) {
var addToCartButtonTextWhileAdding = this.options.addToCartButtonTextWhileAdding || $t('Adding...');
var addToCartButton = $(form).find(this.options.addToCartButtonSelector);
addToCartButton.addClass(this.options.addToCartButtonDisabledClass);
addToCartButton.find('span').text(addToCartButtonTextWhileAdding);
addToCartButton.attr('title', addToCartButtonTextWhileAdding);
console.log('Hello 1');
},
enableAddToCartButton: function(form) {
var addToCartButtonTextAdded = this.options.addToCartButtonTextAdded || $t('Added');
var self = this,
addToCartButton = $(form).find(this.options.addToCartButtonSelector);
addToCartButton.find('span').text(addToCartButtonTextAdded);
addToCartButton.attr('title', addToCartButtonTextAdded);
setTimeout(function() {
var addToCartButtonTextDefault = 'heya..'; //self.options.addToCartButtonTextDefault || $t('Add to Cart..');
addToCartButton.removeClass(self.options.addToCartButtonDisabledClass);
addToCartButton.find('span').text(addToCartButtonTextDefault);
addToCartButton.attr('title', addToCartButtonTextDefault);
}, 1000);
console.log('Hello 2');
}
});
return $.Ved_Mymodule.customCatalogAddToCart;
});
J'essaie d'imprimer des messages factices dans la console.
Après cela: j'ai exécuté le déploiement de contenu statique. Réindexez les données. Cache nettoyé et vidé.
Mais aucun changement n'apparaît.
requirejs-config.js
et corriger l'emplacementapp/code/Ved/Mymodule/view/frontend/requirejs-config.js
.