it-swarm-es.com

¿Cuál es la mejor manera de incluir un widget en una página?

Estoy configurando un nuevo blog de WordPress y me gustaría incluir un widget en el contenido de una página. Encontré algunos foros que describen PHP hacks que parecían aplicarse a versiones anteriores. Con WordPress 3.0.1, ¿cuál es la mejor manera de incluir un widget en una página?

3
g .

Este plugin podría ser la manera más fácil. http://wordpress.org/extend/plugins/add-widgets-to-page/

Pero para un método de scratch ...

Busque en el archivo functions.php del Tema Twenty-Ten y encuentre dónde se registran las barras laterales dinámicas. Se parece a esto:

<?php function twentyten_widgets_init() {
    // Area 1, located at the top of the sidebar.
    register_sidebar( array(
        'name' => __( 'Primary Widget Area', 'twentyten' ),
        'id' => 'primary-widget-area',
        'description' => __( 'The primary widget area', 'twentyten' ),
        'before_widget' => '<li id="%1$s" class="widget-container %2$s">',
        'after_widget' => '</li>',
        'before_title' => '<h3 class="widget-title">',
        'after_title' => '</h3>',
    ) );

    // Area 2, located below the Primary Widget Area in the sidebar. Empty by default.
    register_sidebar( array(
        'name' => __( 'Secondary Widget Area', 'twentyten' ),
        'id' => 'secondary-widget-area',
        'description' => __( 'The secondary widget area', 'twentyten' ),
        'before_widget' => '<li id="%1$s" class="widget-container %2$s">',
        'after_widget' => '</li>',
        'before_title' => '<h3 class="widget-title">',
        'after_title' => '</h3>',
    ) );

    // Area 3, located in the footer. Empty by default.
        //similar code as above
    // Area 4, located in the footer. Empty by default.
        //similar code as above
    // Area 5, located in the footer. Empty by default.
        //similar code as above
    // Area 6, located in the footer. Empty by default.
        //similar code as above
    //Your Area 7, copy area 2 above and customize it
    }
/** Register sidebars by running twentyten_widgets_init() on the widgets_init hook. */
add_action( 'widgets_init', 'twentyten_widgets_init' );

He escrito en el Área 7 anterior, ya que Twenty-Ten incluye 6 áreas widgetizadas. Copia todo esto en las funciones de tu tema.php si aún no está allí, y elimina o agrega lo que necesites.

Use la siguiente función de llamada en su archivo de plantilla donde desea colocar su área personalizada 7:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar(7) ) : endif; ?> 

Por ejemplo, cree un archivo de plantilla en su directorio de temas y utilícelo como la plantilla predeterminada para una página que cree en WordPress. Vaya a Apariencia -> Widgets y arrastre los widgets a su área 7 y aparecerán en su página. Si necesita otra área de widgets (barra lateral dinámica), sustituya el 7 por un 8>

Esta respuesta fue creada con la ayuda de esta publicación por un tipo llamado Flynn

2
kevtrout

He publicado un complemento llamado Widgets en las páginas que permite una fácil definición e inclusión en línea de los widgets dentro de las publicaciones y páginas. Creo que esto sería de ayuda.

2
Todd Halfpenny