Pregunta sobre Developing with WordPress de Wordpress:

Llamar a la funci贸n desde functions.php

Un usuario pregunt贸 馃憞

Hola, quiero agregar una funci贸n onclick = 芦myFunction ()禄 a un bot贸n en header.php

驴D贸nde est谩 la ubicaci贸n correcta para la funci贸n? Lo agregu茅 en functions.php:

function myFunction() {
    console.log("myFunction");
}
add_action('wp_footer', 'myFunction');

Pero me sale el error:

myFunction no est谩 definido

驴Algun consejo? 隆Gracias!

(@subrataemfluence)

Hace 2 a帽os

No est谩 dando la funci贸n usted mismo. Realmente est谩 dando su salida, es decir console.log.

Tienes que proporcionar lo real js functon a trav茅s de la funci贸n php a la que se conect贸 wp_footer acci贸n o puede escribir la funci贸n en su footer.php.

Espero que esto ayude.

Lanzador de hilos

(@bashibazouk)

Hace 2 a帽os

Gracias por su respuesta. Entonces, 驴es ese el m茅todo de mejores pr谩cticas de WordPress para llamar a funciones? Parece un poco alargado

(@wpgear)

Hace 2 a帽os

Yo footer.php


<script type="text/javascript">
	function myFunction() {
		console.log("myFunction");
	}
<script>

(@bcworkz)

Hace 2 a帽os

隆Las 鈥渕ejores pr谩cticas鈥 de WP van m谩s all谩 de eso! Se nos pide poner en cola el c贸digo JS a trav茅s de 茅l. wp_enqueue_script(). TBH, esto es demasiado controvertido para un simple JS. Lo que sugiere Subrata es suficiente para un simple JS.

JS y PHP parecen mezclados y confusos. Si bien existe alguna intersecci贸n para que uno haga que suceda el otro, son esencialmente dos entidades separadas que operan en dos entornos diferentes. JS se ejecuta en el navegador del visitante y tiene acceso limitado a los recursos de su servidor. PHP se ejecuta en su servidor, tiene acceso completo a los recursos del servidor, pero tiene acceso limitado a los recursos del navegador.

Puede usar la acci贸n 芦wp_footer禄 en PHP para generar una declaraci贸n de funci贸n JS:

function my_php_function() {
  echo '<script>
    function myFunction() {
      console.log("myFunction() was called.");
    }
  </script>';
}
add_action('wp_footer', 'my_php_function');

Lanzador de hilos

(@bashibazouk)

Hace 2 a帽os

@bcworkz tienes toda la raz贸n, 隆confund铆 PHP con JS!

Descubr铆 que la mejor manera era tener un script externo en el pie de p谩gina como lo sugiere @wpgear

Gracias por tu ayuda

(@subrataemfluence)

Hace 2 a帽os

Cambie el estado para resolver si est谩 satisfecho. 隆Gracias!

Lanzador de hilos

(@bashibazouk)

Hace 2 a帽os

Resuelto, gracias

驴Solucion贸 tu problema??

0 / 0

Deja una respuesta 0

Tu direcci贸n de correo electr贸nico no ser谩 publicada. Los campos obligatorios est谩n marcados con *