Jump to content

récupérer id catégorie d'un produit


Recommended Posts

Problématique : Un client fait de la location et de la vente, je pense mettre en place un formulaire avec un zolie effet jquery, mais pour différencier les produits vente et location je pense faire un test avec une boucle if pour décidé comment l'afficher. (PS: il va avoir des sous catégories dans les catégories)


mise en situation :


Vente machine (id 5) - Découpe ( id 6 )
- Forage ( id 7 )

Location machine ( id 8 ) - Découpe ( id 9)
- Compression ( id 10 )



En gros tout ce qui est dans id parent ( 5 ) afficher produit façons presta et sinon afficher façons perso.




Ma question est comment récupérer id de la catégorie parent pas celle de la catégorie contenant mon produit ?


Voila j'espère avoir été claire, je continue de chercher sur le forum pendant ce temps.

Link to comment
Share on other sites

Bonjour,

Je pense qu'avec une bonne fonction récursive, on peut s'inspirer de la méthode de la classe classes/Category.php :

   public function getParentsCategories($idLang = null)
   {
       //get idLang
       $idLang = is_null($idLang) ? _USER_ID_LANG_ : (int)($idLang);

       $categories = null;
       $idCurrent = (int)($this->id);
       while (true)
       {
           $result = Db::getInstance(_PS_USE_SQL_SLAVE_)->ExecuteS('
               SELECT c.*, cl.*
               FROM `'._DB_PREFIX_.'category` c
               LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.(int)($idLang).')
               WHERE c.`id_category` = '.(int)$idCurrent.' AND c.`id_parent` != 0
           ');

           $categories[] = $result[0];
           if(!$result OR $result[0]['id_parent'] == 1)
               return $categories;
           $idCurrent = $result[0]['id_parent'];
       }
   }



Bien cordialement

Link to comment
Share on other sites

tu veux dire comme ça ?

$cate = ($product->id_category_default);
$parents = $cate->getParentsCategories();



Désoler j'essaye de comprendre le code ça intéresse de comprendre pour m'aider à modifier moi même.



En gros

J'ai id catégorie enfant -> j'enregistre dans $cate
je passe $cate dans la fonction catégorie parent ->$parents

puis j'utilise $parents qui contient id catégorie parents dans mon if qui me permettra de différencier l'affichage.


Si je comprend bien ...

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...