Использование Встроенных Разделов Настройщика Тем


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-администратора, Внешний вид --> Настройка Я получаю следующие ДВА (из шести возможных) раздела, отображаемых:enter image description here

Как можно "ссылаться" на раздел по "имени"? Что выводит готовые варианты на панель настройки wp-администратора? И мой настоящий вопрос заключается в следующем: как вы можете скрыть уже существующий выбор при переопределении темы (с дочерней темой). Мы определенно не хотим, чтобы у наших будущих администраторов был шанс изменить то, чем они не должны быть. (Да, я знаю, что мы можем использовать систему разрешений администратора для скрытия элементов, но это не так мой вопрос...)

Кто-нибудь бывал здесь раньше? Много раз.

Редактировать/обновлять:

Вот моя точная ситуация. Я создаю множество веб-сайтов, часто используя дочернюю тему для изменения существующей темы, которая мне как бы близка. Я ищу очень простую, не раздутую тему начальной загрузки. Я нашел devdmbootstrap3, который меня очень впечатлил. Единственная проблема заключается в том, что тема генерирует множество вариантов настройки, которые мы не хотим отображать (цвета, изображение заголовка, фоновое изображение). Я не могу понять, что заполняет эти элементы. В вызове add_section() нет вызовов add_section(). functions.php файл. Я просмотрел этот файл (и всю тему, включая theme-options.php ) довольно осторожно. Опять же, я думаю, что моя проблема заключается в непонимании слов "обращайтесь к ним по имени". Я просто не вижу, как называются эти предметы.

Хм.. как я думаю об этом, я, безусловно, могу установить ядро wordpress и этот шаблон внутри локального хост-сервера, а затем пройти через стиль отладчика кода, чтобы найдите, какой вызов на самом деле создает эти элементы. Тьфу.

Есть еще какие-нибудь идеи? Еще раз, спасибо.

Author: Community, 2015-04-25

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 */ );
 1
Author: TheDeadMedic, 2015-04-25 20:01:00