Llamar a una función desde functions.php en una página personalizada o entrada del blog

2 jul 2019, 11:26:19
Vistas: 25.3K
Votos: 4

¿Es posible llamar a una función desde functions.php en una página personalizada o entrada del blog?

He puesto una función simple en functions.php:

function testTest()
{
    echo "Test";
}

Y la llamé desde la página:

<?php testTest();?>

Pero no funciona. ¿Necesito crear un plugin para usar una función simple como esa dentro de una página personalizada específica?

Gracias por tu respuesta, Mary

0
Todas las respuestas a la pregunta 2
1

Podrías usar add_shortcode si deseas utilizarlo dentro del editor.

function footag_func() {
    return "Test";
}
add_shortcode( 'footag', 'footag_func' );

Y luego usar [footag] en tu editor.

O

Usa código como este en functions.php y añade una etiqueta condicional

add_action( 'loop_start', 'your_function' );
function your_function() {
if ( is_singular('post') ) {
    echo 'Test';
    }
}

o

Crea una función en functions.php

function your_function() {
return 'Test';

}

Y luego usa esto en tu plantilla

echo your_function();
2 jul 2019 11:44:25
Comentarios

¡Muchas gracias! Voy a revisar todas las versiones. Le di like, pero desafortunadamente no se muestra porque soy un usuario nuevo. ¡Gracias de nuevo!

Mary Mary
2 jul 2019 12:08:39
4

Puedes crear rápidamente un shortcode para hacer eso.

add_shortcode( 'test_shortcode', 'my_test_callback' );

Luego, en la función de callback haces esto:

function my_test_callback() {
    //comienza a añadir el contenido mostrado al buffer de salida
    ob_start();

    //ejecuta tu código aquí - en este caso tu función testTest()
    testTest();

    //retorna el buffer de salida
    //NOTA: mostrar directamente el contenido dará resultados inesperados
    return ob_get_clean();
}

Después, en tus páginas de contenido solo añades [test_shortcode] y ejecutará tu función PHP.

Para una mejor comprensión sobre los shortcodes, aquí tienes algunos enlaces útiles:

API Oficial de Shortcodes

Una herramienta útil para crear shortcodes

Un artículo que escribí sobre cómo construir shortcodes

2 jul 2019 11:45:21
Comentarios

¡Muchas gracias! Lo revisaré. Di mi voto positivo, pero desafortunadamente no se muestra porque soy un usuario nuevo.

Mary Mary
2 jul 2019 12:09:15

no hay problema. espero que te haya ayudado :)

Cornel Raiu Cornel Raiu
2 jul 2019 12:10:30

Hola @CornelRaiu - ¿Existe alguna forma de crear un enlace normal en el frontend que, al hacer clic, ejecute la función "test_shortcode" o "my_test_callback()"?

Ramin Arabbagheri Ramin Arabbagheri
20 may 2020 14:12:52

@RaminArabbagheri deberías utilizar AJAX para eso. Crea un listener de clic en el botón que active una acción AJAX y luego muestre la respuesta

Cornel Raiu Cornel Raiu
20 may 2020 23:48:01