it-swarm-ru.tech

Каков наилучший способ включить виджет на страницу?

Я настраиваю новый блог WordPress и хотел бы включить виджет в содержание страницы. Я нашел несколько форумов, описывающих хаки PHP, которые применимы к более старым версиям. В WordPress 3.0.1, как лучше всего добавить виджет на страницу?

3
g .

Этот плагин может быть простым способом. http://wordpress.org/extend/plugins/add-widgets-to-page/

Но для скретч-метода ...

Просмотрите файл Theme Twenty-Ten's functions.php и найдите, где зарегистрированы динамические боковые панели. Это выглядит так:

<?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' );

Я написал в Области 7 выше, поскольку Двадцать Десять включает в себя 6 виджетизированных областей. Скопируйте все это в functions.php вашей темы, если его там еще нет, и удалите или добавьте то, что вам нужно.

Используйте следующий вызов функции в файле шаблона, где вы хотите разместить свою пользовательскую область 7:

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

Например, создайте файл шаблона в каталоге вашей темы и используйте его в качестве шаблона по умолчанию для страницы, которую вы создаете в WordPress. Перейдите в Appearance-> Widgets и перетащите виджеты в свою область 7, и они появятся на вашей странице. Если вам нужна другая область виджета (динамическая боковая панель), замените 7 на 8>

Этот ответ был создан с помощью этого сообщения парнем по имени Флинн

2
kevtrout

Я опубликовал плагин Виджеты на страницах , который позволяет легко определять и включать виджеты внутри постов и страниц. Я думаю, что это поможет

2
Todd Halfpenny