[Résolu] Problème de langue dans le module minislider
19 messages
• Page 1 sur 2 • 1, 2
[Résolu] Problème de langue dans le module minislider
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.
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.
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, 06:31, édité 2 fois au total.
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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
Re: Probleme de langue dans le module minislider
Il aurait été logique que tu mettes le lien qui permet de télécharger ce module !!cricri92 a écrit:Bonjour
J'ai trouvé sur le forum anglais un module permettant de faire défiler les produits d'une boutique
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
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.
Nous t'en remercions.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
Hello,
Je suis volontier preneur pour le lien vers ton module Minislider (j'ai cherché en vain..)
Merci!
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
- Messages: 17
- Inscrit le: 19 Déc 2010, 01:19
Re: Problème de langue dans le module minislider
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.
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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
Re: Problème de langue dans le module minislider
Je vais tester ce module et voir les modifications ou corrections à effectuer.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
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 :
Dans admin/view/template/module/minislider.tpl, ces lignes :
Comme cela, le titre de la sideboxe correspondra réellement à celui se trouvant dans le fichier de langue.
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');
}
- Code: Tout sélectionner
if($this->request->post['minislider_title'] == ''){
$this->error['warning'] = "You specify a title for your Minislider.";
}
Dans
- Code: Tout sélectionner
$_['entry_title'] = 'Minislider Title:';
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.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
Il manquait la jointure de la langue dans la requête situé dans le fichier catalog/model/catalog/minislider.php
Chercher cette ligne :
Cela devrait fonctionner, maintenant.
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()";
- 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.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
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 :
Dans le fichier admin/language/french/module/minislider.php
Ajouter cette ligne :
Dans le fichier admin/view/template/module/minislider.tpl
Chercher ces lignes :
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');
- 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égories -----';
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>
- 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>
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
Merci Imaxine 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.
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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
Re: Problème de langue dans le module minislider
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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
Re: Problème de langue dans le module minislider
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] [/img]
[img] [/img]
- Pièces jointes
-
- minislider.PNG (11.86 Kio) Consulté 17992 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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
Re: Problème de langue dans le module minislider
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.
"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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
Re: Problème de langue dans le module minislider
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.
- Imaxine
- Messages: 3023
- Inscrit le: 27 Juil 2009, 19:28
Re: Problème de langue dans le module minislider
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
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
-
cricri92 - Messages: 139
- Inscrit le: 02 Juil 2010, 05:28
- Localisation: haut de Seine
19 messages
• Page 1 sur 2 • 1, 2
Qui est en ligne ?
Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 0 invité(s)