Intereting Posts
Название таксономии эха – второй уровень Как удалить slug из иерархических пользовательских типов в 3.5.2 Есть ли лучший способ обработки запросов AJAX в WordPress? Исключить категории по ID Что я могу заменить '.get_bloginfo (' url ').' для возврата текущего URL-адреса вместо домашнего адреса? Как исключить совпадение слова «класс» в поиске? Вызвать / запустить математическую (.m) скрипт оболочки из страницы WordPress / Blog Атрибуты изменения продукта не отображаются так, как должно быть в корзине – woocommerce Индивидуальные методы первой публикации Как перемещаться по пользовательским сообщениям типа сообщения Создать категорию только для пользовательских типов сообщений Как разместить петлю в другом цикле? Как встраивать содержимое одного сообщения в другой сайт Вырезать родительскую категорию из get_the_category Правильная настройка WordPress & Fastcgi?

Как работает боковая панель WordPress

Хорошо, название, конечно, не очень хорошо объясняет мой самый основной вопрос, но вот он:

Я только начал создавать тему wordpress, а index.php имеет два столбца:

1.) Основное содержание и

2.) Вертикальный столбец, где я показываю другую информацию, такую ​​как Архивы, Последние сообщения все программно.

обновленный

До сих пор все было хорошо, я слышал о регистрации боковой панели, которая показывает какой-то контент, отличный от основного контента (который, как мне кажется, кажется мне очень похожим на мои). Является ли эта боковая панель функциональностью, предоставляемой самим WordPress, или она должна что-то делать с боковой панелью моей темы (которая была создана мной)? Также есть боковая панель для регистрации темы? Нужно ли мне что-то делать, чтобы зарегистрировать боковую панель, и если да, то что именно?

И что именно это означает (я имею в виду, что происходит за кулисами в терминах БД или других запросов sql), чтобы зарегистрировать боковую панель в теме?

В вашем распоряжении две функции: register_sidebar и dynamic_sidebar – несмотря на название, они не должны иметь никакого отношения к «боковой панели» в традиционном смысле.

Что касается термина «виджет», это не что иное, как кусок кода, который принимает некоторые настройки и выводит некоторый контент. Пользователь может назначать виджеты зарегистрированной области «боковой панели» в бэкэнд в разделе «Внешний вид»> «Виджеты».

Например, у вас может быть область заголовка и нижнего колонтитула, которую может редактировать пользователь. Зарегистрируйте две области:

 register_sidebar( array( 'name' => 'Header', 'id' => 'header', ) ); register_sidebar( array( 'name' => 'Footer', 'id' => 'footer', ) ); 

А затем для отображения всех виджетов, назначенных «header»:

 <?php dynamic_sidebar( 'header' ) ?> 

Вы можете пойти еще дальше, зарегистрировав «условные» области. Например, виджеты только для первой страницы на боковой панели:

 register_sidebar( array( 'name' => 'Sidebar Front Page', 'description' => 'Widgets that only show in the sidebar on the front page.', 'id' => 'sidebar-front-page', ) ); 

А затем поместите условие вокруг своей функции отображения:

 <div class="sidebar"> Some content that's always here <?php if ( is_front_page() ) : ?> <?php dynamic_sidebar( 'sidebar-front-page' ) ?> <?php endif ?> </div> 

Я слышал о регистрации боковой панели, которая показывает какой-то контент, отличный от основного контента (который, как мне кажется, кажется мне очень похожим на мои). Является ли эта боковая панель функциональностью, предоставляемой самим WordPress, или она должна что-то делать с боковой панелью моей темы (которая была создана мной)?

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

Также есть боковая панель для регистрации темы?

Да, конечно. В противном случае WordPress и тема не имели бы представления о существовании. Технически, плагин (например) мог бы зарегистрировать боковую панель, но тема должна была быть закодирована, чтобы использовать ее.

Нужно ли мне что-то делать, чтобы зарегистрировать боковую панель, и если да, то что именно?

И что именно это означает (я имею в виду, что происходит за кулисами в терминах БД или других запросов sql), чтобы зарегистрировать боковую панель в теме?

В Codex есть образец кода .

Так работает боковая панель в Twenty Twelve

Есть 2 части:

Зарегистрируйте боковую панель в своем файле функций, используя register_sidebar

 function your_widgets_init() { register_sidebar( array( 'name' => __( 'Main Sidebar', 'twentytwelve' ), 'id' => 'sidebar-1', 'before_widget' => '<aside id="%1$s" class="widget %2$s">', 'after_widget' => '</aside>', ) ); } add_action( 'widgets_init', 'your_widgets_init' ); 

Затем отобразите его везде, где вам нравится, используя dynamic_sidebar . В этом случае он добавляется в файл sidebar.php и включается в разные шаблоны с помощью get_sidebar(); но вы также можете вызвать боковую панель непосредственно в любом файле шаблона, используя следующий код.

 <?php if ( is_active_sidebar( 'sidebar-1' ) ) : ?> <div id="secondary" class="widget-area" role="complementary"> <?php dynamic_sidebar( 'sidebar-1' ); ?> </div><!-- #secondary --> <?php endif; ?> 

Другой вариант – подключить боковую панель к файлу функций с помощью WordPress или специфического для этой темы:

 add_action( 'loop_start', 'custom_sidebar' ); function custom_sidebar() { if ( ! is_front_page() ) return; dynamic_sidebar( 'sidebar-1', array( 'before' => '<div id="secondary" class="widget-area" role="complementary">', 'after' => '</div>', ) ); } 

А для регистрации боковой панели вы также можете использовать этот метод в своем файле функций:

  register_sidebar( array( 'name' => __( 'Main Sidebar', 'twentytwelve' ), 'id' => 'sidebar-1', ) ); 

При создании нескольких боковых панелей вам нужно использовать уникальные символы I.D.