nockbcn Posted December 4, 2014 Share Posted December 4, 2014 Hola muy buenas, estoy haciendo un modulo y me gustaria poder almacenar, para operar con ella mas tarde, la id de la categoria donde se esta montrando en ese momento.Veo que la clase context->getContext no vale y no consigo hacerlo funcionar tampoco con Tools::getValue('id_category') Que estoy haciendo mal? muchas gracias por adelantado y felicidades a los creadores! Link to comment Share on other sites More sharing options...
galindogadea Posted December 4, 2014 Share Posted December 4, 2014 Lo primero de todo en que hook estas ejecutando esto: $recogeridcategoria=(int)Tools::getValue('id_category'); ¿? Es decir, ese hook donde lo ejecutas es un hook que luego se vera en las categorías ¿? Link to comment Share on other sites More sharing options...
nockbcn Posted December 5, 2014 Author Share Posted December 5, 2014 (edited) Hola galindogadea muchas gracias por contestar tan rápido Mira, he probado a poner $cat = (int)Tools::getValue('id_category'); en el hook RightColumnProduct, justo debajo del ($params) antes y despues de { global $smarty; y así asigno las variables a smarty $this->context->smarty->assign('categoria', $cat);, el modulo ira debajo del titulo de cada producto, pero en el .tpl no quiero mostrar la id de la categoria, lo que quiero es poder hacer consultas sql en funcion de la categoria en la que este. He creado un campo llamado relative en la tabla attribute_group_lang, de esta manera relaciono los atributos con las categorias. Asignando el mismo valor a los campos id_category y relative . Pues bien si conociera la categoria en la que estoy, podria, o almenos eso creo XD, hacer lo siguiente: $sql = 'SELECT public_name FROM `'._DB_PREFIX_.'attribute_group_lang` WHERE id_lang = 1 AND relative = $cat '; donde $cat seria la categoria actual. para despues hacer $att_list = Db::getInstance()->executeS($sql); y así almacenar los atributos de esa categoría Mi idea es hacer combos dependientes de selectores de valores de atributos en cada producto ( cada serie tiene unos motores, cada motor unas cilindradas...) cosa que creo que puedo hacer mediante javascript y llamadas ajax en el tpl, pero para iniciar el primer atributo relacionado con la categoría presente... no se como hacerlo en el archivo php. Espero saber hacerme entender, muchas gracias por la atención de nuevo, un saludo! Edited December 5, 2014 by nockbcn (see edit history) Link to comment Share on other sites More sharing options...
ventura Posted December 5, 2014 Share Posted December 5, 2014 Prueba añadiendo tambien if (isset($_GET['id_category'])) Link to comment Share on other sites More sharing options...
nockbcn Posted December 6, 2014 Author Share Posted December 6, 2014 Prueba añadiendo tambien if (isset($_GET['id_category'])) hola muchas gracias por contestar ventura, me podrias explicar un poco donde debo añadir if (isset($_GET['id_category'])) he probado if(isset($_GET['id_category'])) { $cat = $_GET['id_category']; } y no consigo obtener la id puede tener que ver que el modulo se muestra en un hook que esta dentro de los productos? public function hookDisplayRightColumnProduct($params) { Gracias de nuevo por la atención Link to comment Share on other sites More sharing options...
ventura Posted December 6, 2014 Share Posted December 6, 2014 (edited) Seria asi if (isset($_GET['id_category'])){ (Tools::getValue('id_category') Revisa el modulo productcategory posiblemente para lo que quieres hacer tengas que utilizar $category = $params['category']; Edited December 6, 2014 by ventura (see edit history) Link to comment Share on other sites More sharing options...
nockbcn Posted December 10, 2014 Author Share Posted December 10, 2014 Al final lo he conseguido gracias a una respuesta en el foro en ingles, muchas gracias a todos!! public function hookDisplayRightColumnProduct($params) { // Define product object $product = $params['product']; // Get the default id category from defined product object // Depend to id shop $id_category_default = $product->getDefaultCategory(); // Get array of id categories from the defined object product // NOT depend to id shop $categories = $product->getCategories(); // Alternatively you can also Get array of id categories // from the defined object product using its id_product // NOT depend to id shop $categories_alt = Product::getProductCategories($product->id); } Link to comment Share on other sites More sharing options...
Recommended Posts