Как добавить sidebar в wordpress
Перейти к содержимому

Как добавить sidebar в wordpress

  • автор:

register_sidebars() │ WP 2.2.0

Создает указанное количество панелей виджетов (сайдбаров) сразу. Функция создана для удобного создания нескольких панелей виджетов. Используйте register_sidebar(), когда нужно создать только одну панель, или используйте эту функцию, указав единицу (1) в первом параметре.

Работает на основе: register_sidebar()

Возвращает

null . Ничего не возвращает.

Шаблон использования

Использование

register_sidebars( $number, $args );
  • name — Название панели. Названия у создаваемых панелей должны быть разные, используйте %d в названии, которая будет заменена на порядковый номер панели. По умолчанию ‘Sidebar %d’.
  • id — Идентификатор панели. К каждой следующией после первой панели автоматически будет добавлено число порядкового номера. Например если мы будем создавать 3 панели и укажем в id «sidebar», то получим: «Sidebar», «Sidebar-2», «Sidebar-3».
  • description — описание панели. При создании нескольких сайдбаров одновременно этот параметр не имеет смысла и по умолчанию пустой.
  • before_widget — HTML который будет расположен перед каждым виджетом в панели.
  • after_widget — HTML который будет расположен после каждого виджет в панели.
  • before_title — HTML который будет расположен перед каждым заголовком виджета панели.
  • after_title — HTML который будет расположен после каждого заголовка виджета панели.

Также можно указать параметры из register_sidebar().

По умолчанию: по умолчанию

Примеры

#1 Регистрация одной панели Аналог функции register_sidebar()
register_sidebars();
#2 Создадим 2 панели и поместим заголовок каждого виджета в тег :
register_sidebars( 2, ['before_title'=>'

','after_title'=>'

'] );

Тоже самое, только укажем параметры в виде строки:

register_sidebars( 2, "before_title=

&after_title=

" )
#3 Регистрация двух панелей

Этот пример показывает как зарегистрировать 2 панели с названиями «Foobar 1» and «Foobar 2»:

register_sidebars( 2, ['name'=>'Foobar %d'] );

Добавить свой пример

Заметки

  • Смотрите: register_sidebar() The second parameter is documented by register_sidebar() and is the same here.
  • Global. Массив. $wp_registered_sidebars The new sidebars are stored in this array by sidebar ID.

Список изменений

С версии 2.2.0 Введена.

Код register_sidebars() register sidebars WP 6.5.2

function register_sidebars( $number = 1, $args = array() ) < global $wp_registered_sidebars; $number = (int) $number; if ( is_string( $args ) ) < parse_str( $args, $args ); >for ( $i = 1; $i 1 ) < if ( isset( $args['name'] ) ) < $_args['name'] = sprintf( $args['name'], $i ); >else < /* translators: %d: Sidebar number. */ $_args['name'] = sprintf( __( 'Sidebar %d' ), $i ); >> else < $_args['name'] = isset( $args['name'] ) ? $args['name'] : __( 'Sidebar' ); >/* * Custom specified ID's are suffixed if they exist already. * Automatically generated sidebar names need to be suffixed regardless starting at -0. */ if ( isset( $args['id'] ) ) < $_args['id'] = $args['id']; $n = 2; // Start at -2 for conflicting custom IDs. while ( is_registered_sidebar( $_args['id'] ) ) < $_args['id'] = $args['id'] . '-' . $n++; >> else < $n = count( $wp_registered_sidebars ); do < $_args['id'] = 'sidebar-' . ++$n; >while ( is_registered_sidebar( $_args['id'] ) ); > register_sidebar( $_args ); > >

Cвязанные функции

sidebar (widget Виджет)
  • dynamic_sidebar()
  • is_active_sidebar()
  • is_active_widget()
  • is_dynamic_sidebar()
  • is_registered_sidebar()
  • register_sidebar()
  • register_widget()
  • the_widget()
  • unregister_sidebar()
  • unregister_widget()
  • wp_get_sidebars_widgets()
  • wp_register_sidebar_widget()
  • wp_register_widget_control()
  • wp_unregister_sidebar_widget()
  • WP_Widget_Archives()
  • wp_widgets_init()
Виджеты (сайдбары)

Добавление боковой панели с помощью редактора сайта

Многие веб-сайты, особенно блоги, содержат боковую панель с дополнительной информацией, например с изображением, текстом «Обо мне», ссылками на другие записи, профилями в социальных сетях и многим другим.

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

В этом руководстве

  1. Создание боковой панели в пустом шаблоне
  2. Добавление боковой панели в шаблоне индекса или архива

Как правило, элемент боковой панели можно добавить с помощью блока «Столбцы» с макетом 70/30, где малый столбец будет боковой панелью.

Перейдите в раздел Внешний вид Редактор сайта, щёлкните значок своего сайта в верхнем левом углу и выберите Шаблоны. Затем, в зависимости от своих потребностей, можно выполнить следующие задачи.

Создание боковой панели в пустом шаблоне
  1. Выберите пустой шаблон.
  2. Нажмите кнопку инструмента вставки блоков + и вставьте блок «Столбцы».
  3. Установите макет с двумя столбцами и выберите соотношение 70/30.
  4. В малом столбце добавьте любые блоки на боковую панель.
  5. В большом столбце добавьте блок Содержимое записи. Это позволит динамически отображать содержимое страницы или записи, для которой позже будет применён пустой шаблон (см. шаг 7.)
  6. Нажмите кнопку Сохранить.
  7. Отредактируйте страницу или запись, где вы хотите иметь боковую панель. В настройках, расположенных в правой части, найдите параметр Шаблон. Выберите здесь пустой шаблон.

Теперь на любой странице или в записи, где используется пустой шаблон, появится боковая панель рядом с содержимым страницы или записи.

Добавление боковой панели в шаблоне индекса или архива

Шаблон Индекс предназначен для отображения записей. Шаблон Архив предназначен для отображения записей с конкретной рубрикой или меткой. Благодаря добавлению боковой панели в любой из этих шаблонов она появится на ваших страницах записей, а также на страницах рубрик и меток.

Перейдите в раздел Внешний вид Редактор сайта, щёлкните значок своего сайта в верхнем левом углу и выберите Шаблоны. Затем сделайте следующее.

  1. Выберите шаблон Индекс.
  2. В представлении В виде списка выберите блок цикла запросов и преобразуйте его в блок «Столбцы».
  3. Установите для блока «Столбцы» макет с двумя столбцами в разделе настроек блока «Столбцы».
  4. Используя представление В виде списка, выберите каждый столбец и установите для одного 70 %, а для другого 30 %.
  5. В малом столбце добавьте любые блоки на боковую панель.
  6. Нажмите кнопку Сохранить.

То же самое можно сделать и для других шаблонов, таких как «Страница», «Главная страница», «Одна запись», 404 или Поиск.

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

Сайдбар и виджеты WordPress

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

Что такое сайдбар WordPress

Правильно, по существующим правилам перевода WordPress, слова “сайдбар” в официальном переводе нет. “Родное” sidebar нужно переводить, как “область виджетов” или “боковая панель”.

На практике, сайдбаром WordPress называют “область виджетов” или “боковая панель” или “боковые колонки” блога, справа и/или слева, сверху и/или снизу от основного содержания (статей или архивов) сайта. В зависимости от шаблона (темы WordPress) на блоге может быть от 0 до 3 боковых колонок.

В боковых колонках размещаются дополнительные информационные блоки, которые назывались и называются виджеты блога (widget).

Со временем код WordPress дополнялся новыми функциями, и стало возможным выводить виджеты не только в боковых колонках, но и в других местах темы.

Именно поэтому, сайдбаром WordPress называют любое место в теме, где можно разместить виджет.

sidebar-wordpess

Обычно разработчики тем не создают произвольных мест для вывода виджетов, но их можно создать самостоятельно. Теперь о виджетах.

Виджеты WordPress

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

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

Виджеты WordPress по умолчанию

По умолчанию, WordPress предоставляет несколько виджетов. Их 12.

Сайдбар и виджеты WordPress

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

сайдбар-и-виджеты-wordpress-6

сайдбар-и-виджеты-wordpress-3

Установленные виджеты шаблона WordPress по-умолчанию.

сайдбар-и-виджеты-wordpress-1

Виджет может иметь заголовок, и у каждого виджета есть свои настройки отражения.

сайдбар-и-виджеты-wordpress-2

Порядок виджетов в сайдбаре меняется простым перетаскиванием.

Сайдбар и виджеты WordPress – взаимозависимость

Сайдбар и виджеты WordPress взаимозависимы. Без сайдбара не будет виджетов, а без виджетов сайдбар, может быть только скучным статическим информатором.

Все сайдбары темы регистрируются в файле fungtion.php . Виджеты выводятся на сайт хуком [widgets_init] . Для создания и вывода виджетов, в системе есть специальный класс [WP_Widget] .

Еще статьи

  • Домен для WordPress сайта
  • Области меню WordPress сайта
  • Что такое тема WordPress
  • Установка WordPress на сервер хостинга
  • Что такое плагины WordPress
  • Установка и удаление плагина на WordPress
  • Первые настройки WordPress
  • Как объединить два сайта WordPress
  • Настройки постоянных ссылок WordPress
  • Хостинг для WordPress: параметры хостинга сайта WordPress

Сайдбары в WordPress

Хотите больше практики? Рекомендую тогда посмотреть мой видеоурок по сайдбарам.

Прежде всего давайте уточним несколько общих моментов про сайдбары:

  • Сайдбар — это область сайта слева или справа от основного контента (одним словом боковая колонка),
  • Сайдбар в WordPress — это любая область на сайте, в которой выводятся виджеты;

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

Единственное отличие определения сайдбара в WordPress это то, что он может находится где угодно на странице сайта (но чаще всего это боковые колонки справа и слева от контента и футер).

В этом шагу мы рассмотрим пошагово как создать два сайдбара — один в боковой колонке и один в подвале (футере) сайта.

Шаг 1. Регистрация сайдбара

Для начала скажу, что в разных темах WordPress сайдбары регистрируются по-разному, в некоторых ещё до сих пор используется способ 2007-го года. Почему? Да просто некоторые липовые разработчики любят неосознанно копировать код из других тем, их даже не волнует, что тема, которую они используют в качестве своего «на все случаи» шаблона, не обновлялась более 5 лет.

Это я к тому, что код, который я дам вам сегодня может отличаться от кода, используемого в вашей теме — пусть это не станет поводом для волнений, просто замените старый код на новый.

Как я уже говорил, мы будем создавать два сайдбара — в боковой колонке и в футере, в этом нам поможет функция register_sidebar() (если что-то будет непонятно в коде — смотрите документацию функции). Хук widgets_init обязателен!

Код для файла functions.php :

Вот что получилось у меня на странице Внешний вид > Виджеты:

Зарегистрированные сайдбары

Уже сейчас вы можете добавлять и настраивать виджеты в сайдбарах, теперь осталось только вывести их на сайте.

Шаг 2. Как отобразить сайдбары на страницах сайта?

Как и в случае из первого шага, в разных темах вы можете найти разный код, отвечающий за вывод сайдбаров на сайте. Я рассмотрю только один способ, который использую сам, с использованием функций is_active_sidebar() и dynamic_sidebar().

В двух словах о том, для чего нужны эти функции:

  • is_active_sidebar() — проверяет, есть ли в сайдбаре виджеты,
  • dynamic_sidebar() — выводит сайдбар;

Давайте теперь выведем те два сайдбара, которые мы создавали в прошлом шаге. И начнем с боковой колонки:

 if ( is_active_sidebar( 'true_side' ) ) : ?> 
dynamic_sidebar( 'true_side' ); ?>
endif; ?>

Куда вставлять код? Ну где хотите вывести сайдбары, туда и вставляйте. Не уверены в какой файл? Ну, вообще это полностью зависит от вашей темы, но вероятнее всего, что код боковой колонки вставлять в sidebar.php , а код футера в footer.php . Возможно вам ещё пригодится документация функций get_sidebar() и get_footer().

 if ( is_active_sidebar( 'true_foot' ) ) : ?> 
dynamic_sidebar( 'true_foot' ); ?>
endif; ?>

Ещё несколько советов относительно сайдбаров

Каждый из нижеперечисленных советов поможет избежать весьма серьёзных багов на сайте, однако, если вы хорошо разбираетесь в PHP и WordPress, ничего нового из этих советов вы не узнаете.

    Если выводимый садбар не имеет виджетов, то при помощи if и else можно задать код, который будет выполняться в этом случае:

if ( is_active_sidebar( 'true_foot' ) ) : dynamic_sidebar( 'true_foot' ); else : // код по умолчанию на случай, если сайдбар пустой endif;

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

Как отключить сайдбар в WordPress?

Могу предложить вам пару вариантов решения этой задачи:

  • Вручную — удаляем функции register_sidebar() и dynamic_sidebar() из файлов functions.php и sidebar.php . Этот способ самый действенный. Если же вы не хотите, чтобы после обновления темы все ваши изменения исчезли, используйте дочерние темы.
  • Функция unregister_sidebar() позволяет отключить сайдбар (но нужно знать его ID, да и код из sidebar.php всё равно придется удалять вручную).

Ещё про сайдбары

  • register_sidebar() — регистрирует сайдбар
  • register_sidebars() — позволяет зарегистрировать несколько сайдбаров за раз
  • is_active_sidebar() — проверяет, добавлены ли виджеты в сайдбар
  • dynamic_sidebar() — выводит сайдбар
  • unregister_sidebar() — отключает сайдбар

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Комментарии — 156

Daria 15 Июн 2014
Спасибо, Миша! Все доступно, понятно и интересно.
Андрей 26 Июл 2014

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

Миша 26 Июл 2014

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

Михаил 3 Окт 2015

Подскажите пожалуйста, а как в таком случае перерабатывать код сайта, чтобы боковая колонка использовалась без функции сайдбаров и виджетов. Я тоже чую, что такие плагины, как управление сайдбаром подарят мне незабываемые нагрузки, поэтому и нашел вашу статью, как все сделать ручками. Но вот чтобы так, без лишних виджетов вообще. Это было бы здорово!)

Миша 5 Окт 2015

Просто найдите в коде сайта те функции, которые описаны в этой статье для регистрации сайдбаров и удалите их 🙂 Искать в functions.php и sidebar.php . Про нагрузки вы зря — это зависит от того, какие именно плагины.

Катерина 30 Июл 2014

Добрый день!
в Lubith.com создала тему сайта с двумя (слева и справа) сайтбарами. зашла в админ.панель WP, установила эту тему, а левого сайтбара нет. ((( как мне отобразить его?
Спасибо.

Миша 30 Июл 2014

Добрый день!
Обычно такие вещи должны быть либо в настройках темы либо в настройках, которые находятся непосредственно на страницах редактирования постов.

Александр Гудов 6 Сен 2014
Не могу поменять заголовки виджетов в сайдбаре, а точнее поменять теги h2 на h4.
Миша 6 Сен 2014
А что вы для этого делаете?
Александр Гудов 7 Сен 2014
Я поменял их в коде сайдбара, но изменений не наблюдается
Миша 7 Сен 2014

Если вы всё правильно сделали, это должно помочь (по крайней мере для стандартных виджетов WordPress).

Виктория 19 Сен 2014

Здравствуйте! Сайдбары в футере в админке появляются. На сайте в виде ромбиков текст (как зашифрованный). В чем может быть причина? В style.css нужно что-то прописывать?

Миша 19 Сен 2014

Добрый день! 🙂
Можете скинуть ссылку на сайт? Первая мысль которая мне приходит в голову — попробуйте поменять кодировку файлов в UTF-8 без BOM (особенно того файла, в котором вы регистрировали сайдбар).

Виктория 19 Сен 2014

Миша, здравствуйте!
Я разобралась. Просто неправильно немного поставила html код. Спасибо за быстрый ответ. Теперь нужно разбираться с ровным размещением. Ссылку отправила на Вашу почту.

Миша 20 Сен 2014
Здравствуйте!
К сожалению никаких писем на почту не пришло.. Папку спама тоже проверял.
Ильнур 17 Окт 2014
Разобрался. Ура.
Елена 27 Окт 2014

Здравствуйте, Михаил!
Нигде не могу найти ответ. Может кто поможет. У меня есть блог на WordPress. Поставила там форум через плагин bbpres. Вроде все нормально отображает, но нужно убрать на страницах форума левый сайдбар. Как — то он там не в тему. А сами страницы форума вытянуть по всей ширине блока с контентом. Как это сделать?

Миша 27 Окт 2014
Добрый день!
Честно, с bbpres пока не приходилось работать 🙂
Миша 27 Окт 2014
Могу попробовать помочь в принципе, вышлите мне логин и пароль к админке по email.
Елена 28 Окт 2014

Спасибо, Миша!
К сожалению не знаю твоей email. Если ответом отправлять письмо на почему — то возвращает.
Вроде разобралась, но еще не совсем. Вот посмотри, может что подскажешь. http://freekreat.ru/forums/.
Сейчас на форумах он подгружает вместо page.php, который по умолчанию грузит — forum.php. Там все нормально страница формируется без сайдбара. Но, сцуко в опере нормально все показывает, а в Mozilla Firefox вся верстка плывет. Даже ослина IE и тот нормально показывает. Может у меня с компом какой глюк?

Миша 28 Окт 2014
У меня норм отображается в Chrome, Opera и Safari 🙂 Может в Firefox просто кэш?
Елена 28 Окт 2014
Спасибо, помог вылечить :). Все норм. кажет. То я уже снова думаю сидеть шаблон ковырять
Илья 13 Ноя 2014

Здравствуйте.
Никак не могу нагуглить, как сделать в вордпрессе что бы высота сайдбара всегда была равна высоте основной страницы (если страница выше)?
И соответственно наоборот, что бы основная страница была высотой с сайдбар (если сайдбар выше)?

Велемудр 29 Ноя 2014

Попробуйте использовать свойство display:inline-table; к родительскому элементу, оно «делает» из них таблицу, всё выравнивается по высоте большего.
Не работает в ие7.
Другой метод — вложенность. Много лишних div-ов, но метод работает и в ИЕ6.
Вот на Хабре описаны несколько способов: http://habrahabr.ru/post/183542/
Надеюсь Михаил не удалит ссылку.

Миша 13 Ноя 2014
Здравствуйте! Как-то так:

$('#sidebar').css({'min-height': $('#content').height() }); $('#content').css({'min-height': $('#sidebar').height() });

Велемудр 29 Ноя 2014

Добрый день Михаил.
Ответьте пожалуйста, вот у студии RocketTheams в шаблонах есть страницы sidebar-left.php, sidebar-right.php и sidebar-page.php, мне ну очень интересно, возникнуть необходимость может в любой момент, но именно по этому виду создания страниц-шаблонов ничего не нашёл.
Как я понимаю, не только сайд-бар регистрируется, где-то ещё и страницу. регистрируют что ли, не знаю как это называется, но это разное с назначением шаблона через метки и указатели в странице, тут этим и не пахнет.
Объясните, пожалуйста, как эти страницы могут работать и желательно пример.
Благодарю!

Велемудр 29 Ноя 2014

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

Миша 30 Ноя 2014
Рад, что вы разобрались) Успехов!
Сергей 31 Дек 2014

А если у темы только правый сайдбар, как сделать чтоб и левый то же был..как его туда поставить, именно слева

Велемудр 31 Дек 2014

Обыкновенно.
Имя сайдбара задаёте соответствующее, и пишете команду вывода в блоке под левый сайдбар, соответственно с именем его.

Сергей 31 Дек 2014

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

Миша 1 Янв 2015

dynamic_sidebar( 'название_сайдбара' );

Миша 1 Янв 2015

А вообще дело это довольно непростое, если ваша тема сама по себе не подерживает два сайдбара (поищите в настройках), то, для того, чтобы добавить второй сайдбар через код, придется не только регистрировтаь его через php, но и переверстывать html.

Слава 19 Янв 2015
наконец-то нашел нормальную, адекватную и понятную статью. В закладки . СПАСИБО !))))
илдар 4 Фев 2015
а как сделать чтобы было не вертикальным а горизонтальным размещение информации на сайт баре?
Миша 5 Фев 2015

Возможно мой ответ вас не удовлетворит — при помощи CSS, float:left , ну и поменяв расположение элементов. Большу тут и добавить нечего.

Мария 20 Фев 2015
А как отключить сайдбар только на одной странице?
Миша 20 Фев 2015
Ну например для всех, кроме страницы с

if ( !is_page(5) && is_active_sidebar( 'true_foot' ) ) : dynamic_sidebar( 'true_foot' ); endif;

Елена 27 Мар 2015

Здравствуйте, Михаил.
Скачала немного кривую тему, часто кривизны исправила, но sidebar выводится внизу страницы, а не сбоку. Вот, видите, внизу страницы видео — это сайдбар на самом деле: http://sofia-psy.ru/silnaya-zhenshhina-i-muzhchiny/
В чем может быть проблема, как его вывести сбоку?

Миша 28 Мар 2015

  1. для блока .container и #primary задайте значение ширины и установите обтекание float:left ,
  2. чтобы всё не начало съезжать непонятно куда, оба этих блока поместите в ещё какой-нибудь div и установите для него overflow:hidden .

Елена 28 Мар 2015
Спасибо большое!
Владимир 5 Апр 2015

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

Владимир 5 Апр 2015
Миша вопрос снимаю, сам нашел ошибку, в наименовании файла.
Владимир 9 Апр 2015

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

Миша 9 Апр 2015
Здравствуйте! В вашей теме не хватает CSS стилей для обтекания картинок.
Владимир 12 Апр 2015

Спасибо Миша, да я её нашел. У меня еще один вопрос: Я создал новый шаблон для своего сайта Будстрапе, все работает отлично но на малых экранах, когда сужаю экран до конца, фото в посте не сжимается и вылазит с блока, не могу понять где я недоработал, если в теме, помоги пожалуйста.

Владимир 12 Апр 2015
На будстрапе
Егор 12 Апр 2015
К картинке пробовали класс

img style="color: #c1ef65;">"img-responsive" src=". " alt=". " />

если на bootstrape то так.
Владимир 13 Апр 2015

Это тоже не сработало, по моему тут стилями надо оперировать. Ладно буду экспериментировать сам, спасибо.

Егор 12 Апр 2015

Спасибо, Миша. 5 минут (в первый раз регистрирую) и три сайдбара в подвале сайта. Осталось стили оформить. 🙂

Андрей 16 Май 2015

Доброго времени суток! В шаблоне Esteem сайдбары регистрируются в файле esteem/inc/widgets.php
Сделал все по инструкции, но новых сайдбаров я не вижу в админке.
При этом изменения в текущих я вижу. Подскажите, может ли где то еще лежать упоминание?

Андрей 17 Май 2015

Какие-то странности.
Перед первым сайдбаром, и набрав текст регистрации вручную, только после этого я увидел сайдбары.

Наталья 23 Май 2015

Миша, помогите.На школьном сайте в Вордпресс написано: Присвоенное по умолчанию значение равно «sidebar-1». Чтобы убрать это сообщение и сохранить текущее содержимое боковой колонки, задайте вручную параметр id, равный «sidebar-1». Что делать? КАК ИСПРАВИТЬ? Вот вошла я в консоль, что дальше нажимать, Настройки?

Андрей 23 Май 2015
Точнее?
Читайте внимательно «Шаг 1».
Наталья 23 Май 2015

Андрей, понимаю, что я «туплю», но. Сайт уже существует не один год, сайдбар, естественно тоже, но, после обновления выскочило сообщение: » . sidebar вызвана неправильно. В массиве аргументов для боковой колонки «Sidebar» не задан параметр id. Присвоенное по умолчанию значение равно «sidebar-1». Чтобы убрать это сообщение и сохранить текущее содержимое боковой колонки, задайте вручную параметр id, равный «sidebar-1». » И теперь невозможно работать в консоли. Что делать-то? Помогите пошагово. Консоль -Внешний вид-Редактор — Да? А потом что? Я меняла на сайдбар1 id, но всё расплылось на главной странице. Помогите.

Андрей 24 Май 2015

задайте вручную параметр id, равный «sidebar-1».

Я меняла на сайдбар1 id

Я не понимаю, Вам система написала задайте id равный «sidebar-1», вы задаете «сайдбар1».
Естественно все расплывется, система не видит зарегистрированного сайдбара с таким id.

Консоль -Внешний вид-Редактор — Да?

В первом шаге, написано, открываем functions.php, его и редактируем.
Ищите хук widgets_init, внутри будут регистрации, по-идее первый и есть «sidebar-1»

Егор 24 Май 2015
Здравствуйте Наталья. Файл functions.php в студию. Можно на фриланс его отдать.
Наталья 24 Май 2015

Попыталась что-то исправить — «угробила» сайт. Вот будет мне взбучка! Теперь вот что вместо сайта: Ошибка разбора : ошибка синтаксиса, неожиданный » Боковая панель-1 » (T_CONSTANT_ENCAPSED_STRING) в /var/www/vaychka/data/www/vaychka.68edu.ru/wp-content/themes/spacious-vision/functions.php на линии 5 Что же делать-то мне теперь? Егор подскажите!

Наталья 24 Май 2015
Можно ли сайт-то вернуть? Спасибо
Егор 24 Май 2015
Напишите мне на почту jegorfilippov@mail.ru Желательно сейчас 🙂
И.В. 24 Май 2015

Здравствуйте, Михаил! Подскажите, если не сложно
Сайт http://dnevniki.ua/ Требуется: поменять внешний вид как здесь http://dnevniki.ua/wp-content/uploads/2015/05/dnevniki.gif, т.е.:
— Убрать вообще насовсем sidebar, который справа, на всех внутренних страницах и записях. Это та правая часть страницы, где сейчас выведены страницы и категории. Соответственно надо будет и изменить горизонтальный размер страниц и записей.
— На всех внутренних страницах и записях сайта хочу добавить то горизонтальное меню, которое расположено вверху на главной странице сайта под блоком логотипа.
Мпасибо заранее!

Миша 25 Май 2015
Здравствуйте!
Чем вам помочь? Напишите мне по email — всё сделаем.
Влад 5 Июн 2015

Добрый день. У меня очень похожая проблема с сайдбаром. «sidebar вызвана неправильно. В массиве аргументов для боковой колонки «Боковая колонка 1». и так далее». Дело в том, что в wp-includes/functions.php on line 3563 на этой строке нет sidebar. Там написано следующее: trigger_error( sprintf( __( ‘%1$s was called incorrectly. %2$s %3$s’ ), $function, $message, $version ) );
И во всем вайле ни где не упоминается sidebar. Не понимаю как я могу заменить на sidebar-1 если его там нет. Можете мне помочь?

Андрей 5 Июн 2015

Вы ищите не в том файле. Вам нужно смотреть в function.php ШАБЛОНА.
В крайнем случае поиск по содержимому

Влад 5 Июн 2015

Поиск по содержимому того файла ничего не дал. А в functions.php в шаблоне один единственный короткий код и больше ничего:

Не совсем понимаю где нужно заменить sidebar на sidebar-1
Андрей 5 Июн 2015
Добавьте id
register_sidebar(
array(
‘id’ => ‘sidebar’,
Влад 5 Июн 2015
Спасибо. Проверю. Только еще один ворос. На некоторых страницах выводится следующее:

Notice: Функция get_settings с версии 2.1 считается устаревшей! Используйте get_option(). in /home/user1063/data/www/olddendy.net/wp-includes/functions.php on line 3391

Ни в одном из файло functions.php нет get_settings. Где же его найти?
Андрей 5 Июн 2015
Попробуйте провести поиск по содержимому всех файлов сайта. Тоталкомандер это умеет.
Влад 6 Июн 2015

Огромное Вам спасибо! То, что вы посоветовали очень помогло. Заработала админка, а вот сайдбар почему-то пропал совсем ((( Что же делать.
В сайдбаре написано следующее:

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

В в functions.php следующее:
Влад 6 Июн 2015
Понял сам. Нужно было указать ‘id’ => ‘sidebar-1’,
Сплетница 10 Июл 2015

Добрый вечер, Михаил! Ваша статья пришлась мне очень кстати! Передо мной как раз стоит задача добавить сайдбар в мой шаблон (изначально есть только правый). Учитывая, что я «не волшебник, а только учусь», я воспользовалась Вашим кодом регистрации сайдбара. Все прошло успешно, он есть на странице виджетов. Но далее у меня возникают проблемы: я добавила код в single.php и поставила для эксперимента пару виджетов. Виджеты стали отображаться сверху записи, а не справа, как мне нужно. Убрала код и вписала в sidebar.php — виджеты добавляются в правый сайдбар над теми, которые уже есть. В общем, моя задача: добавить левый сайдбар с корректным отображением на странице. Причем он должен отображаться везде. Можете что-то подсказать? Надеюсь, я ясно изложила свою мысль. Заранее спасибо.

Миша 11 Июл 2015

Здравствуйте!
Просто посмотрите, как добавлен правый сайдбар — по тому же принципу добавьте и левый. Скорее всего придется уменьшить ширину основного контента в CSS.

Сплетница 11 Июл 2015
А добавить нужно в файл sidebar.php? И тогда он будет отображаться везде?
Егор 12 Июл 2015

Просто нужно новому сайдбару стили присвоить. Если макет резиновый или адаптивный, то размер контента, скорее всего менять не нужно.
Я вообще по статье Михаила сделал три сайдбара перед Footer и внес их в один файл sidebar-footer.
Вот отрывок одного из сайдбаров

if ( is_active_sidebar( 'sidebar-1' ) ) : ?> 
dynamic_sidebar( 'sidebar-1' ); ?>
endif; ?>

Вам, скорее всего, нужно

 dynamic_sidebar( 'true_side' ); ?>

поставить выше вывода контента и назначить классу, какой там он у вас

.uour-classe{ float: left; }

Но не факт, шаблоны то разные.
Евгений 11 Авг 2015

Здравствуйте.
Интересует следующее: возможно ли только для одной конкретной категории и всех ее статей показывать отдельный сайдбар?
Пробовал в archive.php различные варианты через:
«if ( is_category(‘2’) ) < include 'sidebars/sb-recipes.php'; >«. всегда показывает сайдбар только для категории, но не для ее статей. в ручную указывать ID статей не вариант, т.к. статей в этой категории могут быть тысячи. Есть ли универсальный код, скажем типа: если категория 2 + все принадлежащие ей статьи —> подключаем сайдбар2.php
(плагины не интересуют!)
Заранее спасибо!

Миша 12 Авг 2015
Добрый день!

if( is_category(2) || in_category(2) ) { }

Евгений 12 Авг 2015

Большое спасибо за ответ, однако почем-то сайдбар-2 по-прежнему подключается только для категории. в статье выводится стандартный сайдбар. Вот используемый код:

Евгений 12 Авг 2015

 else < include 'sidebar.php'; >?>

Егор 12 Авг 2015

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

Миша 13 Авг 2015

Вы можете также попробовать вытащить массив всех рубрик поста и потом проверить, принадлежит ли ему рубрика 2, и тогда подключать сайдбар:

$categories = wp_get_post_terms( $post->ID, 'category', array( "fields" => "ids" ) ); if( is_category( 2 ) || in_array( 2, $categories ) ) include 'sidebar-recipes.php'; else include 'sidebar.php';

Odessit 16 Авг 2015

Доброй ночи! Подскажите в таком моменте, надо чтобы на сайте был плавающий виджет в боковой колонке, проблема в том, что мы это делаем или плагином или скриптом, но в обоих случаях каждому виджету тогда присваивается id, но если мы посмотрим через tools.pingdom.com то кол-во запросов увеличивается почти в 2 раза, что естественно просто огромное кол-во. Можно как-то присвоить id только одному конкретному виджету или вообще без присвоения сделать виджет плавающим? Пока такого найти нигде не смог((( Заранее благодарю.

Миша 17 Авг 2015

Здравствуйте!
А разве присвоение id элементам увеличивает количество http-запросов? Возможно запросы увеличились из-за того, что установленный вами плагин наподключал своих скриптов?

Odessit 19 Авг 2015

Я пробовал и без плагина, через скрипт, добавляется вот таких вот около 160 запросов, как только отключаю плагин или убираю скрипт, всё пропадает.
Вот на радикал скрин того что вылазит http://s016.radikal.ru/i334/1508/d4/e3a3b9cd1894.jpg
Да, изначально у меня не прописано %1$s, то есть если через скрипт, то приходится дописывать это.

Миша 20 Авг 2015

А что за картинка такая, весящая 0 байт — id.gif ?
Я бы поискал её и удалил (именно из кода, а не на сервере).

Odessit 20 Авг 2015

Долго искал, не мог её найти, но всё же методом тыка определил, данная картинка, точнее их там 4 получается, id.gif и те 3 ссылки ниже, также ведут на картинки в виде точки, это выводит так тизерка. Но проблема в том, что в плавающем виджете почему-то это всё выводится в среднем 40 раз. То есть если я убираю этот блок плавающий и остаётся блок этой тизерки под статьёй, то они выводятся 1 раз, в неплавающем виджете тоже 1 раз, итого 2 раза, а если виджет становится плавающим, то получается вот такая история. На данный момент на сайте всего 3 виджета, id у них 42, 43, 45, 44 недавно получается удалил 4-й с номером 44, но в админке нет неактивных виджетов, я думал, может оно их все равно где-то как-то видит, и каким то образом в них вставляет? Но только при задании id это происходит, без этого, такого нет. Поэтому вот и вопрос, как задать id одному виджету или создать блок, чтобы только в нём считались виджеты и там был он всего один? Так как проблема где-то в этом(((

Миша 21 Авг 2015

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

Александр 19 Авг 2015

Здравствуйте! Может и мне поможете? Хочу слева сделать узкий сайдбар для размещения рисунков-ссылок на интернет-ресурсы. Что нужно делать? При помощи плагина какого или прописывать как выше указано?
Прилагаю рисунок http://s017.radikal.ru/i410/1508/b1/33e16a89ca30.png
Адрес сайта ananichy.by
Тема Socialize Lite.
Прочитал вашу статью . но боюсь напортачить! Тем более в файле functions.php нет функции register_sidebar() .

Миша 20 Авг 2015

Здравствуйте!
Тут нужно уже править код шаблона, одними только функциями регистрации сайдбара дело не ограничится.

Александр 21 Авг 2015
А как это осуществить? Очень нужно .
Александр 22 Авг 2015
Ответа по видиму не будет.
Миша 23 Авг 2015

Блин, в отъезде я был в выходные, елы-палы! Если не знаете, как добавить колонку в шаблоне сами, обратитесь к разработчику на фрилансе, думаю за 500р вам сделают.

Владимир 12 Окт 2015

Миша приветствую, есть одна проблема, может ты сможешь помочь а то Гугол выдает не то. В общем я недавно установил на сайт плагин DW Question Answer, он нечто на подобии вопросов/ответов и оказалось что в его текстовом редакторе не работает загрузчик медиафайлов, все бы ничего но этот злосчастный загрузчик не работает и на других плагинах, КонтактФорм 7 и еще на одном который я использую для бесплатных объявлений на сайте, в общем нигде не работает, проверил. Я отключал все плагины и скрипты и по очереди подключал, думал где то конфликт но результат это не дало, ошибку я так и не обнаружил. Миша если ты сталкивался с подобной проблемой помоги пожалуйста или посоветуй к кому обратиться. Заранее благодарю.

Миша 13 Окт 2015
Приветствую!
А помимо отключения плагинов тему меняли на стандартную?
Владимир 13 Окт 2015

Здравствуй Миша, спасибо за ответ. Тему я не менял потому что на тестовом сайте все работает, открывается библиотека с фотографиями и я могу загружать их оттуда или с компа. Не знаю можно ли сюда вставлять адрес сайта но я сейчас скину, может так лучше сможешь понять проблему, правда у тебя значок загрузки медиафайлов наверное пропадет, у меня он находится слева над текстовым полем.
Вот адрес страницы: http://zakarpat-tour.com/dobavit-obyavlenie Посмотри пожалуйста возможно ты как профи быстрее увидишь ошибку.

Егор 13 Окт 2015
А может с хостингом что? По моему где-то встречал такую неприятность.
Владимир 13 Окт 2015

С хостингом не может быть проблем, я же написал что на тестовом сайте все работает а он на том же хосте

Миша 14 Окт 2015

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

Владимир 14 Окт 2015

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

Владимир 14 Окт 2015

Извини Миша что гружу тебя, есть еще одна деталька, в настройках плагина есть выбор форматирования текста, простой текст, ХТМЛ и еще что то, так вот, если я переключаю на ХТМЛ то под иконкой загрузчика и над текстовым полем появляется рамка, но пустая. На текстовом сайте в том месте появляются иконки форматирования текста.

Миша 16 Окт 2015

Приветствую,
вы неправильно поняли, сравнивать нужно не файлы с кодом, а результат, уже сгенерированные страницы.

Владимир 16 Окт 2015

Здравствуй Миша, я и не сравнивал файлы, просто на тестовом сайте базовая страница а на рабочем выводится отдельным файлом, но я подключал и к базовой — результат ноль.

Александр 24 Авг 2015
🙂 Всё ясно! Вопрос закрыт! Больше не побеспокою! Удачи! 🙂
Егор 13 Окт 2015

А что, прикольно часа 2-3 в коде чужом за бесплатно копаться, сайдбары выводить? Как думаешь, Александр?

Андрей 18 Окт 2015

Вопрос: у меня на сайте есть страницы, рубрики (со списком постов), и посты — так вот сайдбар можно вывести везде, кроме рубрик — это особенности моей темы или в вордпрессе так продумано, что именно в рубрике со списком постов нельзя выводить сайдбар?

Владимир 18 Окт 2015
Здравствуйте, что то я не понял вопроса, у вас какой файл выводит рубрики?
Андре 19 Окт 2015

content-post.php
На странице рубрики (на которой выводятся Заголовки всех постов), невозможно отобразить сайдбар.

Андре 19 Окт 2015
Кажется я разобрался, поправьте меня если не так:
нужно рубрику прикрепить к странице — верно?
Владимир 19 Окт 2015

Вы наверное не можете его вывести потому что в файле content-post.php не заданы размеры блока с заголовками постов, для сайдбара же нужно место, если оно не задано то он и не выведется

Миша 19 Окт 2015
Добрый день! Вы разобрались?

это особенности моей темы или в вордпрессе так продумано

Особенности темы. Вам нужно вручную добавить вывод сайдбара в файл category.php , либо, если такого файла нет, то в archive.php , либо даже в index.php (это опять-таки зависит от вашей темы).

Андре 21 Окт 2015
Да, разобрался — в настройках прикрепил рубрику к странице и всё заработало =)
Алексей 19 Ноя 2015

Добрый ночи, Михаил.
Отличная статья и практически все получилось за исключением вывода сайдбара в нужном месте. Почитал комментарии, подобный вопрос был у Сплетницы, но как понял он так и не решился. Суть проблемы — есть шаблон с правым сайдбаром, с помощью вашей статьи подключил, вывел сайдбар, настроил стили, но он выводится правее правого сайдбара, а должен быть слева. Егор в той дискуссии советовал назначить класс

.uour-classe{ float: left; }

не помогает. класс, конечно прописал свой.
Буду благодарен за помощь.
Миша 19 Ноя 2015

  1. Определить точное место, куда в коде нужно добавить сайдбар и соответственно добавить его туда.
  2. Исправить то, что получилось в CSS.

Владимир 26 Ноя 2015

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

Миша 26 Ноя 2015
Привет!
Кидай ссылку сюда, гляну. Кэш весь почистил?
Владимир 26 Ноя 2015

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

Егор 26 Ноя 2015

Здравствуй, Миша. Блин, популярная статья, пока прокрутил вниз. 🙂 У тебя сверху, где мета, под названием статьи, две даты выскочило. И вопрос, правда не по теме, ты сайты делаешь на фреймворке, или свой используешь? Просто я посмотрел фреймворки, там лишних функций много.

Миша 26 Ноя 2015

Привет! Дата публикации и дата последнего обновления 🙂 Много это ещё мягко сказано,
иногда просят помочь с такими сайтами — помогаю, хоть и не очень охотно.

Егор 26 Ноя 2015
Просто в Opera криво смотрится. Я бы скрин скинул, некуда
Миша 27 Ноя 2015
У меня в Opera вроде норм. Да залей куда-нибудь и ссылку сюда вставь.
Егор 26 Ноя 2015

А я пока в php не могу сам писать сложные функции, тупо взял тему TventyTvelve стили удалил, добавил сетку bootstrap, а с фреймворка выдернул кастомайзер и в зависимости что нужно клиенту в кастомайзере оставляю.

Егор 27 Ноя 2015

Миша, не подскажешь как к ссылкам в сайдбаре добавить микроразметку itemprop=»url» ?
Я фильтром хотел, но что-то пошло не так.

function widget($content) { $pattern = "; $replacement = '; $content = str_replace($pattern, $replacement, $content); return $content; } add_filter('dynamic_sidebar', 'widget');

Подскажи пожалуйста.
Миша 27 Ноя 2015
По-моему для этого лучше свой виджет написать.
Егор 28 Ноя 2015
Вот скрин, Миша. Или так и задумывалось? https://yadi.sk/i/rR63dF70koM6W
Миша 28 Ноя 2015
Задумывалось 🙂
Артём 3 Дек 2015

Здравствуйте. У меня боковая колонка отображается не сбоку а сверху. Я сделал всё как написано, но я так понимаю что-то не так в моей теме. Не подскажите что это может быть? Сайт http://ukronews.ru/ на главной странице всё нормально, проблема в том что когда заходишь на какую-нибудь новость то сайдбара нет, а если я его устанавливаю, то он отображается вверху страницы.

Миша 4 Дек 2015
Здравствуйте!
У меня везде — порядок. Уже разобрались?
Артём 5 Дек 2015

Только что, благодаря вашему комментарию я понял, у меня адаптивный дизайн, а разрешение на мониторе низкое, вот он мне не там и показывал. Зашел с другого — все хорошо. Спастбо)

Артём 5 Дек 2015
Извините за беспокойство)
Егор 12 Дек 2015
Здравствуй, Миша. Сейчас в WordPress 4.4 новая функция появилась

is_registered_sidebar()

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

if ( is_active_sidebar( ) )

устаревшей. Как в виджетах функция Wp_widget
Миша 13 Дек 2015

Привет!
Отличие этих двух функций в том, что is_registered_sidebar() проверяет, зареган ли сайдбар вообще, а is_active_sidebar() — добавлены ли в него виджеты.

Максим 18 Дек 2015

Здравствуйте, Михаил. Подскажите, пожалуйста, может ли быть в теме заблокировано отображение сайдбара? Просмотрел кучу статей, опробовал все предложенные варианты и Ваш в том числе. Но сайдбар никак не хочет отображаться на сайте. Что можете посоветовать? Спасибо!

Миша 19 Дек 2015
Здравствуйте, расскажите по порядку, что вы делаете.
Максим 20 Дек 2015

1. В functions.php вставил код
function true_register_wp_sidebars() < /* В боковой колонке - первый сайдбар */
register_sidebar(
array(
‘id’ => ‘true_side’, // уникальный id
‘name’ => ‘Боковая колонка’, // название сайдбара
‘description’ => ‘Перетащите сюда виджеты, чтобы добавить их в сайдбар.’, // описание
‘before_widget’ => », // по умолчанию виджеты выводятся -списком
‘after_widget’ => »,
‘before_title’ => », // по умолчанию заголовки виджетов в
‘after_title’ => »
)
); /* В подвале — второй сайдбар */
register_sidebar(
array(
‘id’ => ‘true_foot’,
‘name’ => ‘Футер’,
‘description’ => ‘Перетащите сюда виджеты, чтобы добавить их в футер.’,
‘before_widget’ => »,
‘after_widget’ => »,
‘before_title’ => »,
‘after_title’ => »
)
);
> add_action( ‘widgets_init’, ‘true_register_wp_sidebars’ ); 2. В sidebar.php удалил весь код и втавил

 if ( is_active_sidebar( 'true_side' ) ) : ?> 
dynamic_sidebar( 'true_side' ); ?>
endif; ?>

3. В админке появился пункт Виджеты, зашел в него добавил необходимые виджеты, но на сайте они не отображаются.

Сергей 29 Дек 2015

Здравствуйте.
Я вот уже давно бьюсь над тем как в сайдбаре выводить произвольные поля.
И еще этот сайдбар выводить не в начале статьи а где-нибудь в середине.
Может Вы подскажете?

Миша 30 Дек 2015
Здравствуйте!
А в чем заключается проблема с произвольными полями?
Сергей 30 Дек 2015

function barbor() { $file = file_get_contents('pole.php', true); return $file; } add_shortcode( 'ch-s', 'barbor' );

И в шаблон закинул файл pole.php
Если в этот файл вставить код Адсенса, то он отлично выводится шорткодом [ch-s] А вот как вывести произвольные поля?
Вставленный в pole.php код ID, ‘pole_1’, true); ?> не канает. Дали мне совет, что надо сперва прочитать содержимое файла pole.php в переменную при помощи какой-нибудь php функции, а затем выводить уже эту переменную. Но для меня это темный лес.
Я вообще не знаком с php, поэтому мои мучения оказались напрасными. Была уже мысль отказаться от всего перечисленного выше и использовать обычный сайдбар, а в его виджеты уже совать кнопки т.д.
Но как через виджет вывести произвольное поле?
Кроме того из-за сайдбара ширина спутниковых карт в статье будет намного меньше. Такая вот задача.

Сергей 30 Дек 2015
В прошлом сообщении из текста исчезла часть кода вывода произвольных полей

 echo get_post_meta($post->ID, 'fotka', true); ?>

Миша 31 Дек 2015
Здравствуйте, с Наступающим! Внутри шорткодов используйте global $post; для получения ID поста.
Сергей 31 Дек 2015
А как его использовать? Можете привести пример?
Миша 1 Янв 2016
Да просто вставляете в самое начало функции шорткода.
Алексей 14 Янв 2016

Михайл, подскажите пожалуйста как разместить два разных сайдбара друг под другом?
Вожусь очень долго уже, никак не выходит. Цель: выводить второй сайдбар не везде.
Первый подключен так: Functions php:

register_sidebar(array( 'name' => 'Sidebar', 'id' => 'Sidebar', ) );

single php:

 get_sidebar(); ?>

Миша 14 Янв 2016
Примерно следующим образом, functions.php:

register_sidebar( array( 'name' => 'Sidebar 1', 'id' => 'sb1' ), array( 'name' => 'Sidebar 2', 'id' => 'sb2' ) );

А потом один под другим:

dynamic_sidebar( 'sb1' ); dynamic_sidebar( 'sb2' );

Алексей 19 Янв 2016

Михаил, спасибо за отклик!
Я думаю из-за особенностей моего шаблона, в админке оба сайдбара видны только если подключаю их так:
functions.php

register_sidebar( array( 'name' => 'Sidebar', 'id' => 'Sidebar', ) ); register_sidebar( array( 'name' => 'Sidebar-Extra', 'id' => 'Sidebar-extra', ) );

а вот дальше проблема, оба удалось вывести только так:
single.php

но тут, основной отображается на положенном месте, а вот дополнительный только над основным контентом. вордпресс не видит /> сдается мне нужно колдовать с sidebar.php
Спасибо за идею, колдую дальше.

Миша 19 Янв 2016

Ну get_sidebar() именно задействует файл sidebar.php , а dynamic_sidebar() вставляет уже само содержимое сайдбара с виджетами. Чтобы всё работало корректно, нужно уже разбираться в зависимости от кода темы, т е индвидуально.

Миша 19 Янв 2016
А get_sidebar( ‘Sidebar’ ); соответственно задействует sidebar-Sidebar.php .
Алексей 19 Янв 2016
или может создавать отдельный файл sidebar-extra.php?
Денис 19 Янв 2016

Здравствуйте Миша. Я совсем ещё чайник, создал сайт на вордпрес попытался зарегистрировать сайдбар вставил код в functions.php , но у меня появился белый экран с ошибкой (Parse error: syntax error, unexpected ‘
Миша 19 Янв 2016
Здравствуйте!
А вы откройте functions.php и удалите этот лишний символ 🙂
Тимофей 29 Янв 2016

Добрый день.
Как отключить сайдбар для форума bbpress? Область форума получается слишком узкой, поэтому требуется отключить сайтбар и растянуть форум с помощью css. Дело в том, что форум выводится не как страница и обычным методом отключения сайдбара на определенной странице — не получится.
Заранее благодарен за ответ.

Bkmz 8 Фев 2016

Это первый сайт в сети про ворпресс который описывает подробно на понятном языке для людей.. а не для разработчиков с двадцатилетним стажем.
добавляю в избранное.

Миша 8 Фев 2016
Станислав 19 Ноя 2019

Здравствуйте Михаил!
Отличная статья!
Хотелось бы Ваше мнение услышать по использованию виджетов. Подозреваю, что они грузят сайт. Мой блог открывается менее 2 сек. на мобилах, но сервис Гугла ругается и выдает только желтую зону.
Как Вы считаете, если заморочится, отключить виджеты и прописать просто html код в сайдбарах, увеличится ли скорость загрузки, и намного ли.
У меня на блоге с 10 своих шаблонов, под каждую рубрику, а то и под определенную запись, стоит ли заморачиваться?
И еще вопрос по графике (немного не в тему), раз уж Вы себя подаете, как эксперт.
Сервис Гугла по замеру скорости, в основном ругается на графику (вся графика сжата и используется отложенная загрузка), Гугл предлагает использовать современный формат изображений, но я читал, что еще не все браузеры поддерживают данный формат.
Каково Ваше мнение по новым форматам графики, на сегодняшний день все ли браузеры открывают данный формат, как поддержка на мобильных — старых версиях андроида и айфона, можно ли грузить современный формат, и как альтернативу jpg для старых версий браузеров, если можно, то с примером кода и таких сайтов.
Заранее спасибо за развернутый ответ!

Миша 22 Ноя 2019

Добрый день Станислав, Спасибо! Прежде всего хочу обратить внимание, что желтая зона гугле не является фактическим показателем загрузки сайта и ответа сервера. Если у пользователей вашего сайта быстрый интернет, а таких я думаю в наши дни всё больше и больше, то достаточно лишь убедиться, что сервер быстро выдаёт ответ, а это оптимизация со стороны PHP / плагинов / темы. Если у вас изображения не весят около 1мб, то уже и для медленного интернета всё будет вполне приемлемо. На вашем месте, если у вас есть другие, более важные задачи и в вашу цель не входит глубоко разбираться в вопросах оптимизации, я бы не заморачивался этими вопросами. По поводу виджетов – не влияет. Но тут конечно зависит от того, что вы в них захотите добавить,

Александр 16 Дек 2019

Добрый день! Подскажите как добавить на сайт на WordPress в теме Twenty Nineteen колонку с выбранными страницами. Все виджеты и плагины добавляют только в подвал, а мне нужно сбоку

Нариман 9 Окт 2021

Здравствуйте, создаю сайдбары с разными категориями товаров но либо выводятся все категории в сайдбаре, либо один и тот же сайдбар чудесным образом заменяется другим, не те какой я прописал на странице page.php. подскажите что делаю не так

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *