Nous ne répondons seulement qu'aux sujets dont l'auteur a complété sa signature [Lire]


Problème de langue dans le module minislider

Ce forum est destiné uniquement aux modules de langues.

Problème de langue dans le module minislider

Messagepar cricri92 » 17 Juin 2011, 07:32

Bonjour
J'ai trouvé sur le forum anglais un module permettant de faire défiler les produits d'une boutique. Ce module se nomme "Minislider". voir exemple sur ma boutique : http://www.decapod.fr/boutique. il fonctionne très bien, mais le problème est qu'il inscrit mes produits en anglais et non en français, car je travail actuellement sur la traduction de mon site en langue anglaise. La langue par défaut dans opencart est le français. Voici le code de la partie catalog.
Code: Tout sélectionner
<?php
class ControllerModuleminislider extends Controller {
   public function index() {

      if ($this->config->get('iconmodule_status')) {
         $this->data['iconmodule'] = html_entity_decode($this->config->get('iconmodule_code'), ENT_QUOTES);
      } else {
         $this->data['iconmodule'] = '';
      }

      $this->load->model('catalog/minislider');
      $this->load->model('catalog/product');
      $this->load->model('catalog/review');
      $this->load->model('tool/seo_url');
      $this->load->model('tool/image');
      
      $this->data['heading_title'] = htmlspecialchars_decode($this->config->get('minislider_title'));
      $this->data['show_category'] = $this->config->get('minislider_category');
      $this->data['show_effect'] = $this->config->get('minislider_effect');
      
      $this->data['products'] = array();

      foreach ($this->model_catalog_minislider->getRandomProductByCategoryId($this->data['show_category']) as $result) {         
         if ($result['image']) {
            $image = $result['image'];
         } else {
            $image = 'no_image.jpg';
         }
         
         $rating = $this->model_catalog_review->getAverageRating($result['product_id']);   
         
         $special = FALSE;
         
         $discount = $this->model_catalog_product->getProductDiscount($result['product_id']);
         
         if ($discount) {
            $price = $this->currency->format($this->tax->calculate($discount, $result['tax_class_id'], $this->config->get('config_tax')));
         } else {
            $price = $this->currency->format($this->tax->calculate($result['price'], $result['tax_class_id'], $this->config->get('config_tax')));
         
            $special = $this->model_catalog_product->getProductSpecial($result['product_id']);
         
            if ($special) {
               $special = $this->currency->format($this->tax->calculate($special, $result['tax_class_id'], $this->config->get('config_tax')));
            }                  
         }
            
             $this->data['products'][] = array(
               'name'    => $result['name'],
            'model'   => $result['model'],
               'rating'  => $rating,
            'stars'   => sprintf($this->language->get('text_stars'), $rating),
            'thumb'   => $this->model_tool_image->resize($image, $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')),
               'price'   => $price,
            'special' => $special,
            'href'    => $this->model_tool_seo_url->rewrite(HTTP_SERVER . 'index.php?route=product/product&product_id=' . $result['product_id'])
             );
      }
      
      if (!$this->config->get('config_customer_price')) {
         $this->data['display_price'] = TRUE;
      } elseif ($this->customer->isLogged()) {
         $this->data['display_price'] = TRUE;
      } else {
         $this->data['display_price'] = FALSE;
      }
      
      $this->id       = 'minislider';
      $this->template = $this->config->get('config_template') . '/template/module/minislider.tpl';
      $this->render();
   }
}
?>

Quelqu'un pourrait il me dire ce qu'il manque dans ce code pour avoir la description de mes produits en français.
Grand merci par avance.
Dernière édition par cricri92 le 23 Juin 2011, 05:31, édité 2 fois.
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Re: Probleme de langue dans le module minislider

Messagepar LeorLindel » 18 Juin 2011, 10:56

cricri92 a écrit:Bonjour
J'ai trouvé sur le forum anglais un module permettant de faire défiler les produits d'une boutique
Il aurait été logique que tu mettes le lien qui permet de télécharger ce module !!
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar LeorLindel » 19 Juin 2011, 12:37

Je vois que tu as solutionné ton problème, pourrais-tu donner l'explication pour ceux qui rencontrerait ce manque ainsi que mettre |Résolu] dans le titre de ton sujet.

Nous t'en remercions.
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar Fred » 19 Juin 2011, 21:19

Hello,

Je suis volontier preneur pour le lien vers ton module Minislider (j'ai cherché en vain..)

Merci!
Version 1.4.9 française / Template Black Village / Hébergé par Easy-hébergement
Fred
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 17
Inscription: 19 Déc 2010, 00:19

Re: Problème de langue dans le module minislider

Messagepar cricri92 » 21 Juin 2011, 08:48

J'ai trouvé ce module à cette adresse :
http://eliesdesign.com/index.php?route=product/category&path=48_87
Par contre je n'ai pas résolu mon problème, car les produits qui s'affichent en français sont en faite dans la partie anglaise, dès que je mets le titre du produit dans la partie anglaise, c'est le nom en anglais qui apparait et non le titre français.
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Re: Problème de langue dans le module minislider

Messagepar LeorLindel » 21 Juin 2011, 09:18

Je vais tester ce module et voir les modifications ou corrections à effectuer.
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar LeorLindel » 21 Juin 2011, 13:27

Déjà il y a des oublis ou omissions et du code inutile au niveau des langues (pas les fichiers "language" mais le fonctionnement des langues), puisque dans les paramétrages du module, il y a dans la partie admin le paramètre "Titre" à remplir.
Or celui-ci n'est pas en multilingue puis se trouve déjà paramétré dans le fichier de langue de la boutique > catalog/language/english/module/minislider.php.
Ce paramètre étant inutile en l'état, on peut donc, sans souci supprimer :

Dans admin/controller/module/minislider.php, ces lignes :
Code: Tout sélectionner
      if (isset($this->request->post['minislider_title'])) {
         $this->data['minislider_title'] = $this->request->post['minislider_title'];
      } else {
         $this->data['minislider_title'] = $this->config->get('minislider_title');
      }

Puis ces lignes :
Code: Tout sélectionner
         if($this->request->post['minislider_title'] == ''){
            $this->error['warning'] = "You specify a title for your Minislider.";
         }
Dans
admin/language/english/module/minislider.php, ces lignes :
Code: Tout sélectionner
$_['entry_title']   = 'Minislider Title:';
Ainsi que pour les autres langues que vous avez pu créer.
Dans admin/view/template/module/minislider.tpl, ces lignes :
Code: Tout sélectionner
      <tr>
        <td><?php echo $entry_title; ?></td>
        <td><input type="text" name="minislider_title" value="<?php echo $minislider_title; ?>" size="30" /></td>
      </tr>

Comme cela, le titre de la sideboxe correspondra réellement à celui se trouvant dans le fichier de langue.
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar LeorLindel » 21 Juin 2011, 14:44

Il manquait la jointure de la langue dans la requête situé dans le fichier catalog/model/catalog/minislider.php

Chercher cette ligne :
Code: Tout sélectionner
      $sql = "SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id) LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id) WHERE p.status = '1' AND p.date_available <= NOW()";
La remplacer par celle-ci :
Code: Tout sélectionner
      $sql = "SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id) LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id) WHERE p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "'";

Cela devrait fonctionner, maintenant.
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar LeorLindel » 21 Juin 2011, 15:22

Et afin de finaliser le tout, il faut aussi traduire "All" qui se situe dans le menu déroulant du choix des catégories.

Pour ce faire il faut,

Dans le fichier admin/controller/module/minislider.php

Ajouter cette ligne :
Code: Tout sélectionner
      $this->data['text_all'] = $this->language->get('text_all');
Avant cette ligne :
Code: Tout sélectionner
      $this->data['text_enabled'] = $this->language->get('text_enabled');

Dans le fichier admin/language/french/module/minislider.php

Ajouter cette ligne :
Code: Tout sélectionner
$_['text_all']         = '----- Toutes les cat&eacute;gories -----';
Ainsi que dans les autres fichiers de langues.

Dans le fichier admin/view/template/module/minislider.tpl

Chercher ces lignes :
Code: Tout sélectionner
      <tr>
      <td width="30%"><?php echo $entry_category ?></td>
      <td><select name="minislider_category">
            <option value="0"
            <?php
              if($minislider_category == 0) {
                 ?>selected<?php
            }?>
            >All</option>
            <?php
            foreach($entry_categories as $category){
               ?>
                <option value="<?php echo $category['category_id']; ?>" <?php if($category['category_id'] == $minislider_category){ echo "selected"; }?>><?php echo $category['name']; ?></option>
                <?php
            }
            ?>
          </select></td>
      </tr>
Et les remplacer par celles-ci :
Code: Tout sélectionner
     <tr>
      <td width="30%"><?php echo $entry_category; ?></td>
      <td><select name="minislider_category">
        <option value="0"><?php echo $text_all; ?></option>
        <?php foreach ($entry_categories as $category) { ?>
        <?php if ($category['category_id'] == $minislider_category) { ?>
        <option value="<?php echo $category['category_id']; ?>" selected="selected"><?php echo $category['name']; ?></option>
        <?php } else { ?>
        <option value="<?php echo $category['category_id']; ?>"><?php echo $category['name']; ?></option>
        <?php } ?>
        <?php } ?>
      </select></td>
     </tr>
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar cricri92 » 22 Juin 2011, 08:34

Merci LeorLindel pour toutes tes réponses pour ce module.
Je vais rapidement faire les modifications et vous tenir informé.
Encore un grand merci pour toutes tes interventions qui nous aides énormément pour valoriser nos sites internet.
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Re: Problème de langue dans le module minislider

Messagepar cricri92 » 22 Juin 2011, 11:37

J'ai effectué tout les changements, mais le problème maintenant je n'ai plus rien aucun produit qui s’affiche dans le module.
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Re: Problème de langue dans le module minislider

Messagepar cricri92 » 22 Juin 2011, 11:47

L'erreur vient dans la partie admin. Je n'ai pas la rubrique "Toutes catégories" dans le choix, j'ai le message suivant qui s'affiche.
[img]
minislider.PNG
[/img]
Fichiers joints
minislider.PNG
minislider.PNG (11.86 Kio) Vu 3143 fois
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Re: Problème de langue dans le module minislider

Messagepar cricri92 » 22 Juin 2011, 11:56

J'ai trouver l'erreur pour la partie "Admin"
"Toutes les catégories " s'affiche bien, mais j'ai toujours rien dans le module dans la boutique, ni le titre, ni les images. Par contre si je choisi une seule catégorie, là les images défilent dans le module, mais toujours pas de titre du module.
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Re: Problème de langue dans le module minislider

Messagepar LeorLindel » 22 Juin 2011, 12:19

Alors repars sur une version vierge et fait toutes les modifications sauf celle de la traduction de "All" et reviens nous dire ce qu'il en est.
Image
1 - A lire avant de poster un sujet
2 - Politique sur la signature.

Quand le sujet est résolu, pensez à ajouter la petite coche verte Image dans le titre initial en éditant votre premier message et non dans votre dernière réponse.
Merci


Toutes les extensions commerciales (templates ou modules payants) ne peuvent pas faire l'objet d'ouverture de sujet, prière de bien vouloir s'adresser au concepteur en cas de problème ou demande de renseignements.

Seul, on avance plus vite, à plusieurs on avance plus loin.
Avatar de l’utilisateur
LeorLindel
Administrateur
Administrateur
 
Messages: 4233
Inscription: 19 Fév 2010, 12:44
Localisation: Lutéce

Re: Problème de langue dans le module minislider

Messagepar cricri92 » 22 Juin 2011, 12:46

J'ai remis le module dans sa configuration inital, j'ai effectué les changements sauf celle de "ALL", mais idem, pas d'images qui défiles dan "all", mais dans les autres catégories pas de soucis, les images défiles bien et en français.
Version Opencart 1.4.8 Fr sur serveur Infomaniak
Version Opencart 1.5.4.1 sur JOOMLA avec module AceShop
modules additionnels : CMS Categories, Stock report, Product extra fields, Poll, Visiteur counter, NextAndPreviousProductLink, MiniSlider
Avatar de l’utilisateur
cricri92
Utilisateur enregistré
Utilisateur enregistré
 
Messages: 138
Inscription: 02 Juil 2010, 04:28
Localisation: haut de Seine

Suivante

Retourner vers Langues

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

cron