Un usuario preguntó 👇
No puedo crear una membresía. Ir: esta página contiene errores de JavaScript. Por favor, contacta a el creador de la pagina web.
La consola no muestra ningún error js, deshabilitó todos los plugins excepto PMPro. Opción de pago Probado por correo y estándar de PayPal. El mismo error todavía.
¿Cómo puedo solucionar este problema? Tampoco veo nada en Network en mi consola.
¿Qué tipo de mensaje es este? ¡No me da ni idea de cuál es el problema! De todos modos, para actualizar este mensaje a algo más específico, este es el peor mensaje de error de la historia.
(@andrewza)
Hace 2 años, 5 meses
Hola @webbernaut,
Gracias por usar Paid Memberships Pro, perdón por la pregunta que tiene aquí.
La mejor manera de probar esto es ver si hay un conflicto con su tema u otros plugins. Para probar los conflictos, puede hacer lo siguiente:
1. Desactive temporalmente todos los plugins, excepto la Membresía Pro Pagada (Desactive las Onzas de Plugin que pueda tener para la Membresía Pro Pagada – NO VENDE LOS PLUGINS). 2. Establezca temporalmente su tema en TwentySeventeen. 3. Vuelva a verificar su cheque para ver si el problema persiste, si no hubo ningún conflicto. 4. Si en el paso 3 pudo hacer la verificación correctamente, comience a activar un plugin a la vez y vea si el problema vuelve a surgir. El último plugin o tema implementado fue el culpable.
A veces, este problema puede provocar que su sitio cargue más de una instancia de jQuery. Creo que si está utilizando un plugin que podría usar mucho JavaScript, es una buena idea desactivarlo antes de volver a verificar su verificación.
Espero que esto ayude.
(@webbernaut)
Hace 2 años, 5 meses
Como se mencionó en la publicación original, ya había deshabilitado todos los plugins sin suerte para solucionar el problema. Nunca pensé en desactivar mi tema.
Después de una gran cantidad de resolución de problemas (realmente necesita un mejor sistema de mensajes de error), finalmente resolví el problema. No fue un error o conflicto de JavaScript. Esto fue lo primero que cambié en mi tema después de que TwentySeventeen funcionó perfectamente en el cheque. Nada eliminó el mensaje de error para eliminar todos los archivos javascript en cola en mi tema.
Tengo un tema personalizado con algunas funciones de seguridad. Una función en particular elimina todo el tráfico html en la salida del código. Por alguna razón, esto hizo que su plugin escupiera el mensaje de error de JavaScript al finalizar la compra.
Algunos comentarios html muestran los números de versión de los plugins, que creo que son una mala práctica y las vulnerabilidades se encuentran a diario. (También eliminé los números de versión en los scripts, pero esto no parece ser un problema de error que estaba recibiendo).
Esto parece haber resuelto el problema, pero es extraño por qué no puedo eliminar los comentarios HTML con su plugin. Quiero hacer eso por motivos de seguridad …
(@webbernaut)
Hace 2 años, 5 meses
En realidad, todo su JavaScript parece estar envuelto en tráfico HTML …
<script>
<!--
// Find ALL <form> tags on your page
jQuery('form').submit(function(){
// On submit disable its submit button
jQuery('input[type=submit]', this).attr('disabled', 'disabled');
jQuery('input[type=image]', this).attr('disabled', 'disabled');
jQuery('#pmpro_processing_message').css('visibility', 'visible');
});
//iOS Safari fix (see: http://stackoverflow.com/questions/20210093/stop-safari-on-ios7-prompting-to-save-card-data)
var userAgent = window.navigator.userAgent;
if(userAgent.match(/iPad/i) || userAgent.match(/iPhone/i)) {
jQuery('input[type=submit]').click(function() {
try{
jQuery("input[type=password]").attr("type", "hidden");
} catch(ex){
try {
jQuery("input[type=password]").prop("type", "hidden");
} catch(ex) {}
}
});
}
//add required to required fields
jQuery('.pmpro_required').after('<span class="pmpro_asterisk"> <abbr title="Required Field">*</abbr></span>');
//unhighlight error fields when the user edits them
jQuery('.pmpro_error').bind("change keyup input", function() {
jQuery(this).removeClass('pmpro_error');
});
//click apply button on enter in discount code box
jQuery('#discount_code').keydown(function (e){
if(e.keyCode == 13){
e.preventDefault();
jQuery('#discount_code_button').click();
}
});
//hide apply button if a discount code was passed in
//click apply button on enter in *other* discount code box
jQuery('#other_discount_code').keydown(function (e){
if(e.keyCode == 13){
e.preventDefault();
jQuery('#other_discount_code_button').click();
}
});
-->
</script>
(@andrewza)
Hace 2 años, 5 meses
Gracias por los comentarios, estamos trabajando para mejorar la forma en que manejamos nuestro JavaScript para evitar situaciones como esta.
No dude en abrir un nuevo hilo de soporte si tiene alguna otra pregunta.
(@jonashogstrom)
Hace 2 años, 2 meses
Encontré este hilo y me ayudó a descubrir que la configuración predeterminada para el plugin «Webcraftic Clearfy» no es compatible con el plugin Membresía. Tuve que deshabilitar la función Defense / RemoveHtmlComments.
Actualice el plugin de membresía para que no se rompa al instalar herramientas de seguridad como esta.
(@andrewza)
Hace 2 años, 2 meses
@jonashogstrom, estamos trabajando para mejorar la forma en que se maneja JavaScript y debería actualizarse pronto.
¿Solucionó tu problema??
0 / 0