Что нужно иметь в виду при создании тем Wordpress - PullRequest
5 голосов
/ 08 декабря 2009

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

Есть ли ресурс, который хранит контрольный список всех "не забывает" тем Wordpress? Какие вещи вы стараетесь учитывать при создании тем Wordpress?

Примеры:

  • Проверка, отключил ли автор / администратор комментарии для определенного сообщения.
  • Не забывая вызывать wp_head() в конце тега <head>.
  • Не забывайте звонить wp_footer() в конце тега <body>.
  • Использование переменных bloginfo() вместо установки статических значений для charset, html-типа, описания и т. Д., Чтобы администраторы могли изменять такие параметры в настройках сайта.
  • Использование function_exists() перед вызовом функции из плагина, поэтому он корректно завершается ошибкой, если этот плагин не установлен.

Ответы [ 3 ]

2 голосов
/ 14 декабря 2009

Контрольный список развития темы зависит больше от целевой аудитории вашей темы. Если он выходит за рамки основного блога и движется в сторону территории WordPress-as-CMS, вам стоит заглянуть:

  • пользовательских виджетов и динамических боковых панелей, чтобы сделать функции более портативными и гибкими
  • поддержка пользовательских полей или плагинов, таких как MagicFields, которые реализуют первые совершенно новым способом
  • маршрутизация и создание пользовательских шаблонов для разных уровней сайта (например, подкатегории обрабатываются category-x.php)
  • использование фреймворка css, так что тот, кто сможет изменить стили, имеет больше шансов понять его лучше; убедитесь, что включены, например, поддержка
  • пользовательский раздел wp-admin с собственными меню, страницами и т. Д .; это особенно необходимо, если ваша тема имеет пользовательские функции, которые могут быть дополнительно настроены пользователем
  • использовать классы и функции wp_scripts и wp_styles для добавления стилей и скриптов; это особенно важно для javascript, так как он предотвращает дублирование включений и работает со скриптами зависимостей (загружает jQuery перед вашим jQ-скриптом)
  • убедитесь, что дизайн темы не выглядит скучно, как все остальное для WordPress
  • написать тематический класс; если вы не планируете поддерживать PHP4, используйте классы и объекты PHP5, чтобы упростить свою жизнь с точки зрения наследования функций и отсутствия конфликтов имен. посмотрите на CodeIgniter и его шаблон синглтона; это упрощает управление пользовательскими глобалами внутри файлов шаблонов
  • если вы (и должны быть) делаете свою тему более продвинутой и более похожей на плагин, то знаете, как использовать объекты WP_Cache и WP_Rewrite, чтобы ваши пользовательские запросы с $ wpdb (да, вам нужно делайте это время от времени, чтобы получить определенные пользовательские функции) дешевле, и ваши новые страницы (если вы переписываете URL) правильно маршрутизируются, и ваши ссылки генерируются правильно динамически, соответственно.
  • последнее и самое главное, постарайтесь отделить презентацию (html) от логики (php); это становится трудным, когда вы начинаете запускать пользовательские циклы WP, и хорошим решением является вышеупомянутый класс темы.
2 голосов
/ 08 декабря 2009

В документации Wordpress есть интересная тема, касающаяся именно того, что вы спрашиваете: она называется Разработка тем для публичного выпуска . Есть также Общие рекомендации по разработке темы . Статья Шаблоны тоже замечательна.

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

Я настолько привык к Wordpress, что написанные вами примеры автоматически передаются при разработке, поскольку использование функции, которая выводит информацию о домене, например bloginfo() вместо статических значений, - хорошая практика в любой веб-разработке.

0 голосов
/ 08 декабря 2009

Наша фирма также разрабатывает множество различных тем WordPress & WordPress MU, и мы не нашли никаких «официальных» ресурсов, но мы сделали одну вещь - создали базовый набор файлов шаблонов, которые можно использовать как «» стандартная настройка для ускорения процесса разработки.

Затем, всякий раз, когда необходимо разработать новую тему, мы в основном копируем / вставляем этот набор шаблонов по умолчанию в новую папку темы при установке WordPress. Для нас элементы, которые мы включили в эту настройку по умолчанию, являются предварительно заполненными header.php, footer.php, index.php, home.php, single.php, functions.php, comments.php, / images (dir), / functions (dir), style.css, / css (dir), / scripts (dir) и множество других элементов.

Тогда мы также использовали Yahoo Grids или Google Blueprint css frames, чтобы также ускорить работу css. Я оставляю еще несколько предметов / файлов, но они должны дать вам общее представление о том, что лучше всего подходит для нас в нашем магазине.

...