Замена вывода кода сайта-бара через функцию темы
Приветствую.
Есть вот такая проблема. В сайтбаре по традиции код выводится обернутый в тег li.
Какой код прописать в функции темы, чтобы тег li заменить на тег div.
В самом движке это делать не вариант, потому что при обновлении движка правка этого тега слетит.
Файл движка: widgets.php в папке wp-includes. Строка 248:
'before_widget' => '<li id="%1$s" class="widget %2$s">', 'after_widget' => "</li>\n",
Привет, Сергей.
Первый способ. Можно зарегистрировать новый сайдбар и указать ему эти самые
before_widget
иafter_widget
. К примеру в темеTwenty Sixteen
это сделано так:В итоге вёрстка сайдбара такая:
Второй способ. Есть хук register_sidebar, с помощью которого можно "подменить" данные из массива на свои собственные, к примеру:
Вместо
section
, определенных в теме, я подменил наdiv
и получилось уже вот так:Большое спасибо! А вот еще такой вопрос: если нужно зарегистрировать три сайтабара или четыре?
Через register_sidebars можно сразу несколько. Это похожая функция, но вместо 1 может зарегистрировать сразу несколько панелей.
Отлично! Благодарю.