Статьи

Руководство по настройщику тем WordPress: разделы, настройки и элементы управления

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

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

И как бы ни было интересно начать писать код, чтобы воплотить в жизнь новые функции, важно понять, с чем мы работаем, прежде чем мы действительно начнем работать с ним, верно?

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


Короче говоря, есть три компонента, которые входят в создание интерфейса Theme Customizer. Эти:

  1. Разделы
  2. управления
  3. настройки

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

На самом деле, я рекомендую вернуться и прочесть эту серию, особенно если вы собираетесь ввести Theme Customizer в тему, которая использует API настроек.

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

С другой стороны, если вы не используете API настроек — не беспокойтесь! Theme Customizer позаботится о сериализации всех параметров для вас, так что вы сможете получить их программно в любом месте вашей темы.

Компоненты настройки темы

Компоненты настройки темы

Но прежде чем обсуждать что-либо из этого, давайте поговорим о компонентах Theme Customizer.

Обратите внимание, что на иллюстрации выше у нас есть три разных раздела, один из которых расширен:

  1. Заголовок сайта
  2. Цвета
  3. раскладка

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

Возможно, самое важное, что нужно отметить при добавлении настроек в разделы, это то, что WordPress на самом деле имеет несколько разделов, которые он уже предоставляет. Например:

  • title_tagline — этот раздел используется для хранения заголовка сайта и слогана (иногда его называют именем блога или описанием).
  • colors — это раздел, в котором хранятся настройки для определенных элементов управления, связанные с настройками цвета текста, цветов ссылок и т. д.
  • header_image — используется для удержания элементов управления, отвечающих за разрешение пользователям указывать изображение заголовка.
  • background_image — этот раздел используется для удержания элементов управления, отвечающих за настройку фонового изображения.
  • nav — это раздел, который даст пользователям возможность настраивать свои меню.
  • static_front_page — предоставляет пользователям опции, необходимые для установки статической главной страницы или страницы блога, когда это необходимо.

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

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

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

Проще говоря, «контроль» — это более или менее причудливое слово для элемента HTML, которое позволяет пользователю манипулировать чем-либо в блоге. Это может быть что угодно — от элемента ввода до текстовой области или флажка — до палитры цветов.

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

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

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

Достаточно просто, правда?

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

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

Теперь вот где это может быть несколько сложнее, особенно если вы работаете с существующим API настроек или запускаете тему с нуля с помощью Theme Customizer.

По умолчанию theme_mod использует функции theme_mod для хранения всех значений темы в одной строке базы данных. Вы можете прочитать больше о get_theme_mod и set_theme_mod в соответствующих статьях Кодекса.

В общем, обратите внимание, что все записи theme_mod хранятся в таблице wp_options в theme_mods_{theme-name} ключа theme_mods_{theme-name} . Это означает, что вы можете легко найти сериализованные параметры, используя интерфейс базы данных или запустив SQL-запрос.

Например, предположим, что мы используем наш пример Theme Customizer Example, который мы начали создавать на последнем уроке. Чтобы просмотреть значения параметров, сохраненные для этой темы, вы можете выполнить следующий запрос:

1
2
SELECT * FROM wp_options
WHERE option_name = ‘theme_mods_theme-customizer-example’

Или, опять же, вы можете просматривать с помощью интерфейса базы данных.

Если, с другой стороны, вы собираетесь представить Theme Customizer с опциями, которые уже используются API настроек, очень легко интегрировать их и в настройщик. Основное отличие состоит в том, что вместо theme_mod вы будете использовать API параметров, поэтому все данные будут по-прежнему храниться в таблице wp_options , но будут получены с помощью get_option .

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


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

В конце концов, как мы можем эффективно понять код, который мы пишем, если мы даже не уверены, каковы некоторые термины? Опять же, это, вероятно, будет иметь больше смысла в контексте некоторого примера кода.


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

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

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