Codex

Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!

Версия 2.8

10 июня 2009 года был опубликован выпуск WordPress Версия 2.8, названный в честь знаменитого трубача и вокалиста Чета Бейкера. Чтобы узнать обо всех улучшениях и исправлениях ошибок в данном выпуске вы можете прочитать запись в блоге разработки и посмотреть Список изменений для выпуска 2.8.

Для Версии 2.8 версия базы данных (db_version в wp_options) изменена на 11548 и Trac ревизия была 11549

Нововведения

  • Новый drag-and-drop административный интерфейс для виджетов и новое API для виджетов
  • Подсветка синтаксиса и просмотр функций встроены в редакторы плагинов и тем
  • Обзор директории с темой и установка тем из интерфейса администрирования
  • Разрешено располагать виджеты консоли максимум в четыре колонки
  • Разрешено настраивать число элементов отображаемых на страницах управления с опцией в настройках экрана
  • Поддержка временных зон и автоматический переход на летнее время
  • Поддержка модуля перезаписи URL в IIS 7.0
  • Ускорена загрузка административных страниц через скрипт сжатия и конкатенации

Новые функции

Пользовательские функции

  • Новая программа установки тем
  • Добавлена подсветка синтаксиса (CodePress) в редакторы тем и плагинов
  • Добавлен просмотр документации(функций) в редакторы тем и плагинов
  • Use "Custom Header" for menu text and revise Default theme to reflect change
  • Отдельные комментарии в отдельных
  • Separate Comments into a separate postbox, from Discussion postbox, on the Edit Post screen
  • Теги доступны без Javascript на экране редактирования
  • Убрано подтверждение при пометке комментария как спам
  • Убрано оповещение автора записи о собственных комментариях
  • Исправлено разбиение комментариев на страницы для статической главной страницы
  • Разрешено располагать виджеты консоли максимум в четыре колонки через вкладку настроек экрана
  • Делает заголовки ссылками в модуле Right Now в консоле (это было в 2.7.1)
  • Улучшены административные иконки (тени с переходом серого в прозрачность)
  • Обновлена синяя цветовая схема в интерфейсе администрирования
  • Press This improvements UI, quoting fixes, plus ability for Contributors to use Press This
  • Добавлена кнопка отмены и удаления загрузок в Администрирование > Медиа > Добавить новый
  • Добавлена колонка "Рейтинг" в Администрирование > Ссылки > Изменить
  • Улучшен установщик чтобы помочь людям при вводе неверных email адресов
  • Улучшен пользовательский интерфейс Widget
  • Разрешено редактирование всех файлов плагинов (Билет 6732)
  • Улучшен поиск плагинов (это было в 2.7.1) в Администрирование > Плагины > Добавить новый
  • Возможность постраничного отображения для плагинов
  • Форма "Установить плагин в формате .zip" перемещена во вкладку Загрузка под Администрирование > Плагины > Добавить новый
  • Отображаются абсолютные даты вместо относительных в запланированных записях
  • Исправлены советы по меткам для быстрого и массового редактирования
  • Редактор постоянных ссылок изменен и исправлен для страниц
  • Автосохранение записи/страницы при нажатии Control/Command+S
  • Добавлена кнопка "Показать все" во вкладке Галерея в загрузчике
  • Поддержка большого числа галерей на одной странице
  • Добавлена опция постраничного вывода в Настройки экрана для комментариев, записей, страниц, медиа, рубрик и меток
  • Усовершенствован импорт из LiveJournal (также добавлен define WP_IMPORTING)
  • Импорт описаний рубрик для Администрирование > Инструменты > Импорт > WordPress
  • Меню инструментов отображается для всех пользователей чтобы они могли иметь доступ к Турбо
  • Проверка новой версии при посещении Администрирование > Инструменты > Обновление
  • В процессе обновления предоставляется более подробное разъяснение для сообщения обновления базы данных
  • Исправление списка ссылок самых популярных рубрик
  • Добавлено поле с описанием для меток в Администрирование > Записи > Метки
  • WAI-ARIA роли добавлены в тему WordPress по-умолчанию
  • Выбор вашего города вместо указания временной зоны в Администрирование > Параметры > Общие
  • Удалена опция My Hacks из Администрирование > Параметры > Разное
  • Спрятаны email адреса от пользователей с низкими привилегиями в Администрирование > Комментарии
  • Разрешены регистронезависимые авторизации
  • Страницы авторизации и регистрации содержат noindex
  • Отдается правильный экран входа для iPhone
  • Соблюдается уникальность email адресов при Добавлении/Редактировании пользователей
  • Делает user_nicename уникальным во время регистрации
  • Добавлена опция "Отправить этот пароль новому пользователю на e-mail" в Администрирование > Пользователи > Добавить
  • Не устанавливает URL веб-сайта пользователя как http:// в Администрирование > Пользователи > Добавить
  • Добавлен индикатор надежности пароля при добавлении и редактировании пользователя
  • Скрыты вещи, которые нужно чтобы были доступны скрин ридерам через внеэкранное позиционирование
  • Использован невидимый класс для скрытия надписей и легенд
  • Использован семантический класс для текста для скрин ридеров

Разработка, Темы, Плагины

  • Улучшена производительность базы данных
  • Удалена колонка post_category из таблицы wp_posts, и колонка link_category из схем wp_links
  • Fix delete statements to ensure data integrity when innodb and foreign keys are used
  • Enforce consistent ID types to allow for foreign keys to be defined between tables
  • В список состояний записи добавлен Прикрепленный
  • Добавлен фильтр для списка состояний записи
  • Introduction and widespread use of transient and related filters
  • Add filters so AIM, Yahoo, and Jabber IM labels, in user profile, can be changed
  • Добавлен хук "after_db_upgrade"
  • Добавлены хуки для колонок таблиц Пользователи, Рубрики, Рубрики ссылок, Метки и Комментарии
  • Обновления и исправления HTTP API
  • Добавлена поддержка для блокировки всех исходящих HTTP запросов
  • Обновлен список HTTP статус кодов (Билет 9297)
  • Используется SimplePie для лент в виджетах и консоле
  • Switch to pomo lib. Support gettext contexts. Deprecate long form functions
  • TinyMCE 3.2.4.1
  • Использован Jcrop 0.9.8 для обрезания (изображений)
  • Обновлен pclzip до 2.8
  • Обновлен PHPMailer до 2.0.4
  • Обновлен SWFUpload до 2.2.0.1
  • Улучшена производительность загрузки скриптов
  • Улучшены запросы для архива и календаря
  • Cron spawning improvements
  • Улучшения касающиеся временных зон для PHP 5
  • Добавлен класс WP_Widget и все родные виджеты переделаны в соответствии с WP_Widget
  • Разрешено другим таксономиям (в т.ч. рубрикам записей) использоваться с wp_tag_cloud (Список изменений 10554)
  • Add echo argument to wp_tag_cloud()
  • Allow a plugin to control how many posts are displayed on edit pages
  • Add "style" and "html" arguments to wp_list_authors (Ticket 4420)
  • Add "exclude_tree" argument to wp_list_categories and make exclude behave like exclude_tree when hierarchical is specified--this was actually a 2.7.1 change (Ticket 8614)
  • New Template Tag, the_modified_author (Ticket 9154)
  • Расширенная поддержка для пользовательских таксономий
  • Put page title before blog name in admin title (Ticket 9028)
  • Use https://api.wordpress.org/secret-key/1.1/ for the WordPress.org secret-key service
  • Различные обновления phpDoc
  • Refactor filters to avoid potential XSS attacks
  • Улучшения XMLRPC
  • Улучшено кодирование mysql2date
  • Аутентификация более встраиваемая
  • Switch to using the ID when calling get_avatar internally to support caching plugins
  • Allow plugins to provide a canonical redirect_url even if WordPress does not provide its own
  • Drafts have post_date populated now, so look for a zeroed out post_date_gmt to determine non-scheduled nature
  • Fixes to query_posts (obey post_type, drop orderby=category, use group by for meta key queries, remove meta_value from selected fields)
  • New orderby=none parameter for use with query_posts
  • Allow a plugin to filter the classes applied in wp_list_pages()
  • Functions (get_adjacent_post_rel_link() and adjacent_post_rel_link()) to display relational links for adjacent posts in the head (Ticket 8703)
  • Добавлен серый фон для прикрепленных записей в теме по умолчанию
  • Поддержка прокси
  • Let a plugin filter the expanded capabilities returned by map_meta_cap
  • Разрешено фильтровать период обновления в RSS/RDF лентах
  • Типы полей хранятся в объекте wpdb
  • Add tag description functions tag_description and term_description
  • Класс страницы добавлен в [[Function Reference/get_body_class|get_body_class()]
  • Не рекомендуется для использования get_catname()
  • Use comments_open() and pings_open() in WordPress Default and Classic themes
  • Добавлен фильтр wp_trim_excerpt()
  • Объединены функции плагинов/тем/ядра с функциями обновления/установки
  • Добавлен класс page-id-x в body для страниц
  • Return empty list in wp_list_bookmarks() if requested bookmark category does not exist
  • Разрешена пересортировка меню через плагин
  • Add hook for updating user profile
  • Add redirect argument to wp_loginout
  • Add wp_lostpassword_url (Ticket 9932)
  • Add get_the_author_meta() and the_author_meta() functions
  • Не рекомендуется для использования the_author_ID, the_author_login, the_author_firstname, the_author_lastname, the_author_nickname, the_author_email, the_author_url, the_author_aim, the_author_yim, the_author_mns, the_author_description и все подобные "get_*()" функции. (Полный список в wp-includes/deprecated.php)
  • Let plugins use screen layout columns
  • Add labels to titles and text inputs
  • Add hook for adding info to plugin update message
  • Don't do core version check from front page loads
  • Allow a plugin to vary the comment cookie lifetime (or even remove the cookies altogether)
  • Allow plugin to replace just the default help while preserving the contextual help
  • New escaping naming convention Ticket 9650
  • Deprecate wp_specialchars() in favor of esc_html(). Encode quotes for esc_html() as in esc_attr(), to improve plugin security (ref. Development Updates)
  • Deprecate sanitize_url() and clean_url() in favor of esc_url_raw() and esc_url() (ref. Development Updates)
  • Add number/offset arguments to get_pages() (same parameters can be used for wp_list_pages()
  • Добавлены аргументы номер/смещение в функцию get_pages() (такие же параметры могут быть использованы для wp_list_pages())
  • Make login more pluggable
  • Добавлена функция the_widget() для отображения основных виджетов где угодно в шаблоне (Билет 9701)
  • Плагинам разрешено включать/выключать поддержку tz
  • Исправление запросов совмещающих рубрику и метку
  • Поддержка модуля перезаписи URL в IIS 7.0
  • Определение Expression Web 2 как IIS
  • Разрешено иметь множество шаблонов с поисковыми формами
  • Introduce sanitize_html_class() and use it to give categories, tags, users etc meaningful classnames where possible but fallback to the id if necessary (Ticket 8446)
  • Разрешается устанавливать различные роли для пользователей при создании через wp_insert_user()
  • Improve Filesystem method choice for 'direct'; introduce FS_METHOD constant
  • Добавлен хук в print_footer_scripts также как и в print_head_scripts
  • Добавлен фильтр comment_moderation_headers filter
  • Фильтр upload_dir поставлен перед тем как директория будет создана чтобы плагины могли иметь больше возможностей
  • Pass name to sidebar, footer, and header get actions
  • Улучшения в менеджере обновлений включающие в себя перемещение curl на последнее место и fsockopen на второй для большей совместимости
  • Добавлен фильтр 'the_content_more_link' позволяющий добавлять style/rel/title атрибуты для ссылки "Читать далее"
  • Обновлен Trac

Продвинутые функции

Улучшения в загрузчике JS скриптов

  • jQuery 1.3.2
  • Улучшения в загрузчике скриптов: позволяет плагинам добавлять в очередь скрипты в шапку и подвал фронт энда, добавлять хуки для кеширования сжатых скриптов на стороне сервера, добавлена константа ENFORCE_GZIP (deflate используется по умолчанию, т.к. быстрее)
  • Загрузка уменьшенных версий скриптов по умолчанию, define('SCRIPT_DEBUG', true); может быть использован для загрузки разрабатываемых версий
  • Удалены события с чекбоксов разделов при быстром редактировании чтобы ускорить выгрузку страницы
  • Добавлена простая проверка форм. Добавление новых категорий через ajax совместимо с jQuery 1.3.1
  • Загрузка farbtastic.js происходит в head секции
  • Примечание: вы можете просмотреть блоги Лестера Чена О загрузке JavaScript в подвале блога и Эндрю Озза Об обновлениях загрузчика скриптов

Новое Widgets API

WP_Widget -- это класс который абстракционирует большинство сложностей связанных с написанием виджетов, особенно мульти-виджетов.

  • В основном вам нужно расширить класс WP_Widget своим собственным, который предоставит конструктор и три метода -- widget(), form(), and update().
    • widget() - фактически выводит содержимое вашего виджета.
    • update() - обрабатывает настройки для сохранения.
    • form() - выводит форму с настройками.
  • Виджет регистрируется передачей названия класса виджета в register_widget().
  • Все виджеты написанные с WP_Widget могут быть созданы множеством экземпляров
  • Настройки
    • Настройки для старых виджетов с только одним возможным экземпляром портированы на WP_Widget и будут обновлены под новый формат хранения множества настроек, который является простым многомерным массивом с ключами в виде ID экземпляров.
    • Настройки для виджетов использующих старый паттерн множества экземпляров должни работать как есть.
    • Если ваш виджет имеет свое собственное место хранения настроек, то вы можете предоставить свои собственные методы get_settings() и save_settings()
  • Исходный код WP_Widget можно просмотреть здесь (читайте phpdoc чтобы узнать больше информации об использовании): http://core.trac.wordpress.org/browser/trunk/wp-includes/widgets.php
  • Вы можете посмотреть примеры по использованию здесь: http://core.trac.wordpress.org/browser/trunk/wp-includes/default-widgets.php
  • Если вы автор каких-либо виджетов, попробуйте портировать их на WP_Widget и дайте нам знать какие улучшения можно внести Trac Билет 8441.
  • WP_Widget основан на классе MultiWidget: http://blog.firetree.net/2008/11/30/wordpress-multi-widget/
  • Все вышесказанное извлечено из записи Райана Борена на wp-hackers.

См. также Widgets API.

Сортировка меню через плагин

  • Образец плагина демонстрирует меню с Консолью, Записями и Комментариями в первой группе меню. Оставшиеся меню следуют в своем обычном порядке
  • Во время фильтрации массива порядка вывода любое меню не указанное в массиве будет отсортировано после указанных меню.
  • Неуказанные меню сортируются в их обычном порядке относительно других неуказанных меню.
  • Информация извлечена из комментариев Райана Борена на Trac Билет 9652

Функции не вошедшие в Версию 2.8

Эти функции не вошли в Версию 2.8 (или Версию 2.7).

  • Некоторые шот коды по умолчанию, возможно самая популярная десятка с Wordpress.com
  • Поддержка oEmbed, связанная с шот кодами
  • Улучшения в пользовательском интерфейсе ревизий записей, может быть дополнительное поле, в котором бы говорилось об измененях в версии
  • Поддержка OAuth
  • GeoData для записей, комментариев, аттачей и т.д.
  • Template tags to do everything the custom gallery on ma.tt does
  • Редактор меню
  • Незакрытые теги при использовании more и nextpage (Билет 6297)
  • Sitemaps по умолчанию
  • Обновление импорта (LiveJournal был обновлен)
  • Тип записей Галерея (Gallery post_type)
  • Контроль версий шаблонов
  • Ссылки на документцию для функций используемых в текущем редактируемом шаблоне
  • MPTT (Modified Preorder Tree Traversal) для иерархий
This page is marked as incomplete. You can help Codex by expanding it.