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

cherche formule si le produit à des produits enfants alors affiche "à partir de"

  • doc_denis
  • Portrait de doc_denis
  • Hors Ligne
  • Membre senior
  • Membre senior
  • ...oui, la photo date :)
Plus d'informations
il y a 9 ans 2 mois - il y a 9 ans 2 mois #1 par doc_denis
Bonjour,
je cherche une formule du style si le produit à des produits enfant alors affiche "à partir de" à la place de "prix unitaire"
merci pour les pistes ;)
Dernière édition: il y a 9 ans 2 mois par doc_denis.

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

  • doc_denis
  • Portrait de doc_denis
  • Hors Ligne
  • Membre senior
  • Membre senior
  • ...oui, la photo date :)
Plus d'informations
il y a 9 ans 2 mois - il y a 9 ans 2 mois #2 par doc_denis
Pour le moment, j'ai trouver quelques trucs, mais ça ne fonctionne pas encore.

en l'état, je cherche à afficher un texte différent selon si le produit à des enfants ou si il n'en a pas.
pour le moment je test le code sur la page produit.

j'ai trouver un début de code, mais sans succès :
if (!$product->hasChildren = true) {echo "avec enfants";}

j'ai aussi tenté un truc comme ça, mais ça ne fonctionne pas non plus :
	if ($this->product->childPrice > 1) ;
	echo "<br>test";
Dernière édition: il y a 9 ans 2 mois par doc_denis.

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 9 ans 2 mois #3 par studio42
il y a cette fonction $productModel->getUncategorizedChildren ($customfield->withParent);
Dans ton cas
$productModel->getUncategorizedChildren (false);
Qui retourne un tableau avec les ids des produits enfants.
Il suffit de tester si le resultat est vide et changer le clés de langue selon le cas dans l'affichage du prix

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!

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

  • doc_denis
  • Portrait de doc_denis
  • Hors Ligne
  • Membre senior
  • Membre senior
  • ...oui, la photo date :)
Plus d'informations
il y a 9 ans 2 mois #4 par doc_denis
Merci Patrick,

j'ai passé la journée sur ce truc sans arrivé à obtenir un vrai truc qui fonctionne :(

j'ai re-testé le code d'un de tes posts :
dans /com_virtuemart/sublayouts/prices.php

forum.virtuemart.net/index.php?topic=133239.msg466031#msg466031
	if (isset($product->childPrice)) $label = 'COM_VIRTUEMART_PRODUCT_SALESPRICE';
	else $label = 'COM_VIRTUEMART_CHILD_PRODUCT_SALESPRICE';
	echo $currency->createPriceDiv ('salesPrice', $label, $product->prices);
ça fonctionne presque, car ce n'est pas seulement pour les produits qui ont des enfants.

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 9 ans 2 mois #5 par studio42
$productModel->getUncategorizedChildren (false);
t'indique si le produit à des enfants.
dans sublayouts/prices.php
$product_model = VmModel::getModel('product');
$product_model->setId($product->virtuemart_product_id);
	if (empty($product_model->getUncategorizedChildren (false))) $label = 'COM_VIRTUEMART_PRODUCT_SALESPRICE';
	else $label = 'COM_VIRTUEMART_PRODUCT_FROM_SALESPRICE';
	echo $currency->createPriceDiv ('salesPrice', $label, $product->prices);

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!
Les utilisateur(s) suivant ont remercié: doc_denis

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

  • doc_denis
  • Portrait de doc_denis
  • Hors Ligne
  • Membre senior
  • Membre senior
  • ...oui, la photo date :)
Plus d'informations
il y a 9 ans 2 mois - il y a 5 ans 3 mois #6 par doc_denis
Bravo et merci, c'est presque magique ;-)
ça tourne du premier coup avec :
   // modif prenom, Un grand merci à Patrick studio42 pour LA SOLUTION
   // ici : http://www.virtuemart.fr/forum/produits-vm3/1222-cherche-formule-si-le-produit-a-des-produits-enfants-alors-affiche-a-partir-de#5828

   // Modifie la phrase "prix" par "à partir de" pour les produits qui ont de enfants.
   // prealablement, il faudra créer une clé : "COM_VIRTUEMART_CHILD_PRODUCT_SALESPRICE" dans traduction > substitutions
// y mettre comme valeur "à partir de" ...il ne faut pas oublier ...LOL
   // etape 2 éditer : templates/ton_template/html/com_virtuemart/sublayouts/prices.php
   // ne pas oublier de commenter la ligne comme ci dessous et ajouter la suite.

   //echo $currency->createPriceDiv ('salesPrice', 'COM_VIRTUEMART_PRODUCT_SALESPRICE', $product->prices);
   
   $product_model = VmModel::getModel('product');
   $product_model->setId($product->virtuemart_product_id);
   if (empty($product_model->getUncategorizedChildren (false))) $label = 'COM_VIRTUEMART_PRODUCT_SALESPRICE';
   else $label = 'COM_VIRTUEMART_CHILD_PRODUCT_SALESPRICE';
   echo $currency->createPriceDiv ('salesPrice', $label, $product->prices);
   
   // fin modif prenom ->   ...Merci Patrick

Valérie, si tu trouve ça opportun, il faudrait proposer d'ajouter cette fonction nativement dans VM
Dernière édition: il y a 5 ans 3 mois par doc_denis.

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