Complemento de WordPress agregar interfaz de página

2 minutos de lectura

Estoy desarrollando un plugin para wordpress. Este complemento debe tener una sección de administración para la configuración del complemento, pero también debe tener una página de inicio personalizada con formularios.

Soy nuevo en el mundo del desarrollo de complementos de wordpress, pero no he encontrado información específica para esta tarea.

¿Hay alguna manera de agregar páginas al front-end desde un complemento o es necesario editar manualmente la plantilla actual y agregar la página?

Aquí hay una forma de agregar contenido personalizado en una página de inicio cuando crea su complemento: http://blog.frontendfactory.com/how-to-create-front-end-page-from-your-wordpress-plugin/

function elegance_referal_init()
{
    if(is_page('share')){   
        $dir = plugin_dir_path( __FILE__ );
        include($dir."frontend-form.php");
        die();
    }
}

add_action( 'wp', 'elegance_referal_init' );

  • Seguí el código de ejemplo y funciona, excepto que el encabezado/pie de página no se carga. ¿Por qué? bolsillo.consulting/bg-core

    – GJ

    24 de agosto de 2017 a las 20:28


  • Sé que esto es antiguo, pero para cualquiera que lo vea en el futuro, @GJ necesitaría llamar a get_header() y get_footer() en su página incluida para mostrar el encabezado y el pie de página. Además, este método requiere que agregue una página en la base de datos. Use la acción ‘pre_get_posts’ con la variable global $wp y verifique su solicitud para agregar una página sin agregarla a la base de datos. (Código en respuesta separada)

    – Coyote6

    28 de enero a las 22:20

Para agregar una página a WordPress que ejecute código personalizado sin agregar la página como publicación o página en la base de datos, intente esto en su archivo de complemento.

add_action ('pre_get_posts', function ($query) {
   
    global $wp;
    if ($wp->request == 'pageurl'){   
        $dir = plugin_dir_path( __FILE__ );
        include $dir . "your_file.php";
        die();
    }

});

Creo que estás buscando esto para la página de configuración del administrador https://codex.wordpress.org/Function_Reference/add_options_page

Para la parte delantera, recomendaría crear una página con una plantilla https://developer.wordpress.org/themes/template-files-section/page-template-files/page-templates/

  • segundo enlace eliminado: esa página no se puede encontrar. ¿Hay algún otro artículo allí?

    – saber tabatabaee yazdi

    20 mayo 2018 a las 20:02

¿Ha sido útil esta solución?