Использование Встроенных Разделов Настройщика Тем
API настройки темы WordPress указывает, что для разработчика темы доступно несколько существующих готовых разделов настройки.
Если вы хотите использовать какие-либо из существующих встроенных, вам не нужно объявлять их с помощью add_section(). Вместо этого обращайтесь к ним по имени. Следующие разделы встроенный:
- заголовок_заголовок
- цвета
- изображение заголовка
- фоновое изображение
- навигация
- статический_фронт_страничный
Обращаться к ним по имени? Ха, что это вообще значит? Чтобы понять это лучше, я создал самую простую тему на планете. Вот мой стиль.css:
/*
Theme Name: Minimal ZZ Test Theme
Author: zipzit
Description: An absolute minimal theme, intended to test Theme Customization API
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags:
Text Domain: zz-test-theme
*/
body{
background-color: blue;
}
И index.php :
<?php ?>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Simple Web Page</title>
<link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( 'stylesheet_url' ); ?>" />
</head>
<body>
<h1> this is a test </h1>
</body>
</html>
Вот и вся тема. Нет никакого functions.php файл.
Когда я зашел в панель wp-администратора, Внешний вид --> Настройка Я получаю следующие ДВА (из шести возможных) раздела, отображаемых:
Как можно "ссылаться" на раздел по "имени"? Что выводит готовые варианты на панель настройки wp-администратора? И мой настоящий вопрос заключается в следующем: как вы можете скрыть уже существующий выбор при переопределении темы (с дочерней темой). Мы определенно не хотим, чтобы у наших будущих администраторов был шанс изменить то, чем они не должны быть. (Да, я знаю, что мы можем использовать систему разрешений администратора для скрытия элементов, но это не так мой вопрос...)
Кто-нибудь бывал здесь раньше? Много раз.
Редактировать/обновлять:
Вот моя точная ситуация. Я создаю множество веб-сайтов, часто используя дочернюю тему для изменения существующей темы, которая мне как бы близка. Я ищу очень простую, не раздутую тему начальной загрузки. Я нашел devdmbootstrap3, который меня очень впечатлил. Единственная проблема заключается в том, что тема генерирует множество вариантов настройки, которые мы не хотим отображать (цвета, изображение заголовка, фоновое изображение). Я не могу понять, что заполняет эти элементы. В вызове add_section() нет вызовов add_section(). functions.php файл. Я просмотрел этот файл (и всю тему, включая theme-options.php ) довольно осторожно. Опять же, я думаю, что моя проблема заключается в непонимании слов "обращайтесь к ним по имени". Я просто не вижу, как называются эти предметы.
Хм.. как я думаю об этом, я, безусловно, могу установить ядро wordpress и этот шаблон внутри локального хост-сервера, а затем пройти через стиль отладчика кода, чтобы найдите, какой вызов на самом деле создает эти элементы. Тьфу.
Есть еще какие-нибудь идеи? Еще раз, спасибо.
1 answers
Элементы управления по умолчанию зарегистрированы в WP_Customize_Manager::register_controls()
, который подключен к customize_register
. Это действие запускается другим методом, wp_loaded()
, который подключен к одноименному действию.
Чтобы удалить эти элементы управления по умолчанию, используйте свой собственный обработчик для customize_register
с более поздним приоритетом, чтобы он запускался после того, как register_controls()
добавил их:
function wpse_185386_remove_customize_controls( $wp_customize ) {
$wp_customize->remove_section( 'title_tagline' );
}
add_action( 'customize_register', 'wpse_185386_remove_customize_controls', 50 /* Priority */ );