Cómo pasar variables PHP a JavaScript en WordPress
Cuando está creando un tema o complemento de WordPress, a veces tiene código JavaScript que necesita usar datos / valores de PHP. Por ejemplo, necesita estos valores en su código JavaScript:
-
Homepage URL
Theme option values
WordPress posts data
etc
La forma más fácil de hacerlo es inicializando esos valores en objetos JavaScript en su archivo de tema header.php o en el gancho wp_head. Por ejemplo :
<script> var myThemeParams = { homeURL: <?php echo home_url(); ?>, themeOptions: <?php echo get_theme_mod( 'mytheme_options', false ); ?>, } </script>
Aunque funciona, WordPress nos ha proporcionado una función para hacer algo así. Se llama wp_add_inline_script.
wp_add_inline_script( $handle, $data, $position = 'after' )
-
$ handle: nombre de la secuencia de comandos para agregar la secuencia de comandos en línea.
$ data: Cadena que contiene el JavaScript que se agregará.
$ position: si se debe agregar el script en línea antes del identificador o después.
Esa función agregará un script en línea antes o después de su código JavaScript. En realidad, puede hacer más además de pasar variables PHP a JavaScript. Puedes ver otro caso de uso aquí.
Entonces, para usar wp_add_inline_script para pasar variables de PHP a JavaScript, debe establecer las propiedades de posición en antes para que agregue el script en línea antes de su archivo JS. Y luego inicialice un objeto
$myThemeParams = array( 'homeURL' => home_url(), 'themeOptions' => get_theme_mod( 'mytheme_options', false ) ); wp_enqueue_script( 'my-theme-script', get_template_directory_uri() . '/js/script.js' ); wp_add_inline_script( 'my-theme-script', 'var myThemeParams = ' . wp_json_encode( $myThemeParams ), 'before' );
En su JavaScript puede acceder a él así:
console.log( myThemeParams.homeURL ); console.log( myThemeParams.themeOptions );
- Anteriormente:¿Cómo determinar si PHP es bueno para mi sitio web o WordPress?
- Siguiente:¿Qué es la ciberseguridad?
Temas relacionados
- 2024-04-25 Apple dijo que está trabajando en un chip de servidor de IA personalizado basado en el proceso de 3 nm de TSMC
- 2024-04-25 los investigadores utilizan piezas de supercondensador para construir un nuevo tipo de batería de iones de sodio
- 2022-08-20 Google busca mejorar los resultados de búsqueda evitando contenido no original
- 2022-08-16 Microsoft desactivará TLS 1.0 y 1.1 en Internet Explorer y EdgeHTML el 13 de septiembre
- 2022-08-15 Google lanza Read Along para la web: Enseñar a los niños a leer
Sus comentarios
- forex 1楼
- Hi would you mind letting me know which hosting company you're working with? I've loaded your blog in 3 completely different web browsers and I must say this blog loads a lot faster then most. Can you recommend a good web hosting provider at a fair price? Thank you, I appreciate it!
- 发布于 2022/03/17 09:11
- Clasificación del calor
-
- Cómo actualizar de Windows 10 a Windows 11 gratis
- Cómo evitar el envío de formularios duplicados
- Cómo pasar variables PHP a JavaScript en WordPress
- ¿Qué es un lenguaje de programación débilmente tipado?
- La diferencia entre saltos de línea y marcas de párrafo
- ¿Qué es el window.postMessage en HTML5?
- Cómo implementar las funciones de avance y retroceso del navegador para los botones de los formularios web
- El diseño de la tabla es de repente muy confuso
- ¿Cómo determinar si PHP es bueno para mi sitio web o WordPress?
- ¿Qué es un lenguaje de secuencias de comandos?
- El papel de la etiqueta ul de la lista desordenada
- Az automatikus gyorsítótárazási funkció hatása a dinamikus oldalakra
- ¿Qué es una declaración de documento XML?
- ¿Qué valores se pueden usar para la propiedad background-position?
- ¿Cuál es la diferencia entre fijo y absoluto?
- Últimas respuestas
-
-
Cómo evitar el envío de formularios duplicados
binary options system strategy page Respuesta 2022-04-01 03:42:00
-
¿Cómo determinar si PHP es bueno para mi sitio web o WordPress?
แอพเปลี่ยนรูปเป็นภาพวาด Respuesta 2022-03-27 18:27:12
-
Az automatikus gyorsítótárazási funkció hatása a dinamikus oldalakra
50 deposit binary options Respuesta 2022-03-24 05:31:20
-
Cómo evitar el envío de formularios duplicados
free binary options signals providers of goods Respuesta 2022-03-20 12:29:02
-
Cómo evitar el envío de formularios duplicados
binary options strategy 5 minutes 15 min no loss acord Respuesta 2022-03-20 09:44:29
-