Buenas tardes,
1- La tienda online que tengo configurada funciona en RD y EEUU, aunque en Republica Dominicana esta funcionando bien, no se porque a los usuarios de EEUU al momento de dar click en el botón de agregar al carrito se queda cargando(deshabilitado) y no hace nada.
_______________________________
2- De que forma puedo probar el comportamiento de la web en otro país, es decir estando en RD como puedo realizar esas pruebas con el comportamiento o configuración de EEUU?
Contenido solo visible a usuarios registrados
Hola
Veo que la web esta en un solo idioma, es extraño que tengas un comportamiento diferente según la IP (del pais)
Tienes configurado algo relacionado a nivel de WooCommerce? por ejemplo la Geolocalización?
Si quieres probar desde otar IP podrías usar un Proxy, hay proxys gratuitos pero ten cuidado de ingresar información que podría perjudicar tus niveles de seguridad.
Lo mejor sería que pruebes con una VPN, aunque la mayoría de estos servicios son de pagos, por ejemplo:
https://ciberprotector.com/vpn/
Saludos
hola jhon,
Si, esta en un solo idioma, a pesar de ser recomendable hacerla multi idioma, es obligatorio?
Tienes configurado algo relacionado a nivel de WooCommerce? por ejemplo la Geolocalización? No, es necesario hacerlo?
"ya había hecho pruebas y funcionaba bien".
Tengo este código para deshabilitar métodos de pago según el pais, pero no creo que por esta razón me afecte con el carrito de compra, o si?.
De ser así, cual código(snipet) podría utilizar para hacer esa función:
/*OCULTAR PASARELA DE PAGO SEGUN PAIS*/
add_filter( 'woocommerce_available_payment_gateways', 'a_payment_gateway_disable_country' );
function a_payment_gateway_disable_country( $available_gateways ) {
if ( is_admin() ) return $available_gateways;
if ( isset( $available_gateways['stripe'] ) && WC()->customer->get_billing_country() != 'US' ) {
unset( $available_gateways['stripe'] );
} else if ( isset( $available_gateways['paypal'] ) && WC()->customer->get_billing_country() == 'US' ) {
// unset( $available_gateways['paypal'] );
}
return $available_gateways;
}
Hola.
Si, esta en un solo idioma, a pesar de ser recomendable hacerla multi idioma, es obligatorio?
No, si no quieres que la Web este en diferentes idiomas no hace falta
Tienes configurado algo relacionado a nivel de WooCommerce? por ejemplo la Geolocalización? No, es necesario hacerlo?
Si no quieres que cada país tenga un comportamiento distinto, por ejemplo mostra unos productos diferentes o tener diferentes precios para cada país, no es necesario.
Tengo este código para deshabilitar métodos de pago según el pais, pero no creo que por esta razón me afecte con el carrito de compra, o si?.
Prueba a eliminarlo y revisa si se soluciona, si se solucionara veríamos lo del código paar ocultar el botón segun país.
Un saludo
Nada aun, no se soluciona lo de el botón, Eliminé el código para probar y nada aun.
en las imágenes puede visualizar las diferencias de una prueba en Republica Dominicana y otra en EEUU
Hola,
Veo que tienes activo un complemento de firewall > BBQ Firewall, prueba el desactivarlo y realizas nuevamente una prueba desde estados unidos para confirmar si sucede lo mismo.
Puedes instalar el vpn para conectar a una ip de alla y poder cargar la web de manera que crea que estas en ese país.
Un saludo 🖐️
Desactivé el complemento, estoy utilizando la vpn, borre la cache del navegado y aun persiste el problema.
Hola,
En este caso si no tienes del todo conocimiento sobre que estas agregando en functions o si esta opción la habilita otro complemento lo mejor seria desactivar todos los complementos y validar si el problema persiste, en caso de que si persiste entonces puede deberse a alguna configuración especial realizada en la instalación, es decir ingresa a Apariencia > Temas y selecciona otro tema que no tenga las functions configuradas que tienes actualmente, al hacer esto verificas nuevamente si el problema persiste.
En caso de que se solvente verifica lo que tienes agregado a tu archivo functions.php ya que puede que este ocasionando la falla a nivel de país.
Un saludo 🖐️
Ya he realizado las pruebas y en verdad al parecer no son los complementos. he hecho las siguientes pruebas.
TEMA ACTUAL ACTIVO Y FUNCTION DESACTIVADO: Persiste el error
TEMA ACTUAL ACTIVO Y FUNCTION ACTIVADO: Persiste el error
OTRO TEMA(TWENTY TWENTY-ONE): Funciona correctamente
La web tiene astra como tema base y es premiun, ya tengo toda la web confeccionada con este tema. que seria el cual llamo TEMA ACTUAL
Que me recomienda?
Hola,
En este caso la variable que persiste en donde se presenta el error es que el tema está activo, por lo que al tener la versión pro te recomendamos que lo consultes con los desarrolladores del tema ya que es un problema que te pasa por este mismo.
Al cambiarlo a TWENTY TWENTY-ONE, te ha funcionado correctamente por lo que según nos indicas todo apunta a una configuración innata del tema.
Un saludo 🖐️
me extraña que este funcionamiento fue luego de la actualización de la base de datos por uno de los técnicos en un ticket que levante hace unos días. de todos modo consultare con los proveedores de el tema actual para ver que me dicen al respecto.
Le mantendré retroalimentado de la respuesta proporcionada o los resultado de el mismo.
Muchas gracias!!
Hola,
Estupendo, estaremos atentos.
Un saludo 🖐️
Buenas,
estuve contactando al equipo de la plantilla y según me informa mi cliente se solucionó el problema,
pero necesito configurar el comportamiento de,
ocultar método de pago según pais din plugin. es decir mostrar paypal y stripe en EEUU y paypal solamente en Rep. Dom.
agradezco su ayuda.
/*OCULTAR PASARELA DE PAGO SEGUN PAIS*/
add_filter( 'woocommerce_available_payment_gateways', 'a_payment_gateway_disable_country' );
function a_payment_gateway_disable_country( $available_gateways ) {
if ( is_admin() ) return $available_gateways;
if ( isset( $available_gateways['stripe'] ) && WC()->customer->get_billing_country() != 'US' ) {
unset( $available_gateways['stripe'] );
} else if ( isset( $available_gateways['paypal'] ) && WC()->customer->get_billing_country() == 'US' ) {
// unset( $available_gateways['paypal'] );
}
return $available_gateways;
}
Hola,
El que nos compartes debes eliminarlo si deseas que se muestre tanto paypal como stripe en estados unidos, y debes agregar el siguiente para ocultar stripe en Republica Dominicana, segun entiendo es lo que quieres:
add_filter( 'woocommerce_available_payment_gateways', 'ts_disable_payment_gateway_by_country' );
function ts_disable_payment_gateway_by_country( $available_payment_gateways ) {
if ( is_admin() ) return $available_payment_gateways;
if ( isset( $available_payment_gateways['stripe'] ) && WC()->customer->get_billing_country() == 'DO' ) {
unset( $available_payment_gateways['stripe'] );
}
return $available_payment_gateways;
}
Verifica y nos comentas, un saludo 🖐️
Estupendo argenis, me funcionó muy bien. Muchas gracias y disculpa la demora en responder.