Intereting Posts
Ключ action_post не дает post_meta_data Возможно ли разделение таблиц базы данных с помощью HyperDB? Плагин загрузки zip хорошо работает в локальном хосте, но не на живом сайте Использование настраиваемых параметров URL-адреса на странице Страница пользовательской категории Woocommerce с разбивкой на страницы Как отображать данные в WordPress? Как настроить архивы авторов с URL подкатегории как я могу изменить цвет фона всех сообщений на моем сервере? Неустранимая ошибка: вызов неопределенной функции dbDelta () Изменить wp-login.php? Проблема с защитой паролем .htaccess и многофункциональным магазином Получить переменную из предыдущего блога при использовании switch_to_blog Показывать отдельные сообщения, на странице сообщений Как получить изображение из сообщения и отобразить его перед выпиской из сообщения? Установка шаблонов для пользовательских типов сообщений Невозможно просмотреть сообщение, перейти на страницу 404. Пожалуйста помоги

Как я могу вставлять виджеты по умолчанию, когда моя тема активирована (аналогично тому, что делает двадцать одиннадцать)?

Когда активирована тема Twenty Eleven, она добавляет несколько виджетах по умолчанию в свои боковые панели. Как я могу кодировать мою тему, чтобы сделать то же самое?

Johannes Pille прав. Виджеты TwentyEleven, такие как Archives и Meta, жестко закодированы в их sidebar.php

Вот что я сделал бы:

Сначала определите свои боковые панели в своих функциях.php следующим образом:

if ( function_exists('register_sidebars') ) register_sidebar(array( 'name'=>'Left Sidebar', 'before_title' => '<h2 class="label">', 'after_title' => '</h2>', 'description' => 'Items placed here will be shown in the left sidebar.')); 

Как вы можете видеть в приведенном выше коде, вы называете боковую панель «Левая боковая панель». Вы можете изменить это на все, что захотите, но я обычно предпочитаю использовать условия размещения, чтобы таким образом я знал, на какой части страницы будет отображаться виджет.

Затем вы захотите поместить это в свою тему, где хотите, чтобы боковая панель показывала:

 <?php if(function_exists('dynamic_sidebar') && dynamic_sidebar('Left Sidebar')):else: ?> 

Теперь вы захотите сделать следующее:

 <li id="calendar"> <h2> <?php _e('Calendar'); ?> </h2> <?php get_calendar(); ?> </li> <?php wp_list_pages('title_li=<h2>Pages</h2>'); ?> <li> <h2> <?php _e('Categories'); ?> </h2> <ul> <?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=0'); ?> </ul> </li> <li> <h2> <?php _e('Archives'); ?> </h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> </li> <?php get_links_list(); ?> <li> <h2> <?php _e('Meta'); ?> </h2> <ul> <?php wp_register(); ?> <li> <?php wp_loginout(); ?> </li> <?php wp_meta(); ?> </ul> </li> <?php endif; ?> </ul> 

закрывает функцию «if» в начале этой строки. Что это будет сделано, так это если в боковой панели нет широкоугольного экрана, эти значения по умолчанию будут отображаться до тех пор, пока не будет добавлено.

Если вы хотите, чтобы они постоянно находились там, где люди не меняли его, но все же хотят, чтобы они могли добавлять собственные материалы, вы можете просто помещать жесткошерстные виджеты вне операторов «if» следующим образом:

 <li id="calendar"> <h2> <?php _e('Calendar'); ?> </h2> <?php get_calendar(); ?> </li> <?php wp_list_pages('title_li=<h2>Pages</h2>'); ?> <li> <h2> <?php _e('Categories'); ?> </h2> <ul> <?php wp_list_cats('sort_column=name&optioncount=1&hierarchical=0'); ?> </ul> </li> <li> <h2> <?php _e('Archives'); ?> </h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> </li> <?php get_links_list(); ?> <li> <h2> <?php _e('Meta'); ?> </h2> <ul> <?php wp_register(); ?> <li> <?php wp_loginout(); ?> </li> <?php wp_meta(); ?> </ul> </li> </ul> <?php if(function_exists('dynamic_sidebar') && dynamic_sidebar('Left Sidebar')):else: ?> <?php endif; ?> 

Я предлагаю, чтобы добавить их к вашей теме (в случае, если вы хотите что-то еще), что вы смотрите на ссылку на функцию WordPress Code здесь: http://codex.wordpress.org/Function_Reference#Theme-Related_Functions

………………………………………….. ………………………………………….. ………………………………………….. ……………

Вот как установить набор виджета по умолчанию для области администрирования.

Сначала вы должны знать, что WordPress поставляется с 12 стандартными виджетами. Вы можете посмотреть их здесь: http://codex.wordpress.org/Function_Reference/the_widget

Если вы хотите удалить некоторые стандартные виджеты, вот как вы это делаете:

 function remove_some_wp_widgets(){ unregister_widget('WP_Widget_Calendar'); //removes calendar widget unregister_widget('WP_Widget_Search'); // removes the search widget unregister_widget('WP_Widget_Recent_Comments'); // removes recent comments widget } add_action('widgets_init',remove_some_wp_widgets', 1); 

Вы бы добавили вышеуказанный код в свой файл functions.php вашей темы. Это скроет их. (не обязательно удалять их)

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

http://dev7studios.com/resources/wordpress-development-for-designers-part-1/

На страницах боковой панели тем вы можете проверить, активен ли виджет на боковой панели, а затем сделать if, else.

 //Check to see if your sidebar "main" is active. Change to match your registered sidebar if (is_active_sidebar('main')) { //echo holder div. Give it a class for css echo '<div class="homeSidebar">'; dynamic_sidebar('main'); echo '</div>'; } //if there is no active widget in this side bar, use this one. else { echo '<div class="homeSidebar">'; //Run the_widget() to bring in the widget you want by default. Take a look at http://codex.wordpress.org/Function_Reference/the_widget for more info the_widget('WP_Widget_Archives'); echo '</div>'; } 

Виджеты (псевдо), озаглавленные «Архивы» и «Мета», жестко закодированы в sidebar.php TwentyEleven .