Ejecutar shortcode dentro de shortcode

3

Estoy usando este complemento: enlace

Sintaxis de código corto:

[worldcurrency cur="EUR" value="25"] 

Sin embargo, estoy usando campos personalizados avanzados y el código corto para los campos personalizados no se está ejecutando dentro del código corto para la moneda mundial.

[worldcurrency curr="[acf field="fl_currency"]" value="25"]

¿Hay algún recurso aquí?

Actualizar
Creo que necesito estar usando el

add_filter('xx','do_shortcode');

de alguna manera?

    
pregunta Andy Jonathan 04.02.2013 - 19:20

3 respuestas

1

No he intentado esto, pero puedes intentar pseudo-cambiando la prioridad de su gancho de código corto .

Básicamente, obligas a que tu shortcode se ejecute antes de lo normal. Ese enlace muestra cómo ejecutar su shortcode por separado y, lo que es más importante, antes de que se implementen las otras shortcodes.

Esto funciona almacenando en caché y eliminando temporalmente todos los códigos cortos existentes, ejecutando los tuyos, y luego restableciendo los otros códigos cortos.

    
respondido por el akTed 04.02.2013 - 22:32
0

Si observa el código abreviado de ACF en la fuente ( api.php ), solo usa la función API get_field en el atributo field del código abreviado.

Si observa el código abreviado de la moneda mundial en la fuente ( worldcurrency.php ), genera un intervalo con la clase worldcurrency y un par de atributos personalizados, que luego se convierten en el lado del usuario mediante javascript.

Probablemente podría escribir su propio shortcode que combine los dos, utilizando la salida de la moneda mundial con get_field de ACF para obtener los atributos de los campos que especifique.

    
respondido por el Milo 04.02.2013 - 21:16
0

Mi respuesta implica cambiar la codificación del complemento de moneda mundial.
Luego escribe el código abreviado así:

[worldcurrency value="25"][acf field="fl_currency"][/worldcurrency]

En el código del complemento de moneda, el valor del campo personalizado estará disponible a través del campo $content .
Luego, simplemente establece el campo curr en $content y deberías estar listo.

    
respondido por el Greg Turner 04.02.2013 - 19:53

Lea otras preguntas en las etiquetas