En visitant ce site, vous acceptez l'utilisation de cookies afin de vous proposer les meilleurs services possibles.

??? Surcharge Override Categories, Pourquoi, Comment ???

Plus d'informations
il y a 8 ans 8 mois - il y a 8 ans 8 mois #11 par Melix
Retour au sujet général : autre Comment ??? trouvé et pas encore testé via l'administration de Joomla pour ceux qui aiment l'environnement graphique ::

docs.joomla.org/J3.x:How_to_use_the_Template_Manager
Dernière édition: il y a 8 ans 8 mois par Melix.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 8 mois #12 par Melix
Sinon, admettons que l'on veuille retravailler le fichier .../administrator/components/com_virtuemart/helpers/mediahandler.php, pour supprimer quelques lignes.
J'imagine que tout ce qui touche au dossier .../administrator/ ne peux pas être surchargé facilement, isn't it ?

Voici ma conception du truc :
1) copie de "mediahandler.php" dans le même dossier, puis rename "mediahandler-original.php" (juste au cas ou il faudrait revenir en arrière).
2) modification des lignes dans "mediahandler.php".
3) copie de "mediahandler.php" modifié, hein, et rename "mediahandler-modif.php" (pour le retrouver lors d'une mise à jour).

Lorsque une mise a jour interviendra, "mediahandler-modif.php" devrait toujours être présent non ?
Il resterai plus qu'a rechercher "*-modif" pour retrouver tous les fichiers ainsi modifiés

Ca nous fait donc : "mediahandler.php", "mediahandler-original.php" et "mediahandler-modif.php" : 3 fichiers pour une utilisation + simple.

Qui dit mieux ???

Connexion ou Créer un compte pour participer à la conversation.

  • studio42
  • Portrait de studio42
  • Hors Ligne
  • Modérateur
  • Modérateur
  • Dev Joomla & Virtuemart
Plus d'informations
il y a 8 ans 8 mois - il y a 8 ans 8 mois #13 par studio42
Il est possible de faire un plugin system et charger le fichier, au démarrage, car normalement VM vérifie toujours que la class existe donc aucun hack nécessaire.
Par contre il faut voir si cela affecte la vitesse sachant qu'il est dans certain cas nécessaire de charger d'autres fichiers/class selon le cas.

www.st42.fr Truc et astuce Joomla et virtuemart
shop.st42.fr téléchargement Joomla et extension pour virtuemart
Gratuit ! Nettoyage des medias : shop.st42.fr/fr/produits/virtuemart-netoyage-des-medias.htm Nouveau!
Dernière édition: il y a 8 ans 8 mois par studio42.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 8 ans 8 mois - il y a 8 ans 8 mois #14 par Melix
Oui, en effet !
Je n'osait pas aborder le sujet par ce versant abrupt...

Voici comment j'ai fait pour ajouter une unité à mon produit = "Rouleau"
(de base, le choix est limité :kg;100ml;litre;cubm,sm;100g;m...)

Il y a 2 fichiers à modifier (+ la Base De Données en option)

OPTION : Si le nom de l'unité est suppérieur à 8 caractères, il faut faire un changement dans la BDD de la structure de : 'jos_virtuemart_products'.'product_unit'.
Passer de VARCHAR ( 8 ) à VARCHAR( 32 ) pour avoir de la marge .

Fichier 1:

shopfunctions.php ( .../administrator/components/com_virtuemart/helpers/ )
copié et renommé en shopfunctions-original.php (c'est au cas ou ça tournerai mal)

Modif de shopfunctions.php :

330 $weight_unit_default = array(
331 'KG' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_KG')
332 , '100G' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_100G')
333 , 'M' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_M')
334 , 'SM' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_SM')
335 , 'CUBM' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_CUBM')
336 , 'L' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_L')
337 , '100ML' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_100ML')
338 );

Dans cette liste restreinte d'unités utilisables, on peut y ajouter celles que l'on veut (à la suite)de cette façon (notez la virgule en debut de ligne...) :

, 'NOM_UNITE_UTILISEE_DANS_LA_BASE_DE_DONNEES' => vmText::_ ('NOM_UNITE_UTILISEE_DANS_FICHIER_LANGUAGE')

Et hop :

330 $weight_unit_default = array(
331 'KG' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_KG')
332 , '100G' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_100G')
333 , 'M' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_M')
334 , 'SM' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_SM')
335 , 'CUBM' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_CUBM')
336 , 'L' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_L')
337 , '100ML' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_100ML')
338 , 'ROLL' => vmText::_ ('COM_VIRTUEMART_UNIT_SYMBOL_ROLL')
339 );

Sauvegarde du fichier 'shopfunctions.php' , copié et renommé 'shopfunctions-modif.php' (pour le retrouver le jour ou il serait écrasé)

Fichier 2 ( y en a 2 ):

fr-FR.com_virtuemart.ini ( .../language/fr-FR/ ) (GB ou autre aussi)
fr-FR.com_virtuemart.ini ( ...administrator/language/fr-FR/ ) (GB ou autre aussi)

L'override des fichiers language, en utf8 sans BOM ne fonctionnant pas sur ma machine, ce sera la même procédure de sauvegarde par 3 fichiers :
l'original, l'utilisable, le modifié ...

COM_VIRTUEMART_UNIT_SYMBOL_ROLL="Rouleau"


De cette façon, avec un 'vaderetro-override' on peut donc ajouter les unités voulues sans limitation (un peu comme avant mais en mettant les mains dans le cambouis) .

Y a t'il une autre solution ?
Dernière édition: il y a 8 ans 8 mois par Melix.

Connexion ou Créer un compte pour participer à la conversation.