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

    [Résolu] Définir une catégorie par défaut pour les articles virtuemart

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

    La solution ne fonctionne pas :( ...cela dit rien de grave si c'est prévu dans la prochaine MAJ.
    $document->addHeadLink(jRoute::_($product->canonical), 'canonical', 'rel', '');
    l'url reste relative, j'ai regardé dans les catégories ça ne marche pas de la même manière :
    	public function setCanonicalLink($tpl,$document,$categoryId,$manId){
    		// Set Canonic link
    		if (!empty($tpl)) {
    			$format = $tpl;
    		} else {
    			$format = vRequest::getCmd('format', 'html');
    		}
    		if ($format == 'html') {
    
    			// remove joomla canonical before adding it
    			foreach ( $document->_links as $k => $array ) {
    				if ( $array['relation'] == 'canonical' ) {
    					unset($document->_links[$k]);
    					break;
    				}
    			}
    
    			$link = 'index.php?option=com_virtuemart&view=category';
    			if($categoryId!==-1){
    				$link .= '&virtuemart_category_id='.$categoryId;
    			}
    			if($manId!==-1 and !empty($manId)){
    				$link .= '&virtuemart_manufacturer_id='.$manId;
    			}
    
    			$document->addHeadLink( JRoute::_($link, FALSE) , 'canonical', 'rel', '' );
    
    		}
    	}

    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 10 ans 8 mois - il y a 10 ans 8 mois #12 par doc_denis
    heu bah non, les catégories sont en chemin relatif, testé sur 3 sites en VM 3.0.12
    c'est valable également sur la démo officielle de VM
    <link href="/product-variants" rel="canonical" />

    idem sur les produits :
    <link href="/product-variants/pattern-product-variants-detail" rel="canonical" />

    même chose sur la démo alatak en VM3 :D
    Dernière édition: il y a 10 ans 8 mois par doc_denis. Raison: ajout demo alatak

    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 10 ans 8 mois #13 par studio42
    JRoute::_($product->canonical, FALSE)
    ou un truc dans le genre

    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.

    Plus d'informations
    il y a 10 ans 8 mois - il y a 10 ans 8 mois #14 par alatak
    Bonjour,
    Voila, je viens de le faire, et c'est ok pour la prochaine version de VM
    Il faut ajouter JUri::getInstance()->toString(array('scheme', 'host', 'port')) devant le jroute pour avoir une URL absolue:
    $document->addHeadLink( JUri::getInstance()->toString(array('scheme', 'host', 'port')).JRoute::_($this->product->link) , 'canonical', 'rel', '' );
    Dernière édition: il y a 10 ans 8 mois par alatak.
    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 10 ans 8 mois #15 par doc_denis
    Bonjour,

    YES, Alatak ! ...merci
    ça marche pour les produits avec ça dans : components/com_virtuemart/views/productdetails/view.html.php
    // Set Canonic link
    if($isCustomVariant !==false and !empty($isCustomVariant->usecanonical) and !empty($product->product_parent_id)){
    $parent = $product_model ->getProduct($product->product_parent_id);
    $document->addHeadLink( JUri::getInstance()->toString(array('scheme', 'host', 'port')).jRoute::_($parent->canonical), 'canonical', 'rel', '');
    				} else {
    $document->addHeadLink( JUri::getInstance()->toString(array('scheme', 'host', 'port')).jRoute::_($product->canonical), 'canonical', 'rel', '');
    				}

    et ça pour les catégories dans : components/com_virtuemart/views/category/view.html.php
    ligne 348
    $document->addHeadLink( JUri::getInstance()->toString(array('scheme', 'host', 'port')).JRoute::_($link, FALSE) , 'canonical', 'rel', '' );

    cool, avec ça logiquement les moteurs devrait-être content ...nous aussi ;)

    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 10 ans 8 mois #16 par doc_denis
    Cependant, le sujet de départ à glissé car la question du départ est comment fixer la catégorie par défaut.

    Dans l'état actuel, qu'est ce qui décide la catégorie du canonical ?

    Ce que je ne trouve pas normal ou évident, c'est de ne pas pouvoir décider soit-même avec le choix d'une catégorie par défaut.

    (oui, excusez-moi, c'est un avis personnel, qui peut-être contraire à la règle du forum, voir : " Règles de rédaction ")
    mais pour faire avancer le schmilblick, il faut pourvoir proposer avec une argumentation.

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

    Plus d'informations
    il y a 10 ans 8 mois #17 par alatak
    Bonjour

    C'est VM qui prend la première catégorie et decide que c'est la conical.

    Ca a quand meme une certaine logique: tu mets en premier les categories importantes.

    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 10 ans 8 mois - il y a 10 ans 8 mois #18 par doc_denis
    Bonjour Valérie,

    oui. j'ai bien entendu, mais voici mon exemple avec une structure de ce type :

    bouteilles 1L
    --- rondes
    --- triangles pas pratique lol
    bouteilles 2L
    bouteilles 3L
    accessoires bouteilles
    --- bouchons
    --- tires bouchons

    si je mets un bouchon de liège dans bouchons et dans bouteilles 1L, et bien ...c'est bouteilles 1L qui gagne :(
    "je n'ai aucun moyen de forcer la catégorie par défaut"

    alors que "moi" je désire qu'il soit en 1er dans "bouchons" car c'est un bouchon :)

    voici ma vision d'une catégorie par défaut, et on peux imaginer que si l'utilisateur ne choisis pas de catégorie par défaut dans ce cas, VM choisis selon ses propres critères.
    Dernière édition: il y a 10 ans 8 mois par doc_denis. Raison: un mot en trop

    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 10 ans 8 mois - il y a 10 ans 8 mois #19 par doc_denis
    Merci Valérie pour ton implication et les conseils.
    Dernière édition: il y a 10 ans 8 mois par doc_denis. Raison: j'ai enlever le lien ...pour ceux qui avaient lu avant :)

    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 10 ans 7 mois #20 par studio42
    Salut doc denis,
    Est-ce que tu as essayé d'enregistrer les catégories en 2 fois?
    D'abord sauvegarder le produit avec 1 seul(la catégorie par défaut) puis ajouter le reste des catégories et sauvegarder ?

    Cordialement,
    Patrick

    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.