Me gustaría eliminar algunas flechas de aspecto feo que son estándar en los botones de carrito en WooCommerce. Para lograr esto, encontré un consejo al agregar el siguiente código, que debería eliminar las flechas cuando el documento se ha cargado.
Supongo que lo voy a poner en mis functions.php? ¿Cómo exactamente haría eso?
$(document).ready(function() {
$(".woocommerce-cart").html(function(i, val) {
return val.replace(" →", "");
});
$(".woocommerce-cart").html(function(i, val) {
return val.replace("← ", "");
});
});
EDITAR
Bueno. He intentado este enfoque:
Hice un archivo llamado 'removeArrows.js' y lo coloqué en mi carpeta de complementos. Tiene el mismo contenido que el código original, excepto jQuery en su lugar $. Luego agregué lo siguiente a functions.php:
function wpb_adding_scripts() {
wp_register_script('my_amazing_script', plugins_url('removeArrows.js', FILE), array('jquery'),'1.1', true);
wp_enqueue_script('my_amazing_script');
}
add_action( 'wp_enqueue_scripts', 'wpb_adding_scripts' );
No puedo entender cómo hacer que el código se muestre correctamente. Esto no funcionó. ¿Alguna sugerencia para hacer que esto funcione?
php
jquery
woocommerce
user2806026
fuente
fuente
wp-enqueue-script
. También tendrá que cambiar el$
s ajQuery
(consulte la sección 7 de la página)Respuestas:
Tu
$scr
en tuwp_register_script()
función está mal. Dado que su functions.php está dentro de su complemento y su removeArrows.js está en la raíz de su complemento,$scr
debería verse asíOtro punto a destacar es que siempre es una buena práctica cargar los scripts y los estilos al final. Esto asegurará que otros scripts y estilos no lo anulen. Para hacer esto, simplemente agregue una prioridad muy baja (número muy alto) a su parámetro de prioridad (
$priority
) deadd_action
.Y siempre cargue / ponga en cola los scripts y estilos a través del
wp_enqueue_scripts
gancho de acción, ya que este es el gancho adecuado para usar. No cargue scripts y estilos directamente enwp_head
owp_footer
EDITAR
Para los temas, como ha indicado que ahora movió todo a su tema,
$scr
cambiaría a estopara temas principales y esto
para temas infantiles. Su código completo debería verse así
fuente
$scr
seríaget_template_directory_uri() . '/removeArrows.js'
para temas principales yget_templatestylesheet_directory_uri() . '/removeArrows.js'
para temas infantilesget_template_directory_uri() . '/removeArrows.js', FILE)
debería serget_template_directory_uri() . '/removeArrows.js'
No agregaría otro archivo js externo, es solo un recurso adicional e innecesario para obtener y eso es algo que queremos reducir en términos de tiempos de carga de la página.
Agregaría este fragmento de jQuery en la cabeza de su sitio web usando el
wp_head
gancho. Pegaría lo siguiente en su tema o archivo de funciones de complementos. También me he asegurado de que jQuery esté en modo sin conflicto, como puede ver a continuación.Una vez que haya hecho esto y haya actualizado su página, verifique el origen de la página para asegurarse de que este fragmento de jQuery se esté cargando en su página. Si es así, debería funcionar a menos que haya algo fuera del fragmento de jQuery real que está utilizando.
fuente
wp_enqueue_script()
para más información.wp_enqueue_script()
documentos incluso indican que este es el método recomendado para vincular JavaScript a una página generada por WordPress .Como la respuesta ya está aceptada, solo quiero decir que hay otra forma de poner en cola el código de JavaScript en el pie de página, lo que he hecho muchas veces.
en el archivo functions.php:
puede cargar este script en una plantilla de página en particular solo usando la condición
si el page-template.php está en el directorio (digamos el directorio de plantillas en el directorio raíz de su tema) puede escribir como:
fuente
wp_enqueue_script()
es casi siempre universalmente mejor y más flexible.Para responder a la pregunta, primero debemos hacer una distinción entre javascript y JQuery.
Para decirlo de una manera simple:
Entonces, en realidad, haces dos preguntas diferentes:
Debido a que los resultados de Google muestran su título y todo el contenido de la página habla de JQuery, esto puede ser muy frustrante para las personas que buscan una solución de JavaScript.
Y ahora para la solución JQuery:
Y la solución de JavaScript:
Este código se puede agregar a sus functions.php La ubicación de los scripts en ambos casos es
wp-content/themes/theme-name/js/script.js
¡Feliz codificación!
fuente