pablomedi Posted February 8, 2016 Share Posted February 8, 2016 Hola! Quiero insertar un hook (concretamente es un modulo html box) pero solo quiero hacerlo en un producto determinado. No quiero que me aparezca en todos los productos, si no que solamente quiero que esté en uno en concreto. ¿Hay manera de hacer esto?Gracias!!!! Link to comment Share on other sites More sharing options...
ventura Posted February 8, 2016 Share Posted February 8, 2016 Deberas hacerlo mediante modificacion de codigo, con un condicional del id del producto Link to comment Share on other sites More sharing options...
pablomedi Posted February 8, 2016 Author Share Posted February 8, 2016 Deberas hacerlo mediante modificacion de codigo, con un condicional del id del producto Gracias por tu respuesta ventura. Realmente de código no entiendo mucho y no quiero tocar nada vaya a estropearlo, ¿serías tan amable de darme alguna idea de como podría hacer esto? Gracias Link to comment Share on other sites More sharing options...
pablomedi Posted February 8, 2016 Author Share Posted February 8, 2016 Deberas hacerlo mediante modificacion de codigo, con un condicional del id del producto Lo que quiero hacer resumidamente, es que un producto se pueda comprar con un botón de Paypal, ya que es un producto virtual y me parece absurdo que el cliente tenga que introducir su dirección etc para tener que comprarlo a través de la cesta de la tienda. Si pongo un módulo de compra (o botón de compra) de Paypal solo en ese producto el cliente no tendrá que introducir ningún dato en mi tienda, si acaso lo tendrá que hacerlo a través de Paypal, pero eso ya les da mas seguridad. Gracias!! Link to comment Share on other sites More sharing options...
ventura Posted February 9, 2016 Share Posted February 9, 2016 Para ello puedes utilizar la opcion Express checkout de Paypal, para que se posicione el boton de pago directo en la pagina del producto en el hookProductFooter. Luego ya si quieres condicionar ese boton a determinado producto habría que hacer lo que comente mediante edicion de codigo en el modulo. Pero de momento si lo has hecho ya prueba esa opcion del modulo de Paypal para ver si es lo que necesitas. Un saludo Link to comment Share on other sites More sharing options...
pablomedi Posted February 9, 2016 Author Share Posted February 9, 2016 Para ello puedes utilizar la opcion Express checkout de Paypal, para que se posicione el boton de pago directo en la pagina del producto en el hookProductFooter. Luego ya si quieres condicionar ese boton a determinado producto habría que hacer lo que comente mediante edicion de codigo en el modulo. Pero de momento si lo has hecho ya prueba esa opcion del modulo de Paypal para ver si es lo que necesitas. Un saludo Efectivamente así consigo que salga en todos los productos, pero me gustaría que solo fuera en uno de ellos. Lo de editar el código me viene grande, si alguien me puede echar una mano con esto se lo agradecería! Link to comment Share on other sites More sharing options...
ventura Posted February 9, 2016 Share Posted February 9, 2016 En este archivo modules\paypal\paypal.php busca esta parte public function hookProductFooter($params) { $product_quantity = Product::getQuantity((int)Tools::getValue('id_product')); if ($product_quantity == 0) return; y lo sustituyes por esto public function hookProductFooter($params) { $product_quantity = Product::getQuantity((int)Tools::getValue('id_product')); if ($product_quantity == 0 || Tools::getValue('id_product') != 18) return; Siendo 18 el id del producto donde unicamente se mostrara el boton 1 Link to comment Share on other sites More sharing options...
pablomedi Posted February 9, 2016 Author Share Posted February 9, 2016 En este archivo modules\paypal\paypal.php busca esta parte public function hookProductFooter($params) { $product_quantity = Product::getQuantity((int)Tools::getValue('id_product')); if ($product_quantity == 0) return; y lo sustituyes por esto public function hookProductFooter($params) { $product_quantity = Product::getQuantity((int)Tools::getValue('id_product')); if ($product_quantity == 0 || Tools::getValue('id_product') != 18) return; Siendo 18 el id del producto donde unicamente se mostrara el boton Muchísimas gracias por la respuesta tan rápida. A mi no me sale el código como tu me has indicado. Te copio tal y como me sale a mi a ver como tendría que hacerlo en este caso: public function hookProductFooter() { $content = (!$this->useMobile()) ? $this->renderExpressCheckoutButton('product') : null; return $content.$this->renderExpressCheckoutForm('product'); } Link to comment Share on other sites More sharing options...
ventura Posted February 9, 2016 Share Posted February 9, 2016 Dependera de la version del modulo, dejalo asi public function hookProductFooter() { if (Tools::getValue('id_product') != 18) return; $content = (!$this->useMobile()) ? $this->renderExpressCheckoutButton('product') : null; return $content.$this->renderExpressCheckoutForm('product'); } Link to comment Share on other sites More sharing options...
pablomedi Posted February 9, 2016 Author Share Posted February 9, 2016 (edited) Dependera de la version del modulo, dejalo asi public function hookProductFooter() { if (Tools::getValue('id_product') != 18) return; $content = (!$this->useMobile()) ? $this->renderExpressCheckoutButton('product') : null; return $content.$this->renderExpressCheckoutForm('product'); } Funciona!!! Muchísimas gracias Ventura!! Ya para rematar la jugada, dicho botón de Paypal me queda por debajo de la sección "MÁS" donde aparece la descripción del artículo. A mi me gustaría colocarlo justo debajo de la foto del artículo al menos, o incluso en la cajita debajo del precio (donde suele aparecer "Agregar al carrito"). Al menos colocarlo encima del "MÁS". ¿Hay posibilidad de hacer esto? Arrastrando el hook en el Live Edit ya he visto que no es posible (jeje es lo único que se me ha ocurrido hacer...) Gracias de nuevo!! Edited February 9, 2016 by pablomedi (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now