Joomladay francophone 2018 à Paris 18 et 19 mai

Liste vs detail articles

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Liste vs detail articles

    Bonjour,

    Voila j'essaye de modifier virtuemart comme suit ...
    Grace au menu acces aux articles par categorie. Je veus supprimer la possibilité d'acceder au fiche produit "individuel". Cependant j'ai besoin de recuperer les données description longue et autre dans le fichier browse_XX que j'ai modifier.

    J'ai donc recuperer les noms de variables dans flypage.php pour les mettre dans mon browse_XX.php

    Code:
    
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td colspan="3"><a style="font-size: 16px; font-weight: bold;" href="{product_flypage}">{product_name}</a></td>
      </tr>
      
      
      <tr>
        <td width="20%">
    		<a href="{product_flypage}">
              <img src="{product_thumb_image}" {image_height} {image_width} border="0" alt="{product_name}" /></a>
    		  </td>
        <td colspan="2">
    	{product_description}<br/><span style="font-style: italic;">{file_list}</span>
    		{product_s_desc}<br />
          <a style="font-size: 9px; font-weight: bold;" href="{product_flypage}">[{product_details...}...]</a>
    	</td>
      </tr>
      <tr>
      <td>&nbsp;</td>
    	  <td colspan="2">{product_type}</td>
    	</tr>
    	<tr>
    	<td>&nbsp;</td>
    	  <td colspan="2"><hr />{product_reviews}</td>
    	</tr>
    	<tr>
    	<td>&nbsp;</td>
    	  <td colspan="2">{product_reviewform}<br /></td>
    	</tr>
    	<tr>
    	<td>&nbsp;</td>
    	  <td colspan="é">{related_products}<br /></td>
    	</tr>
      
      
      
      <tr align="right" valign="bottom">
        <td colspan="3" align="right" valign="bottom">{product_price}<br />{form_addtocart}</td>
      </tr>
      
      
      <tr>
        <td colspan="3" ><hr /></td>
      </tr>
    </table>

    Le resultat n'est pas genial .....
    Garden Tools


    Ladder

    Ladder {product_description}
    {file_list} A really long ladder to reach high places.
    [Détails du produit...]

    {product_type}
    {product_reviews}
    {product_reviewform}
    {related_products}
    En italique les variable de la liste sont bien remplacé mais celle issu de la fiche. Les variables charger pour la fiche ne le sont pas pour la liste.

    Comment puis-je remedier à cela ??
    et avoir dans ma liste toute les données lié à un articles.
    J'arrive pas à trouver !!
    Avez vous une idée ?
    Merci
    Nicolas

  • #2
    Rbjrs,

    Je pense avoir trouver un debut de reponse, que je vous soumet esperant quelque commentaires .....................
    Donc pour le principe
    - modif de la requete (fic:shop_browse_queries.php)
    - lecture et affectation a une variable pour chaque champ (fic:shop.browse.php)
    - remplacement dans le template de la variable {......} par la variable precedement affecté. (fic:shop.browse.php)
    Fichier à modifier pour avoir tous les champs de l'articles dans la liste comme dans la fiche. explication pour la description longue seulement

    FIC : shop_browse_queries.php

    Remplacer ligne 26
    Code:
    $fieldnames = "`product_name`,`products_per_row`,`category_browsepage`,`category_flypage`,`#__{vm}_category`.`category_id`, #__{vm}_product`.`product_id`,`product_full_image`,`product_thumb_image`,`product_s_desc`,`product_parent_id`,`product_publish`,`product_in
    etc .....
    par
    Code:
    $fieldnames = "*";
    FIC : shop.browse.php
    Ajouter au environ de la ligne 373
    Code:
    $product_description = $db_browse->f("product_desc");  
      if( (str_replace("<br />", "" , $product_description)=='') && ($product_parent_id!=0) ) {
        $product_description = $dbp->f("product_desc"); // Use product_desc from Parent Product
      }
    FIC : shop.browse.php
    Ajouter au environ de la ligne 463
    Code:
    $product_cell = str_replace( "{product_description}", $product_description, $product_cell );
    Je pense qu'en repetant ceci pour chaque champs je les aurais tous dans ma liste.

    Un avis, commentaires ou autres ?

    J'ai besoin d'un conseil aviser, car j'ai deja eu des pb en modifiant des requetes en mettant une * sur du multitable.

    Merci
    @+
    Nicolas

    Commentaire


    • #3
      un autre début de réponse ici et ds un autre post qui doit etre lié de mémoire (ou trouves un autre post qui fait référence à celui ci aussi).

      http://forum.joomla.fr/showthread.ph...hlight=product

      tt n'est pas là pour toi mais si tu trouves la solution pour les autres champs, d'autres seront preneur de ton exp.

      Commentaire


      • #4
        Merci de cette reponse,

        Je dois dire que pour l'instant je n'ai besoin que de la description longue, mais je dois modifier aussi le lien vers la flypage pour avoir un popup de l'image a la place. Je ne veux pas utiliser les fiches produit individuelle mais seulment les listes.

        Je reviendrais pour mettre ça, quand ca marchera.

        Nicolas

        Commentaire


        • #5
          ca pourrait servir des fois c'est sur. c'est aussi les attributs et autres listes déroulantes qu'il faudra ajouter aussi. ca me tente bien d'avoir des catégorie comme ca aussi tiens !

          faudrait que je m'y colle à moins que qqu'un ait déjà bosser sur tous ces champs ??

          Commentaire


          • #6
            Bonjour @ tous,

            Encore quelque champs de plus : addtocart qui comprend les attributs

            à ajouter dans shop.browse.php

            au debut avec les autres .
            require_once(CLASSPATH . 'ps_product_attribute.php' );
            $ps_product_attribute = new ps_product_attribute;

            ligne 385 environ et selon modif apporté
            /** ADDTOCART */
            $product_id = intval($db_browse->f("product_id"));

            /* ADD-TO-CART */
            $addtocart = "<div>
            <form action=\"". $mm_action_url."index.php\" method=\"post\" name=\"addtocart\" id=\"addtocart\">"
            .$ps_product_attribute->list_attribute( $product_id )
            // added for the advanced attribute modification
            .$ps_product_attribute->list_advanced_attribute( $product_id )
            // end added for advanced attribute modification
            .$ps_product_attribute->list_custom_attribute( $product_id );
            // end added for custom attribute modification
            if (USE_AS_CATALOGUE != '1'
            && $product_price != ""
            && !stristr( $product_price, $VM_LANG->_PHPSHOP_PRODUCT_CALL )
            && $auth['show_prices']) {
            $quantity = mosGetParam( $_REQUEST, 'quantity', 1 );
            $addtocart .= "
            <p><label for=\"quantity\" style=\"vertical-align: middle;\">".$VM_LANG->_PHPSHOP_CART_QUANTITY.":</label>
            <input type=\"text\" class=\"inputbox\" size=\"4\" id=\"quantity\" name=\"quantity\" value=\"$quantity\" style=\"vertical-align: middle;\" />&nbsp;
            <input type=\"submit\" ";
            $addtocart .= "style=\"text-align:center;background-position:bottom left;width:160px;height:35px;cursorointer;border:none;font-weight:bold;font-family:inherit;background: url('". IMAGEURL ."ps_image/".PSHOP_ADD_TO_CART_STYLE ."') no-repeat left center transparent;vertical-align: middle;\" ";
            $addtocart .= "value=\"".$VM_LANG->_PHPSHOP_CART_ADD_TO ."\" title=\"".$VM_LANG->_PHPSHOP_CART_ADD_TO."\" />
            </p>
            <input type=\"hidden\" name=\"flypage\" value=\"shop.$flypage\" />
            <input type=\"hidden\" name=\"page\" value=\"shop.cart\" />
            <input type=\"hidden\" name=\"manufacturer_id\" value=\"$manufacturer_id\" />
            <input type=\"hidden\" name=\"category_id\" value=\"$category_id\" />
            <input type=\"hidden\" name=\"func\" value=\"cartAdd\" />
            <input type=\"hidden\" name=\"option\" value=\"$option\" />
            <input type=\"hidden\" name=\"Itemid\" value=\"$Itemid\" />";
            }
            $addtocart .= "</form>
            </div>";
            puis ligne 570 environ ......
            $product_cell = str_replace( "{addtocart}", $addtocart, $product_cell );
            Sans oublier dans votre browse_XX
            {addtocart}

            Voili voila reste à tester

            Commentaire


            • #7
              Bonsoir
              j'ai inserer le tag {product_desc} dans le shop.browse.php
              Code:
              $product_description = $db_browse->f("product_desc");  
                if( (str_replace("<br />", "" , $product_description)=='') && ($product_parent_id!=0) ) {
                  $product_description = $dbp->f("product_desc"); // Use product_desc from Parent Product
                }
              ça marche impeccable
              j'aimerais maintenant pouvoir lire le player grace au mambot quel est la ligne de code a rajouter dans ce cas ? celui de shop.produits_details.php n'est pas adapté
              Code:
                  //***** start : modifcation for mambot parsing
              	global $_MAMBOTS;
              	$_MAMBOTS->loadBotGroup( 'content' );
              	$row->text = $template;
              	$results = $_MAMBOTS->trigger( 'onPrepareContent', array( &$row, &$params, $page ), true );
              	$template = $row->text;
                 //***** end : modification for mambot parsing
              Avez vous une petite idée ???
              merci à vous

              Commentaire

              Annonce

              Réduire
              1 sur 2 < >

              C'est [Réglé] et on n'en parle plus ?

              A quoi ça sert ?
              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
              Comment ajouter la mention [Réglé] à votre discussion ?
              1 - Aller sur votre discussion et éditer votre premier message :


              2 - Cliquer sur la liste déroulante Préfixe.

              3 - Choisir le préfixe [Réglé].


              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

              2 sur 2 < >

              Assistance au forum - Outil de publication d'infos de votre site

              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

              UTILISER À VOS PROPRES RISQUES :
              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

              Problèmes connus :
              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

              Installation :

              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

              Archive zip : https://github.com/AFUJ/FPA/zipball/master

              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
              et remplacer www. votresite .com par votre nom de domaine


              Exemples:
              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
              Télécharger le script fpa-fr.php dans: /public_html/
              Pour executer le script: http://www..com/fpa-fr.php

              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
              Télécharger le script fpa-fr.php dans: /public_html/cms/
              Pour executer le script: http://www..com/cms/fpa-fr.php

              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
              Voir plus
              Voir moins
              Travaille ...
              X