Jump to content

jose.alonso

Members
  • Posts

    52
  • Joined

  • Last visited

Profile Information

  • First Name
    Jose
  • Last Name
    Alonso

jose.alonso's Achievements

Newbie

Newbie (1/14)

1

Reputation

4

Community Answers

  1. Al final he encontrado la solución por mi cuenta y la comparto con todos ustedes, por si a alguien la necesita algún día. Dentro de /classes/CartRule.php y antes de la línea en la que aparece el siguiente código: $nb_products = Cart::getNbProducts($context->cart->id); Colocar lo siguiente: if(!isset($products)) $products = $context->cart->getProducts(); if($products) { foreach ($products as $prod) { $prod_categories = Product::getProductCategories($prod['id_product']); if(in_array(110, $prod_categories)) /****El 110 hace referencia a la categoría que no quiero que se aplique el descuento****/ return (!$display_error) ? false : Tools::displayError('Uno o más productos de su carrito no son compatibles con este descuento'); } } Como resultado final quedaría así: if(!isset($products)) $products = $context->cart->getProducts(); if($products) { foreach ($products as $prod) { $prod_categories = Product::getProductCategories($prod['id_product']); if(in_array(110, $prod_categories)) /****El 110 hace referencia a la categoría que no quiero que se aplique el descuento****/ return (!$display_error) ? false : Tools::displayError('Uno o más productos de su carrito no son compatibles con este descuento'); } } $nb_products = Cart::getNbProducts($context->cart->id);
  2. Hola amigos! Me gustaría saber como se pueden añadir excepciones "cart rule" a una categoría en concreto, como por ejemplo "Outlet" Actualmente tengo el siguiente código: $cart_rule = new CartRule(); $cart_rule->id_customer = (int)$this->context->cart->id_customer; $cart_rule->name = array(Configuration::get('PS_LANG_DEFAULT') => $email); $cart_rule->quantity = 1; $cart_rule->quantity_per_user = 1; $cart_rule->code = $random; $cart_rule->date_from = date('Y-m-d H:i:s', time()); $cart_rule->date_to = date('Y-m-d H:i:s', time() + 24 * 36000); $cart_rule->active = 1; $cart_rule->reduction_percent = PORCENTAJE; $cart_rule->add(); } Gracias y un saludo.
  3. Y me podrías decir como se genera para añadirselo a la url?
  4. Hola amigos!! Al implementar en un formulario la url del admin con token y abrirla en otro ordenador, el token cambia. Alguna solución? Gracias!
  5. Ya se cual era el fallo, es que esa línea de código no tenia que ir en mi hook personalizado sino en el hooDisplayHeader. Muchas gracias por tu ayuda.
  6. me da error y no entiendo el porque. Este es mi código: public function hookMiHookPersonalizado($params) { $this->context->smarty->assign('llamarControlador', $this->context->link->getModuleLink($this->name, 'display', array(), true)); return $this->display(__FILE__,'miarchivo.tpl'); } "display" es el nombre de mi controller: /modules/mi_modulo/controllers/front/display.php Tiene que llevar el nombre del archivo o el nombre de la clase del controller?
  7. Y esa linea de código la tengo que poner en el /modules/mi_modulo/miarchivo.php dentro del hook personalizado verdad?
  8. Hola amigos!! A ver si soy capaz de explicar lo que quiero hacer, ya que puede ser un poco confuso. Tengo un formulario en el footer que quiero que valide unos campos y después se redireccioné a una pagina CMS y me muestre un mensaje de "Gracias". Nota: La validación no me supone ningún problema, pero no quiero hacer nada de esto por Ajax ya que no lo controlo. Para realizar la siguiente acción me he creado un modulo con un controller y además una pagina CMS. Hasta aquí todo bien. Pero ahora viene una de mis confusiónes ya que nunca trabaje con controllers dentro de un módulo. Supuestamente dentro del /modules/mi_modulo/controllers/front/display.php hay que llamar al archivo .tpl de la siguiente manera: public function initContent() { parent::initContent(); $this->setTemplate('miarchivo.tpl'); } Este archivo se encuentra en la siguiente ruta: /module/mi_modulo/views/front/miarchivo.tpl Después, dentro del archivo /modules/mi_modulo/miarchivo.php he creado un hook personalizado de la siguiente forma: public function hookMiHookPersonalizado($params) { return $this->display(__FILE__,'miarchivo.tpl'); } Dicho hook lo pinto en el CMS con el siguiente código: {if $cms->id=='19'} {hook h='MiHookPersonalizado'} {/if} DUDAS: Lo primero es que al crear una página CMS me genera una url amigable, es necesario utilizar esta url en algún momento? Lo segundo es que no estoy seguro es si debo de llamar al mismo archivo .tpl (miarchivo.tpl) desde diferentes sitios. lo tercero es que no sé como hacer para que el formulario me llame al controller pero sin utilizar la url larga: https://www.midominio.com/index.php?fc=module&module=mi_modulo&controller=display he intentado ser lo más claro posible. Un saludo.
  9. Hola amigos!! Estoy haciendo un popup que tiene un formulario y necesito que llame a un modulo para insertar los datos en la base de datos. Alguna idea de como hacerlo?
  10. Ya esta posicionado en el mismo hook que el de .tpl Esto es lo que tengo puesto en el archivo .php public function hookMyHook($params) { $this->context->controller->addCSS($this->_path.'css/mystyle.css','all'); return $this->display(__FILE__,'mytpl.tpl'); }
  11. Hola amigos!! Me he creado un módulo y una pagina CMS. El contenido del módulo se visualiza perfectamente en dicha página, pero no coge el css del módulo. Al css lo llamo con la siguiente línea de código: $this->context->controller->addCSS($this->_path.'css/bathTrendsShowroomLocation.css','all'); Alguna solución?
×
×
  • Create New...