Avisos
Vaciar todo

Integración de reseñas de clientes con Google en Prestashop  

 
Enrique
 Enrique
Famed Member

Buenas tardes,

Google ha sacado un nuevo programa de reseñas y nos da la opción de integrarlo en nuestro prestashop. Nos indica lo siguiente:

Importante: Integrar la función para aceptar el envío de ofertas por correo electrónico es un paso obligatorio para activar Reseñas de Clientes en Google. El programa no funcionará en su sitio web ni ofrecerá encuestas hasta que no realice este paso. Cuando lo haga, Google podrá mostrar una función para aceptar el envío de ofertas de Reseñas de Clientes en Google por correo electrónico en su sitio web y ofrecer encuestas a los clientes que hayan aceptado participar en el programa.

Antes de empezar, asegúrese de que ha leído las políticas de Reseñas de Clientes en Google y que cumple los requisitos de integración necesarios para participar:

El carrito de la compra y las páginas de tramitación de compras deben estar alojados en el mismo dominio
La página de confirmación debe estar alojada en su propio dominio
se debe añadir en la parte superior de todas las páginas web
Una vez que haya leído las políticas, siga las instrucciones de integración para añadir el fragmento de código que aparece a continuación en la página de confirmación de pedidos, y personalice las variables según sea necesario. Cuando integre el fragmento, Google podrá mostrar en su sitio web la opción para participar en Reseñas de Clientes en Google.





  window.renderOptIn = function() {
    window.gapi.load('surveyoptin', function() {
      window.gapi.surveyoptin.render(
        {
          // REQUIRED FIELDS
          "merchant_id": 116808632,
          "order_id": "ORDER_ID",
          "email": "CUSTOMER_EMAIL",
          "delivery_country": "COUNTRY_CODE",
          "estimated_delivery_date": "YYYY-MM-DD",

          // OPTIONAL FIELDS
          "products": [{"gtin":"GTIN1"}, {"gtin":"GTIN2"}]
        });
    });
  }


Integración de la insignia

Opcional: Use la insignia para mostrar que participa en el programa Reseñas de Clientes en Google y para añadir su puntuación como vendedor en su sitio web.

Para empezar, añada el fragmento de código que verá más abajo a cualquier página de su sitio web y personalice las variables de acuerdo con sus necesidades. Una vez añadido, verifique la insignia y el texto adjunto aparecerá correctamente en su sitio web. Nota: Si no hay puntuaciones del vendedor disponibles, aparece el mensaje "No hay puntuaciones disponibles






  window.renderBadge = function() {
    var ratingBadgeContainer = document.createElement("div");
    document.body.appendChild(ratingBadgeContainer);
    window.gapi.load('ratingbadge', function() {
      window.gapi.ratingbadge.render(ratingBadgeContainer, {"merchant_id": 116808632});
    });
  }


¿Donde debo colocar ambos códigos?
Gracias.

Un saludo,

URL del sitio: Contenido solo visible a usuarios registrados

Citar
Respondido : 16/08/2018 6:02 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

La manera más simple es que uses un plugin, aunque son de pago, revisa por ejemplo:
https://addons.prestashop.com/es/comentarios-clientes/26858-resenas-de-clientes-en-google.html
https://addons.prestashop.com/es/comentarios-clientes/26898-resenas-de-clientes-en-google.html
https://addons.prestashop.com/es/comentarios-clientes/25759-easy-google-customer-reviews.html

Otra opción es que lo integres manualmente, en este caso puedes revisar esta discusión del foro oficial de PrestaShop en donde se trata este tema, revisa:
https://www.prestashop.com/forums/topic/571494-integrar-en-prestashop-el-programa-rese%C3%B1as-de-clientes-en-google/

Saludos.

ResponderCitar
Respondido : 16/08/2018 7:27 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Enrique
 Enrique
Famed Member

Buenas tardes,

Vamos a intentar hacerlo manualmente ya que los módulo relentizan Prestashop. Tenemos que insertar este código:




  window.renderOptIn = function() {
    window.gapi.load('surveyoptin', function() {
      window.gapi.surveyoptin.render(
        {
          // REQUIRED FIELDS
          "merchant_id": 116808632,
          "order_id": "ORDER_ID",
          "email": "CUSTOMER_EMAIL",
          "delivery_country": "COUNTRY_CODE",
          "estimated_delivery_date": "YYYY-MM-DD",

          // OPTIONAL FIELDS
          "products": [{"gtin":"GTIN1"}, {"gtin":"GTIN2"}]
        });
    });
  }

¿Donde lo insertamos en el header del theme? o dependiendo de las formas de pago en cada archivo de cada forma de pago?

Gracias.

Un saludo,

ResponderCitar
Respondido : 20/08/2018 5:31 pm
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Enrique.

Lo tienes que añadir en el archivo header.php, ese archivo se carga en todas las paginas de tu web.

En el enlace del foro de prestashop que te paso mi compañero Jhon tienes los pasos.

Un saludo

ResponderCitar
Respondido : 20/08/2018 6:05 pm

wpdoctor-revisa-la-salud-de-tu-wordpress

Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Según lo que veo en la discusión del foro, tienes que crear un overrides de un archivo del core de PrestaShop y también editar la página de confirmaicón .tpl de tu theme
https://www.prestashop.com/forums/topic/571494-integrar-en-prestashop-el-programa-rese%C3%B1as-de-clientes-en-google/#comment-2475721

Saludos.

ResponderCitar
Respondido : 20/08/2018 6:07 pm
Enrique
 Enrique
Famed Member

Buenas tardes,

He creado el archivo dentro del overrido con el código que comentan pero no se en que parte del order-confirmation.tpl debo de insertar el script. ¿Arriba o abajo? o dentro del código?

Gracias.

Un saludo,

ResponderCitar
Respondido : 20/08/2018 6:42 pm

Cursos Gratuitos WordPress

Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Puedes probar insertarlo al final, sin embargo al ser un archivo de smarty tienes que insertarlo con la siguiente sintaxis :

https://www.smarty.net/docsv2/en/language.function.literal

Saludos.

ResponderCitar
Respondido : 20/08/2018 6:56 pm
Enrique
 Enrique
Famed Member

Buenas tardes,

He realizado un pedido de prueba y al confirmar el pedido a través del método de pago "Transferencia Bancaria", hemos obtenido un error 500. He revisado el error_log y veo este error:


[21-Aug-2018 13:54:07 Europe/Madrid] PHP Notice:  Undefined index: free_ship_remaining in /home/eurotx/public_html/disolventes/cache/smarty/compile/36/55/08/365508e2ba6996b274525f88b71de31eacef2a92.file.cart.tpl.php on line 29
[21-Aug-2018 13:54:07 Europe/Madrid] PHP Notice:  Trying to get property of non-object in /home/eurotx/public_html/disolventes/cache/smarty/compile/36/55/08/365508e2ba6996b274525f88b71de31eacef2a92.file.cart.tpl.php on line 29
[21-Aug-2018 13:54:07 Europe/Madrid] PHP Notice:  Undefined index: free_ship_remaining in /home/eurotx/public_html/disolventes/cache/smarty/compile/36/55/08/365508e2ba6996b274525f88b71de31eacef2a92.file.cart.tpl.php on line 34
[21-Aug-2018 13:54:07 Europe/Madrid] PHP Notice:  Trying to get property of non-object in /home/eurotx/public_html/disolventes/cache/smarty/compile/36/55/08/365508e2ba6996b274525f88b71de31eacef2a92.file.cart.tpl.php on line 34
[21-Aug-2018 13:54:07 Europe/Madrid] PHP Fatal error:  Uncaught  --> Smarty Compiler: Syntax error in template "/home/eurotx/public_html/disolventes/themes/warehouse/order-confirmation.tpl"  on line 47 "{literal}" missing or misspelled literal closing tag <-- 
  thrown in /home/eurotx/public_html/disolventes/tools/smarty/sysplugins/smarty_internal_templatecompilerbase.php on line 47

Adjunto archivo order-confirmation.tpl, a ver si le puedes echar un vistazo.

Gracias.

Un saludo, EP

ResponderCitar
Respondido : 21/08/2018 2:57 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Enrique.

el añadirlo en la carpeta Owerride es para que no se sobreescriba cuando se actualice.

Los pasos serian:
.- Acceder a la carpeta controllers- > front y copiar el archivo OrderConfirmationController.php
.- añade el archivo copiado a la carpeta override -> controllers -> front
.- edita el archivo y añade o busca si esta la siguiente función:

public function initContent()
    {
        parent::initContent();
		
        $this->context->smarty->assign(array(
            'is_guest' => $this->context->customer->is_guest,
            'HOOK_ORDER_CONFIRMATION' => $this->displayOrderConfirmation(),
            'HOOK_PAYMENT_RETURN' => $this->displayPaymentReturn(),
			'tomorrow', strtotime('+1 day'),
			'reference_order' => $this->reference,
			'email' => $this->context->customer->email
        ));

        if ($this->context->customer->is_guest) {
            $this->context->smarty->assign(array(
                'id_order' => $this->id_order,
                'reference_order' => $this->reference,
                'id_order_formatted' => sprintf('#%06d', $this->id_order),
                'email' => $this->context->customer->email
            ));
            /* If guest we clear the cookie for security reason */
            $this->context->customer->mylogout();
        }

        $this->setTemplate(_PS_THEME_DIR_.'order-confirmation.tpl');
    } 

Nota: es posible que ya tengas ese archivo en la carpeta de owerride por modificaciones de tu plantilla, si es así solo tienes que editarlo y añadir el código a los que ya tienes.

.- Accede a la carpeta de tu plantilla y edita el archivo order-confirmation.tpl
.- añade el script de google:

	
		window.renderOptIn = function() {
			window.gapi.load('surveyoptin', function() {
			  window.gapi.surveyoptin.render(
				{
					"merchant_id": xxxxxxx,
					"order_id": "{$reference_order}",
					"email": "{$email}",
					"delivery_country": "ES",
					"estimated_delivery_date": "{$tomorrow|date_format:'%Y-%m-%d'}",
					"opt_in_style": "CENTER_DIALOG"
				});
			});
		 }
	 

Tienes que modificar merchant_id": xxxxxxx por el id que te proporciono google.

un saludo

ResponderCitar
Respondido : 21/08/2018 5:33 pm