osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> ajouter une variable à la classe category_tree, rendre variable $page de tep_href_link
equisol
posté 8 Nov 2015, 12:26
Message #1


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 124
Inscrit : 7-November 07
Lieu : Lyon
Membre no 19668



osC 2.3.4

Bonjour,

Je suis face à un problème que je n'arrive pas à résoudre au niveau de la classe "category_tree" qui se trouve dans includes/classes/category_tree.php. Voilà, j'ai remplacé le FILENAME_DEFAULT du lien par une variable (dont les 3 valeurs sont FILENAME_DEFAULT, FILENAME_ACTIVITIES et FILENAME_TRANS) et lorsque l'on clique sur un des items du menu, voilà ce qu'affiche l'url :
Code
http://www.monsite.org/FILENAME_DEFAULT?cPath=15

Dans la classe, j'ai remplacé ça :
Code
        $categories_query = tep_db_query("select c.categories_id, c.parent_id, c.categories_image, cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id. "' order by c.parent_id, c.sort_order, cd.categories_name");

        while ( $categories = tep_db_fetch_array($categories_query) ) {
          $this->_data[$categories['parent_id']][$categories['categories_id']] = array('name' => $categories['categories_name'],
                                                                                       'image' => $categories['categories_image']);
        }

(...)
          $result .= '<a href="' . tep_href_link(FILENAME_DEFAULT, 'cPath=' . $category_link) . '">';
          $result .= str_repeat($this->spacer_string, $this->spacer_multiplier * $level);
          $result .= $link_title . '</a>';


par ça :
Code
        $categories_query = tep_db_query("select c.categories_id, c.parent_id, c.categories_image, cd.categories_name, ct.categories_types_filename from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd, " . TABLE_CATEGORIES_TYPES . " ct where c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id. "' and c.categories_types_id = ct.categories_types_id order by c.parent_id, c.sort_order, cd.categories_name");

        while ( $categories = tep_db_fetch_array($categories_query) ) {
          $this->_data[$categories['parent_id']][$categories['categories_id']] = array('name' => $categories['categories_name'],
                                                                                       'filename' => $categories['categories_types_filename'],
                                                                                       'image' => $categories['categories_image']);
        }
(...)
          $result .= '<a href="' . tep_href_link($categories['filename'], 'cPath=' . $category_link) . '">';
          $result .= str_repeat($this->spacer_string, $this->spacer_multiplier * $level);
          $result .= $link_title . '</a>';

Pourquoi lorsque $categories['filename'] = FILENAME_DEFAULT, l'url affiche FILENAME_DEFAULT et non index.php, comme défini dans le filename.php ?

Merci pour vos lumières !!

Ce message a été modifié par equisol - 8 Nov 2015, 14:40.


--------------------
Goo69
Go to the top of the page
 
taiko
posté 9 Nov 2015, 19:34
Message #2


Ceinture marron OSC
Icône de groupe

Groupe : Membres
Messages : 1770
Inscrit : 20-April 07
Lieu : chez mickey
Membre no 16736



salut

il doit te manquer un define dans ton french.php je pense

a+


--------------------
oscommerce ms2.2 delaballe, header tag controller v2-6-3, Agree2Terms_v1.6.7, MS2-2.2-SiteMap-SEO-URLs-withproducts (bientot), sponsorship v2.2,pack_newsletters, pack_newsletters, Prof_Invoice&PackingSlip_v0.2(fr+stylesheet) (je crois), checkout_confirmation_chg_valid_xhtml, + d'autres mais je sais plus trop a force.
Go to the top of the page
 
equisol
posté 11 Nov 2015, 11:45
Message #3


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 124
Inscrit : 7-November 07
Lieu : Lyon
Membre no 19668



Citation (taiko @ 9 Nov 2015, 19:34) *
salut

il doit te manquer un define dans ton french.php je pense

a+

Merci taiko. J'ai résolu le problème en remplaçant les FILENAME_DEFAULT, FILENAME_ACTIVITIES et FILENAME_TRANS que j'avais enregistrés en BDD par le nom des fichiers (index.php, activities.php et trans.php) et ça fonctionne.
Mais il n'empêche que je ne comprends toujours pas pourquoi le code d'origine
Code
$result .= '<a href="' . tep_href_link(FILENAME_DEFAULT, 'cPath=' . $category_link) . '">';
fonctionne et qu'avec ma variable
Code
$result .= '<a href="' . tep_href_link($categories['filename'], 'cPath=' . $category_link) . '">';
, dont une des valeurs est FILENAME_DEFAULT, ne fonctionne pas car me renvoie
Code
http://www.monsite.org/FILENAME_DEFAULT?cPath=15
au lieu de
Code
http://www.monsite.org/index.php?cPath=15

C'est comme si le FILENAME_DEFAULT de ma requête ne passait pas ou n'était pas lu par le fichier filename.php. J'ai aussi essayé avec des DIR_WS_xxx et c'est la même chose.

Une idée ?


--------------------
Goo69
Go to the top of the page
 

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 28th March 2024 - 23:58
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)