Ajuda com o JS do meu tema de Wordpress + Woocommerce

  • Autor Autor vortex
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
V

vortex

Beta
Usuário com poucas negociações! Use sempre o saldo do ForoBeta!
Hola a todos,

Tengo un problema que me trae de cabeza. Estoy montando una Tienda Online sobre el template Gleam de Elegant Themes. Este template tiene unas funciones en JQuery que cuando haces clic para acceder a una página cualquiera se cambia la URL a algo como ésto: www.midominio.com/#!/pagina/.

Esta plantilla carga todas las secciones en ventanas emergentes a través del parámetro #! por eso este comportamiento en las URL, algo que no puede modificarse a través de los enlaces permanentes ni a través del plugin SEO by Yoast si no directamente a través del fichero custom.js del tema creo.

Todo funciona perfecto de esta manera hasta que intento meter productos variables en Woocommerce donde se fastidia el añadir carrito. Con los simples funciona perfecto. He probado a eliminar de la URL que aparece en la barra de direcciones el #! y voilá funciona correctamente.

No se si si puede arreglarse eso de alguna manera modificando Woocommerce o si puede quitarse el #! de todo el tema ya que sin ellas también funciona.

Pongo un fragmento custom.js donde creo que está la solución para que veáis el código por si desde aquí pudiera solucionarse el problema.

if ( window.location.href.search('#!/') == -1 && window.location.href !== et_site_url && window.location.href !== ( et_site_url + '#' ) ) {
access_without_ajax = true;
$et_main_content.css( { opacity : 1, top : '77px', width : '800px', height : ( et_window_height - 200 ), marginTop : 0, marginLeft : '-400px' } );
$logo_area.hide();
$main_menu.hide();
$et_footer_menu.css({'display':'block','opacity':1, bottom: '0'})
$('#content').appendTo( $et_page_content );
$et_main_content.jScrollPane( { animateScroll: true } );
et_center_content_area();
et_init_scripts();
} else if ( window.location.href === et_site_url || window.location.href === ( et_site_url + '#' ) ) {
$et_main_content.css( { 'margin-left' : '-' + ( content_width / 2 ) + 'px', top: ( ( et_window_height - $et_main_content.height() ) / 2 - 100 ) } ).animate( { opacity : 1, 'top' : ( ( et_window_height - $et_main_content.height() ) / 2 ) }, fade_in_speed, 'easeInOutQuad' );
} else {
$et_main_content.css( { 'margin-left' : '-' + ( content_width / 2 ) + 'px' } ).animate( { opacity : 1, 'top' : '77px' }, fade_in_speed, 'easeInOutQuad' );
}

et_resize_background_images();

// center the bottom menu
$('#footer_menu #secondary_menu').width( $( '#footer_menu #menu-new' ).innerWidth() );
});

Saludos!!
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Mmm el código está muy sucio.
Pero debería haber otro bloque JS, donde bloquea el comportamiento por defecto de los enlaces.
Y por lo general es en el evento click, estaría algo como este:
e.preventDefault();

o Al final de la función return false;

Tendrías que borrar eso 🙂
 
Muchas gracias por tu contestación te doy acceso a la web directamente para que veas a lo que me refiero. Si quieres te mando el tema comprimido para que lo eches un vistazo si hace falta me pasas presupuesto si sabes como solucionarlo.

Se que este tema no es compatible con Woocommerce precisamente por esto pero mi gustaría que esta Tienda funcionase sobre esta plantilla.

www_fotovideocabito_es

www_fotovideocabito_es/#!/tienda-online/albumes-de-boda/mod-105-rojo

Sustituir los guiones bajos en la url.
 
Última edição:

Tópicos similares

Voltar
Topo