Gancho de acción personalizado plugin no funciona

Yo estoy tratando de crear un plugin básico donde quiero crear mi propio gancho de acción. Aquí está el código para el mismo.
<?php
/*
Plugin Name: Demo Plugin
Version: 1.0
*/

do_action('basic_action_demo');
?>
Después de activar este plugin quiero usar esta acción gancho en archivo de mi tema actual function.php, código de la misma es como abajo:
add_action('basic_action_demo','action_demo');

function action_demo()
{
    echo "I am inside";
}
Ahora el problema es que mi acción enganchado nunca se llama podemos ver que do_action se llama incondicionalmente así se llamará en cada carga de página pero que nunca llegue a método 'action_demo'.

Lo que he descubierto hasta ahora es plugin está cargada antes de ejecuta mi archivo function.php theme'e. Así que aquí se llama do_action primero y luego add_action.

Una sugerencia será muy apreciada. Actualización: bajo trabajos de acción plugin.

<?php
/*
Plugin Name: Demo Plugin
Version: 1.0
*/

add_action('basic_action_demo','action_demo');
do_action('basic_action_demo');

function action_demo()
{
    echo "I am Inside";
    die;
}
?>
<?php
/*
Plugin Name: Demo Plugin
Version: 1.0
*/

add_action('basic_action_demo','action_demo');
do_action('basic_action_demo');

function action_demo()
{
    echo "I am Inside";
    die;
}
?>
.


Solución

Tu plugin necesita esperar a que los temas
functions.php
archivo que se cargue. Pruebe esto:
<?php
/*
Plugin Name: Demo Plugin
Version: 1.0
*/

add_action('after_setup_theme',function(){
    do_action('basic_action_demo')};
);
?>
El
after_setup_theme
gancho se ejecuta inmediatamente después de
functions.php
está cargado. Actualización para tu comentario a continuación.

En tu plugin crear una función para el formulario:
<?php
/*
Plugin Name: Demo Plugin
Version: 1.0
*/

function output_my_form () {
    echo "I'm a form";
    // do your action here
    do_action('basic_action_demo');
}
?>
Luego en de tu tema
functions.php
:

if ( function_exists('output_my_form') ) {
    output_my_form();
}
Este es un ejemplo simple. En realidad que quieras llamar a esa función desde un
form.php
en el tema..





Problemas relacionados

Imprimir shortcode en gancho de acción personalizada no donde está ingresado el shortcode

¿Qué gancho \

Comprobar si existe gancho de acción antes de añadir acciones a él

¿Cómo le haré una barra lateral vía add_action?

gancho de deactivated_plugin: el nombre del plugin

Gancho de acción desencadenó al eliminar los mensajes ' save_post'

¿WP 3.4 Qué acción\/gancho se llama cuando se guarda la personalización del tema?

Añadir acción condicional sólo cuando el gancho home.php en uso

El gancho de que acción puedo usar cuando se ha seleccionado una imagen recomendada

¿Dónde está el mejor lugar para utilizar add_filter

Gancho de correos basura

Hay una acción de update_post_meta

Source: Stack Exchange Inc; License: cc by-sa 3.0 Contacto / Contact