Soporte » Plugins y Hacks » WooCommerce » Enlazar directamente a Amazon desde Imagen de producto

  • Buenas!
    Acabo de agregar productos de amazon a través de woocommerce en mi blog.
    He comprobado que al hacer clic al botón de comprar (en mi caso pone «see offer») te lleva a amazon. genial!
    El pero es que al hacer clic en la imagen del producto te lleva a una nueva página de producto, aún dentro de mi web. Esto no me gusta. Si cualquier usuario hace clic en el producto que «promociono» quiero que vaya directamente a amazon.
    ¿Cómo hago para que al hacer clic en la imagen también te lleve directamente a amazon como hace con el botón? o, la otra opción ¿se puede hacer que al hacer clic en la imagen de producto no haga absolutamente nada y así tengas que hacer clic al botón?

    Otra pregunta con respecto a woocommerce es que no pongo los precios porque entiendo que amazon no quiere que los precios esten desactualizados y he leido que puede llegar a cerrarte la cuenta. Sin tener API se puede hacer algo al respecto¿?
    Es decir, se puede conseguir con woocommerce (o con cualquier otro plugin) poner los precios directos de amazon de tal forma que si se modifican se modifiquen también en mi web¿?

    Gracias

    La página con la que necesito ayuda: [accede para ver el enlace]

Viendo 15 respuestas - de la 1 a la 15 (de un total de 17)
  • Hola @eltuyo

    Puedes probar con el siguiente código para que enlace también las imágenes a la url de Amazon.

    /* Añadir enlaces de productos externos a imágenes en WooCommerce */
    remove_action( 'woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10 );
    add_action( 'woocommerce_before_shop_loop_item', 'mycode_woocommerce_template_loop_product_link_open', 20 );
    function mycode_woocommerce_template_loop_product_link_open() {
        global $product;
        echo '<a rel="nofollow" href="' . esc_url( $product->add_to_cart_url() ) . '" class="woocommerce-LoopProduct-link" data-quantity="'.esc_attr( isset( $quantity ) ? $quantity : 1 ).'" data-product_id="'.esc_attr( $product->id ).'" data-product_sku="'.esc_attr( $product->get_sku() ).'" target="_blank">';
    }

    Lo he probado en WooCommerce 5 y funciona.

    Ya me dices qué tal.

    Saludos y ánimo!

    Iniciador del debate eltuyo

    (@eltuyo)

    Hola @oabadfol,

    Donde debo añadir el código (soy bastante novato).

    Gracias

    Lo ideal es crear un plugin de funciones y añadirlo ahí pero también puedes utilizar el plugin «Code Snippets» para añadirlo.

    Claro que también podrías añadirlo en el fichero functions.php del tema activo pero mejor las opciones anteriores.

    Venga, mucho ánimo!

    Iniciador del debate eltuyo

    (@eltuyo)

    Hola de nuevo @oabadfol,

    Como ya tenía Code Snippets he copiado el código que has puesto anteriormente y he creado un fragmento nuevo. Guardo y actualizo pero al hacer clic en la web en las imagenes me sigue llevando al producto en mi web pero no a amazon… En fin. Algo estoy haciendo mal seguro.
    He copiado literalmente esto y he puesto la opcion de Ejecutar el fragmento de código en todas partes. Por cierto, uso la versión 5.0.0 de Woocommerce.

    /* Añadir enlaces de productos externos a imágenes en WooCommerce */
    remove_action( ‘woocommerce_before_shop_loop_item’, ‘woocommerce_template_loop_product_link_open’, 10 );
    add_action( ‘woocommerce_before_shop_loop_item’, ‘mycode_woocommerce_template_loop_product_link_open’, 20 );
    function mycode_woocommerce_template_loop_product_link_open() {
    global $product;
    echo ‘add_to_cart_url() ) . ‘» class=»woocommerce-LoopProduct-link» data-quantity=»‘.esc_attr( isset( $quantity ) ? $quantity : 1 ).'» data-product_id=»‘.esc_attr( $product->id ).'» data-product_sku=»‘.esc_attr( $product->get_sku() ).'» target=»_blank»>’;
    }

    El código que has pegado se ve mal, no vaya a ser que esté mal copiado.

    Si puedes, pon una captura de cómo lo has puesto en el plugin code snippets para verlo bien…

    Saludos.

    Iniciador del debate eltuyo

    (@eltuyo)

    El caso es que he intentado poner un «pantallazo» antes pero no he encontrado cómo. cuando hago un copia y pega de la imagen no me deja pegar nada en el mensaje aquí

    Iniciador del debate eltuyo

    (@eltuyo)

    Voy a probar pues:

    <img src="https://imagizer.imageshack.com/v2/2736x1824q90/r/922/apHoUK.png" alt="Imagen ejemplo" />

    `

    Pues parece que lo tienes bien puesto.

    Ya que yo lo he probado y si que parece que funciona, te diría que probaras con un tema del repositorio de WordPress para ver si el problema lo tenemos con Divi, ok?

    Entonces, por si acaso haz un backup y luego prueba a establecer como tema por defecto un tema estandar como Twenty Twenty one y lo revisas a ver si con ese tema te funciona bien.

    Con lo que sea me comentas y vamos viendo.

    Saludos.

    Iniciador del debate eltuyo

    (@eltuyo)

    Pues puedo probar con otro tema, pero el que uso actualmente es generatepress y no divi, por tanto no sé si tiene relación. Voy a probarlo como dices y ya diré. Muchas gracias

    Iniciador del debate eltuyo

    (@eltuyo)

    Probado tal cual con el twenty twenty one y mismo resultado, al hacer clic en la imagen de producto y no en el botón me lleva al producto en lugar de a amazon. Si no tiene solución sencilla tendré que dejarlo así al menos temporalmente.

    Gracias

    Es un poco extraño, la verdad.

    Yo lo he probado con Storefront pero entiendo que debería funcinar con cualquier tema.

    Lo que si te digo es que en mi caso lo que hace es direccionar directamente desde la página de catálogo o tienda, al pulsar sobre la imagen, me lleva al enlace de afiliado.

    Por cierto, no tendrás algún plugin de chaché, verdad? Si es así, prueba a vaciar la caché a ver si está afectando…

    Saludos.

    Iniciador del debate eltuyo

    (@eltuyo)

    Gracias @oabadfol. Lo he intentado . No tengo plugins de caché, pero por probar he vaciado la caché y vuelto a la web y sigue exactamente igual.
    Se te ocurre alguna otra forma de hacerlo¿?
    Probé en functions-php del tema copiando y pegando justo al final, pero tampoco hacía ningún cambio.
    En woocommerce cuando creo el producto lo que hago es; creo el título del producto, después me voy a establecer imagen del producto, aquí no toco nada, aparece el título que tiene la foto, la url del archivo (que es precisamente donde te lleva cuando haces clic en la imagen) y en el desplegable de enlace objetivo no lo toco, pone misma página y ahí lo dejo.
    Después solamente selecciono en Datos del producto el producto externo/afiliado, pego el link de amazon y cambio a mano el texto del botón. No toco nada más ni cambio nada más. Bueno, sí, el producto creado lo añado a una categoría para tenerlos ordenados.

    Supongo que algo se me escapa o que directamente el tema generatepress es incompatible, pero a estas alturas no quiero cambiarlo (y además ayer probé con el twenty twenty one y no funcionó tampoco).

    Pues no lo comprendo, la verdad.

    A mi me funciona correctamente. Eso si, yo lo tengo probando con el tema Storefront, pero no creo que ese sea el problema.

    Lo que si te digo es que yo no cambio el texto del botón, lo dejo como está. Prueba eso a ver…

    Y lo único es meter la url de amazon en «URL del producto». No hago más. Bueno, la imagen.

    Puedes probar a crear un producto de prueba solo con eso? A ver si damos con ello…

    Venga, ánimo!

    Iniciador del debate eltuyo

    (@eltuyo)

    Bueno, vamos a ver si esto funciona.
    He creado un producto de prueba. He hecho todo igual salvo que en la imagen del producto he añadido en URL DEL ENLACE el link de amazon, he puesto tambien en LINK REL nofollow, y ya para añadirle le he puesto ENLACE OBJETIVO nueva página.

    Ahora, si voy a mi web y hago clic en la imagen me lleva directamente a la tienda de amazon abriendo una pagina nueva. Funciona!! la mayor duda que tengo con esto es si verdaderamente es un enlace «nofollow», que supongo que si en la imagen de producto aparece el LINK REL y le pongo nofollow no hay problema.

Viendo 15 respuestas - de la 1 a la 15 (de un total de 17)
  • El debate ‘Enlazar directamente a Amazon desde Imagen de producto’ está cerrado a nuevas respuestas.