10 действительно полезных функций WordPress, о которых мало кто знает
Без сомнений, WordPress имеет огромный успех. Это мощная система управления контентом, которая обеспечивает работу миллионов веб-сайтов. Но это не значит, что развитие платформы WordPress прекратилось. Как раз наоборот! WordPress продолжает стремительно развиваться. Только в 2015 году состоялось 3 крупных релиза.
Помимо улучшений кода, каждая следующая версия WordPress привносит свои особенности. Некоторые, как WP REST API, становятся популярными, другие остаются без внимания. В этой статье мы рассмотрим некоторые функции и возможности WordPress, о которых вы, наверняка, не слышали.
Смотрите также:
Многие из них действительно очень полезны и могут улучшить работу WordPress. Большинство пунктов в нашем списке не сравнится по новаторству с WP REST API. В основном это небольшие изменения, но в сочетании они могут очень помочь пользователю WordPress. К тому же, очень приятно замечать, насколько разработчики WordPress заботятся о деталях, улучшая платформу в целом.
1. Удалите постоянную ссылку записи, чтобы обновить её
Для тех, кто не встречал это понятие ранее, постоянная ссылка — это URL-адрес записи или страницы. Её можно изменить, нажав кнопку «Изменить» под областью заголовка в редакторе WordPress.
Обычно, название постоянной ссылки совпадает с заголовком страницы или записи, или создано из ключевых слов страницы. Но если вы поменяли заголовок и хотите поменять постоянную ссылку, то не нужно вбивать новый URL-адрес вручную. WordPress обновит его автоматически. Для этого просто нажмите кнопку «Изменить» и полностью удалите текущую ссылку.
После нажатия «ОК» WordPress сам вставит название страницы в новую постоянную ссылку.
Маленькая подсказка: если вы хотите вручную установить постоянную ссылку (например, использовать ключевую фразу в качестве URL-адреса), то вам не нужно расставлять дефисы между словами.
Достаточно выписать постоянную ссылку как обычное предложение и нажать «ОК». Система управления контентом сама подберет нужный формат для вашего URL-адреса.
2. Настройки экрана для каждого пользователя
Еще одна малоизвестная функция WordPress – это параметры экрана. Её можно использовать, чтобы включить или выключить практически любой элемент на стандартном экране WordPress. Нужно прокрутить страницу вверх, нажать кнопку «Настройки экрана» и изменить вид Консоли согласно вашим нуждам.
Однако, даже если вы и знали о параметрах экрана, вы могли не знать, что они настраиваются специально под каждого пользователя. Это значит, что любые изменения, которые вы внесли под своим профилем, сохраняются только для вас. Поэтому не бойтесь что-то испортить для остальных пользователей. Эти изменения будут видны только вам. Настройки сохранятся, даже если вы войдете на сайт с другого компьютера.
3. Markdown Syntax для быстрого форматирования текста
Markdown — это язык разметки, созданный с целью облегчить написание HTML кода, заменив тэги HTML на текстовые символы, которые можно легко преобразовать в правильно построенный код.
Начиная с версии 4.3, редактор WordPress имеет похожие функции. Теперь пользователи могут использовать разные символы для форматирования своих записей, не используя сочетания клавиш и кнопки.
Например, используйте символ хэштега (#) для создания заголовков. Поставив ## перед любым текстом, превратит его в заголовок второго уровня, ### – заголовок третьего уровня, и так далее.
На данный момент список доступных текстовых шаблонов весьма ограничен:
- «*» или «–» перед текстом создаст ненумерованный список
- «1.» или «1)» для нумерованного списка
- «>» перед любым текстом превратит его в цитату
- И как было сказано выше, разное количество символов «#» создаст заголовки 2-6 уровней
Если вы случайно использовали разметку не там, где хотели, можно это исправить, нажав Esc или Ctrl+Z.
Другие символы для увеличения функциональности сейчас находятся в разработке.
4. Вставляйте ссылки напрямую
Ссылки — это валюта Интернета, поэтому не бойтесь вставлять важные внешние и внутренние ссылки в ваш контент.
Для создания ссылки в WordPress вам нужно сделать следующее: выделить текст, нажать кнопку «Вставить/редактировать ссылку», вставить URL-адрес и нажать «Добавить ссылку». Если вам нравится использовать сочетания клавиш, то вы, наверное, уже знаете о сочетании Ctrl+K для добавления ссылок.
Но сейчас этот процесс стал еще легче.
В последних версиях вы можете просто выделить текст и вставить скопированный заранее URL-адрес, нажав Ctrl+V. WordPress автоматически создаст ссылку с текстом, не заменяя его.
Правда, круто? Осталось выяснить только, как использовать эту функцию с активированной опцией открытия ссылки в новом окне (с параметром _blank).
5. Автоматическая вставка внешнего контента на WordPress
Нет ничего нового в функции Auto-embed на WordPress. Эта функция доступна уже довольно давно.
Это значит, что когда вы вставляете ссылку из списка совместимых контент-провайдеров в редактор (YouTube, Twitter и так далее), контент будет автоматически размещен в записи или на странице.
Однако есть и новшество. Теперь таким же образом можно размещать и контент с WordPress-сайтов при условии, что сайт-источник и сайт, на котором мы разместим информацию, работают на WordPress от 4.4 версии и выше.
Вот как это выглядит:
6. Базовое редактирование изображений в WordPress
Нам кажется, что обработка медиа-файлов всегда была Ахиллесовой пятой для WordPress. Раньше, когда ми сталкивались с этим вопросом, половину времени ми тратили только на отображение и обработку изображений.
К счастью, в последних версиях ситуация улучшилась. Одной из новых возможностей WordPress является базовое редактирование изображений, например, вращение, обрезка, отражение и масштабирование.
Чтобы воспользоваться этой функцией, нажмите «Редактировать изображение» в медиа-библиотеке.
Это позволило пользователям сэкономить много времени на удалении и повторной загрузке изображений.
7. Автоматическое добавление фавиконок
Фавикон — это маленькое изображение, которое появляется во вкладке браузера и меню закладок. Он придает сайту больше индивидуальности и профессионального вида.
Существует несколько способов создания фавикона. Раньше нужно было загрузить его через FTP в папку вашей активной темы или установить тему, которая создаст его сама.
А сейчас создание фавикона стало стандартной функцией WordPress Сustomizer. Все, что вам нужно сделать — это зайти в Внешний вид → Настроить → Свойства сайта → Иконка сайта
Внизу вы найдете кнопку для создания фавикона.
Для достижения наилучших результатов сделайте квадратную версию логотипа вашего сайта размером 512 на 512 пикселей. Если у вас нет сейчас доступа к графическому редактору, вы можете использовать WordPress для обрезки, как мы писали выше.
После этого фавикон автоматически появится на вашем сайте, даже без использования FTP клиента. К тому же, этот значок можно установить и значком приложения на мобильных устройствах.
8. Создавайте и редактируйте Меню с WordPress Customizer
Существует собственная страница для редактирования меню в Внешний вид → Меню. Тут у вас будет возможность не только создать навигацию вашего сайта, но и добавить детали, настроить местоположение меню, и многое другое.
Но вы, наверное, не знали, что всё это вы можете сделать с помощью WordPress Customizer, перейдя в Внешний вид → Настроить → Меню
Преимущества: это позволяет предварительно просматривать любые изменения в меню, прежде чем применять их. Таким образом, вы можете протестировать структуру меню и посмотреть, правильно ли отображаются значки социальных сетей.
У Customizer даже есть настройки для дополнительных свойств меню таких как пользовательские классы CSS, описания и многое другое.
9. Закрытие всех сессий авторизации на других устройствах
Одним из преимуществ WordPress, а также и одной из причин, почему мы любим WordPress, является то, что можно работать откуда угодно. Можно войти в систему на любом компьютере мира, менять что-то, публиковать записи и т.д. Но вы можете забыть выйти, и другие люди получат доступ к вашему сайту.
Чтобы избежать такого варианта развития событий, теперь у платформы есть функция выхода из любого открытого сеанса кроме того, на котором вы сейчас работаете.
Для этого зайдите в ваш профиль Пользователи → Ваш профиль и прокрутите вниз до «Управление учётной записью» и «Сессии».
На случай, если вы вошли в систему где-то еще, нажмите «Выйти на других устройствах». Безопасность на первом месте!
10. Быстро опубликуйте контент с инструментом Press This
Сам по себе инструмент Press This (Опубликовать) давно не новый. Однако в WordPress 4.2 его полностью переделали, чтобы сделать проще и быстрее в использовании.
Для тех, кто не знает, Press This — это расширение для браузера, с помощью которого вы можете публиковать контент на вашем сайте из любого места в Интернете.
Вы можете найти его в Консоли WordPress в Инструменты → Все инструменты.
После установки в вашем браузере или мобильном устройстве вы можете использовать его, чтобы поделится изображением, статьей или отрывком из текста на вашем веб-сайте WordPress.
Просто нажмите Опубликовать, когда вам что-то понравится, отредактируйте во всплывающем окне и опубликуйте на сайте или сохраните для дальнейшего использования.
Итоги
WordPress продолжает расти и развиваться, добавляя новые функции. И оглядываясь на 3 больших релиза в 2015 и 1 в апреле 2016, можно с уверенностью сказать, что усовершенствование не остановится.
Многие думают, что основные изменения происходят «под капотом» и в основном предназначены для разработчиков, но это не так. Конечные пользователи не обделены улучшениями, даже если они остаются незамеченными.
Какие еще малоизвестные, но полезные функции вы используете? Расскажите нам в комментариях!
Источник: torquemag.io
Насколько полезным был этот пост?
Нажмите на звезду, чтобы оценить этот пост!
Отправить рейтингСредний рейтинг: 5 / 5. Количество голосов: 1
Смотрите также:
hostenko.com
Все функции wordpress, основные возможности системы wordpress
Возможности wordpress поистине удивительные, система может использоваться не только по прямому назначению (для ведения блога), но и в качестве cms для обычного полноценного сайта. Функции wordpress позволили ей выйти за рамки стандартной и простой системы по управлению блогами. Поэтому сегодня вы запросто можете встретить статические сайты, порталы, решения для интернет коммерции или блогохостинги, что организованы на wordpress.
В данном разделе блога вы найдете материалы и публикации, которые, так или иначе, рассказывают про возможности wordpress – это могут быть описания некоторых плагинов, вводные статьи по какой-то из тем либо разъяснение функций wordpress из кодекса. Информация будет полезна как начинающим, так и продвинутым пользователям, в чем вы уже могли убедиться, глянув на некоторые статьи ниже.
Существует несколько причин для создания в WordPress меню с картинками (иконками). Во-первых, это отличный способ сэкономить место, заменив название главной страницы на «домик». Во-вторых, некоторые символы говорят намного больше нежели текстовые значения — кнопки Facebook, Twitter и т.п. И наконец, в-третьих, графические элементы могут сделать навигацию еще нагляднее за счет добавления изображений, например, в списке категорий. Все три варианта вы можете видеть с превьюшке поста слева. А ниже я расскажу как их можно реализовать.Порядок загрузки функций и файлов WordPress сайта
wordpress — это самая популярная бесплатная платформа для создания сайтов в интернете. И свою популярность WordPress заслужил в основном благодаря тому, насколько легко и просто с ним работать.
Для того, чтобы создать свой сайт на WordPress, не нужно разбираться в коде и знать, как все утроено. Но если вы начинающий разработчик или просто опытный пользователь, и вам интересно узнать, как работает WordPress, тогда эта статья для вас.
Смотрите также:
В этом посте мы разберемся шаг за шагом, что происходит внутри WordPress, когда вы загружаете сайт в браузере, и поэтапно распишем порядок загрузки функций и файлов WordPress. Поехали!
Зачем нужно знать, как работает WordPress?
wordpress — это open-source проект, а значит любой может изучать его исходный код и учиться создавать свои плагины и шаблоны.
Если вы будете знать основы того, как работает WordPress под капотом, это поможет вам углубить свои познания в разработке. Также это просто познавательно с точки зрения того, как, казалось бы, элементарные вещи на самом деле.
Порядок загрузки WordPress
Итак, вы вбили в адресную строку браузера URL WordPress-сайта и нажали Enter. Произошел резолвинг доменного имени, и ваш браузер обратился по конкретному IP-адресу к хостинг-серверу с запросом на загрузку сайта.
Что происходит дальше в последующие доли секунды, пока сайт не отобразится в окне браузера?
1. Загрузка файла wp-config.php
В первую очередь идет обращение к главному конфигурационному файлу wp-config.php в корневом каталоге WordPress.
Оттуда извлекаются глобальные переменные для WordPress сайта, а также информация для подключения к Базе Данных.
11 советов по настройке файла wp-config.php
2. Загрузка стандартных констант
После загрузки wp-config.php WordPress извлекает значения стандартных констант. Они включают такую информацию как расположение upload-каталога (wp-content/), максимальный размер файла и все остальные константы, которые прописаны в wp-config.php.
3. Загрузка файла advanced-cache.php
Если файл advanced-cache.php есть на сайте, WordPress загружает его на данном этапе. Этот файл является так называемым «Вкраплением» в терминологии плагинов WordPress.
Он создается автоматически, если на сайте настроен один из кэш-плагинов. Этот файл содержит конфигурационную информацию для работы кэширования сайта.
4. Загрузка файла wp-content/db.php
WordPress позволяет разработчикам создавать свои абстрактные слои БД и загружать их через файл db.php. Как правило, этот файл может использоваться некоторыми кэш-плагинами для оптимизации работы БД.
Поэтому, если такой файл существует, он загружается на этом этапе.
5. Подключение к MySQL и Базе Данных
Теперь у WordPress достаточно информации для соединения с MySQL сервером и подключения к указанной в wp-config.php или db.php Базе Данных.
Если по какой-то причине WordPress не удается подключиться к БД, вы увидите на экране сообщение «Error establishing database connection» на белом фоне.
6. Загрузка файла object-cache.php или wp-includes/cache.php
WordPress теперь загрузит файл object-cache.php, если такой есть. Если нет, то попытается загрузить файл wp-includes/cache.php. Если и такого нет, то следующий шаг.
7. Загрузка файла wp-content/sunrise.php
Если сайт является частью Мультисайт-сети WordPress, то будет загружен файл wp-content/sunrise.php.
8. Загрузка библиотеки локализации
Теперь загружается файл wp-includes/l10n.php для включения системы локализации. На данном этапе будет учтен выбранный язык, региональные параметры и файлы для перевода.
9. Загрузка Multisite-плагинов
Опять же, если сайт находится в сети wordpress Multisite, теперь будут загружены Multisite-плагины.
10. Выполнение функции «muplugins_loaded»
Выполняется функция (или в терминологии WordPress — Action) muplugins_loaded для сетевых плагинов wordpress Multisite.
11. Загрузка всех активированных плагинов
WordPress теперь загрузит все остальные активированные плагины на сайте.
Список активированных плагинов хранится в Базе Данных в таблице wp_options в поле active_plugins.
Таким образом на этапе загрузки игнорируются все установленные, но неактивные плагины.
12. Загрузка файла pluggable.php
Файл pluggable.php хранит функции, которые могут быть переопределены WordPress-плагинами.
WordPress проверит, определены ли функции из файла pluggable.php какими-то другими активными плагинами. Если нет, будут определены функции из pluggable.php.
13. Выполнение функции «plugins_loaded»
Аналогично muplugins_loaded для плагинов wordpress Multisite, теперь будет выполнена функция plugins_loaded. Эта функция позволяет разработчикам привязать свои собственные функции и выполнить их после загрузки всех активных плагинов WordPress.
14. Загрузка Rewrite Rules
Будут загружены правила переопределения ссылок.
Другими словами, будут загружены SEO-понятные постоянные ссылки вместо ссылок вида /?p=10467
15. Инициализация $wp_query, $wp_rewrite, $wp
Теперь WordPress загрузит такие объекты:
- $wp_query: Глобальная переменная, которая содержит класс WP_Query. Она сообщает WordPress, что контент запрашивается в типичном для WordPress query-формате.
- $wp_rewrite: Глобальная переменная, которая содержит класс WP_Rewrite. Содержит Rewrite-правила и функции для переопределения URL при загрузке контента.
- $wp: Глобальная переменная, которая содержит класс WP. Содержит функции, которые будут парсить ваш запрос и выполнять загрузку главной очереди (main query).
16. Выполнение функции «setup_theme»
WordPress выполняет функцию setup_theme, необходимую на этапе перед загрузкой темы оформления.
17. Загрузка файла functions.php дочерней темы
Файл functions.php содержит набор функций и инструкций, применимых для каждой темы оформления индивидуально.
Если вы используете дочернюю тему, то на данном этапе будет загружен functions.php именно дочерней темы.
В противном случае будет загружен functions.php от основной активной темы оформления.
18. Загрузка файла functions.php родительской темы
Если используется дочерняя тема, то после загрузки functions.php из дочерней темы будет загружен functions.php основной родительской темы.
19. Выполнение функции «after_setup_theme»
Функция after_setup_theme исполняется после того, как WordPress определился с тем, какая тема оформления активна на данный момент, и загрузил ее файл functions.php.
Это первое действие применимое к активное теме.
20. Настройка текущего User Object
Теперь WordPress загружает объект текущего пользователя. Это позволяет WordPress понять, какие запросы могут быть выполнены в дальнейшем в соответствии с текущей ролью пользователя и его привилегиями.
21. Выполнение функции «init»
На данном этапе WordPress загрузил уже всю необходимую информацию для работы. Теперь выполняется функция init.
Эта функция позволяет разработчикам добавлять свой код, который должен быть выполнен сразу после того, как WordPress загрузил и выполнил все предыдущие пункты.
22. Выполнение функции «widget_init»
Функция widget_init позволяет разработчикам регистрировать виджеты и выполнять код, необходимый для работы виджетов.
23. Выполнение функции «wp()»
Теперь WordPress вызывает функцию wp() из файла wp-includes/functions.php.
Эта функция задает глобальные переменные $wp, $wp_query, $wp_the_query и дальше вызывает $wp->main.
24. Парсинг запросов
У WordPress теперь есть вся нужная информация для обработки пользовательских запросов. Для начала идет проверка на rewrite-правила переопределения.
Затем загружаются все фильтры, action-хуки и отправляется запрос на загрузку header-части сайта.
25. Выполнение запросов
Если по заданному запросу контент не обнаружен, WordPress определяет переменную is_404.
В противном случае WordPress продолжает загрузку остальных запросов.
- Будет выполнено WP_Query->get_posts()
- Далее запускается функция DO_ACTION_REF_ARRAY ‘pre_get_posts’ для объекта WP_Query.
- Теперь выполняется apply_filters для зачистки запросов и некоторых финальных проверок.
- Теперь загружаются сами записи (посты) из БД, применяются фильтры posts_results и the_posts.
Этап выполнения запросов закончен, и WordPress выдает загруженные записи.
26. Выполнение функции template_redirect
Выполняется функция template_redirect прямо перед тем, как WordPress определяет, какой шаблон загружать.
27. Загрузка Feed-шаблона для RSS
Если запрашиваемый контент относится к RSS-feed, WordPress загружает соответствующий Feed-шаблон.
28. Загрузка основного шаблона (темы)
Наконец-то!
WordPress начинает загружать файлы текущей активной темы в соответствии с ее иерархией.
Как правило все начинается с файла, который содержит главный цикл (WordPress Loop).
29. Выполнение функции «shutdown»
В самом конце перед завершением исполнения всего PHP-кода WordPress запускает последнюю функцию shutdown.
На этом этапе работа WordPress выполнена и закончена.
30. Загрузка страницы сайта в браузере
Весь «подготовленный» PHP-код со стороны WordPress передается на исполнение веб-серверу хостинга.
Веб-сервер обрабатывает PHP-код и передает в браузер пользователю готовый HTML-код вместе со стилями и скриптами (CSS и JavaScript) для загрузки самой страницы.
Браузер производит рендеринг этой страницы с помощью полученного от веб-сервера HTML, CSS и JavaScript, и в результате вы видите (визуально) запрошенную страницу сайта.
Итоги
Итак, мы расписали подробно 30 шагов, которые необходимы WordPress для загрузки сайта. Ну окей, последний 30-ый пункт выполняется уже без участия WordPress, но все же.
А теперь задумайтесь!
Все эти 30 пунктов от момента нажатия Enter в адресной строке браузера и до загрузки страницы происходят буквально за считанные миллисекунды! Фантастика, правда?
Источник: wpbeginner.com
Насколько полезным был этот пост?
Нажмите на звезду, чтобы оценить этот пост!
Отправить рейтингСредний рейтинг: 5 / 5. Количество голосов: 3
Смотрите также:
hostenko.com
Группа: WordPress. Самые используемые WordPress функции для плагинов. Топ-100
В этой статье я собрал список самых популярных WordPress функций. И это действительно так и есть — ведь я собрал здесь >150 плагинов и сравнил функции, которые они используют, с существующими ВП функциями.
Итак: на входе у нас WordPress v4.9.1 (623 php файла, 330 000 строк кода), папки plugins и themes у него пустые.
Новичкам, познающим азы плагиностроения под вордпресс, данный список должен стать настольной книгой — ведь самые топовые плагины используют эти функции, а это значит: что их знать обязательно. Изучив API WordPress вы сможете легко ориентироваться в этой сфере и применять при решении своих задач.
А все найденные 1500 ВП функции что применяли плагины хоть раз — смотрите по ссылке ниже.
Список плагиновadd-to-any.1.7.22 admin-and-client-message-after-order-for-woocommerce.1.1 advanced-custom-fields.4.4.12 akismet.4.0.1 all-in-one-seo-pack.2.4.3.1 all-in-one-wp-migration.6.61 all-in-one-wp-security-and-firewall amr-users anspress-question-answer asgaros-forum.1.6.7 authenticator.1.3.0 autoptimize.2.2.2 backwpup.3.4.4 bbp-private-groups.3.6.0 bbp-style-pack.3.6.9 bbpress-wp-tweaks.1.4.1 bbpress.2.5.14 beaver-builder-lite-version better-search-replace better-wp-security.6.7.0 black-studio-tinymce-widget.2.6.1 bp-default-data.1.2.0 bp-profile-search.4.8 breadcrumb-navxt.5.7.1 broken-link-checker.1.11.5 buddypress-cover-photo buddypress-verified.2.4.1 buddypress.2.9.2 captcha.4.4.5 chatwing.2.4.4 cm-answers coming-soon.5.0.17 comment-redirect.1.1.3 contact-form-7.4.9.2 contact-widgets.1.4.1 cookie-notice.1.2.40 custom-post-type-ui.1.5.6 custom-user-profile-photo.0.5.3 disable-comments duplicate-page duplicate-post.3.2.1 duplicator.1.2.30 easy-fancybox.1.6.2 easy-google-fonts elementor.1.8.10 eonet-live-notifications.1.0.8 ewww-image-optimizer.4.0.4 flyzoo force-regenerate-thumbnails front-end-pm.6.2 google-analyticator.6.5.4 google-analytics-dashboard-for-wp.5.1.2.4 google-analytics-for-wordpress.6.2.6 google-sitemap-generator.4.0.9 googleanalytics.2.1.3 hello-dolly.1.6 iflychat.4.3.1 image-widget.4.4.7 insert-headers-and-footers.1.4.2 instagram-feed.1.5.1 intensedebate.2.9.7 iwp-client jetpack.5.6.1 limit-login-attempts.1.7.1 loco-translate.2.0.17 loginizer.1.3.8 mailchimp-for-wp.4.1.12 maintenance.3.5.1 mainwp-child.3.4.4 members-list members.2.0.2 membership-by-supsystic meta-box.4.12.6 metronet-profile-picture.1.4.3 ml-slider.3.6.7 mtphr-members nextgen-gallery.2.2.30 ninja-forms.3.2.6 optinmonster.1.3.2 page-links-to paid-memberships-pro.1.9.4.2 peepso-core.1.9.1 photo-gallery.1.3.67 polylang.2.2.7 post-types-order.1.9.3.5 profile-builder.2.7.2 profilegrid-user-profiles-groups-and-communities pta-member-directory.1.6.9 really-simple-captcha.2.0.1 really-simple-ssl.2.5.24 redirection.2.10.1 redux-framework.3.6.7.7 regenerate-thumbnails restrict-content.2.2 restrict-user-access shortcodes-ultimate simple-ajax-chat.20171106 simple-custom-css simple-membership siteorigin-panels.2.5.16 so-widgets-bundle.1.11.2 speakout speakup-email-petitions.2.4.2 sucuri-scanner.1.8.11 tablepress.1.9 taxonomy-terms-order.1.5.2.2 the-events-calendar.4.6.7 theme-check.20160523.1 tinymce-advanced.4.6.7 ultimate-member.1.3.88 updraftplus.1.13.16 user-access-manager.2.1.10 user-avatar user-profile user-registration-aide user-registration.1.1.5 user-role-editor.4.38 users-ultra userswp.1.0.11 vanilla-forums.1.1.17 w3-total-cache.0.9.6 widget-importer-exporter.1.5.2 widget-logic.5.9.0 woocommerce-gateway-paypal-express-checkout.1.5.0 woocommerce.3.2.6 woosidebars.1.4.3 wordfence.6.3.22 wordpress-importer.0.6.3 wordpress-popular-posts.4.0.13 wordpress-seo.5.9.3 worker wp-activity.2.0 wp-bouncer.1.3.1 wp-clone-by-wp-academy.2.2.4 wp-db-backup.2.3.1 wp-discussion-board.2.3.2 wp-fastest-cache.0.8.7.5 wp-google-maps wp-mail-smtp wp-maintenance-mode wp-multibyte-patch.2.8.1 wp-optimize.2.1.1 wp-pagenavi.2.92 wp-recall wp-smushit.2.7.6 wp-statistics.12.3.1 wp-super-cache.1.5.9 wp-user-manager.1.4.3 wpforms-lite wpforo.1.4.3 wysija-newsletters.2.8.1 yith-woocommerce-wishlist.2.1.2
Часто используемые разработчиками функции WordPress:
ФункцияИспользований | Codex | Developers | WP-Kama |
---|---|---|---|
__(57455) | |||
_e(20171) | |||
apply_filters(12700) | — | ||
add_action(10798) | — | ||
esc_attr(8064) | — | ||
get_option(7714) | — | ||
do_action(6968) | |||
add_filter(5512) | |||
esc_html(4859) | |||
esc_html__(4803) | |||
esc_html_e(3260) | |||
esc_url(2625) | |||
current_user_can(2610) | |||
update_option(2342) | |||
is_wp_error(2282) | |||
selected(2195) | |||
admin_url(1945) | |||
sanitize_text_field(1931) | — | ||
wp_enqueue_script(1842) | — | ||
add_query_arg(1830) | — | ||
_x(1444) | |||
absint(1402) | |||
get_post_meta(1369) | — | ||
wp_enqueue_style(1281) | — | ||
checked(1187) | |||
trailingslashit(1148) | |||
esc_attr_e(1075) | |||
get_current_user_id(1064) | — | ||
wp_parse_args(1033) | |||
wp_die(1012) | |||
is_multisite(984) | |||
plugins_url(962) | |||
is_user_logged_in(959) | — | ||
is_admin(909) | |||
delete_option(905) | |||
wp_nonce_field(885) | |||
update_post_meta(874) | |||
get_bloginfo(841) | — | ||
get_post(836) | — | ||
esc_attr__(801) | |||
wp_verify_nonce(773) | |||
wp_redirect(758) | — | ||
_deprecated_function(737) | — | ||
get_user_meta(693) | |||
current_time(686) | |||
wp_create_nonce(685) | |||
get_permalink(680) | — | ||
date_i18n(626) | |||
home_url(626) | |||
_n(616) | |||
update_user_meta(577) | |||
wp_nonce_url(575) | |||
remove_filter(544) | |||
translate(538) | |||
check_admin_referer(524) | |||
wp_register_script(511) | — | ||
esc_url_raw(485) | |||
add_submenu_page(479) | — | ||
site_url(474) | |||
get_site_option(467) | |||
esc_sql(453) | |||
wp_localize_script(449) | |||
wp_get_current_user(436) | |||
number_format_i18n(429) | |||
get_user_by(427) | — | ||
get_current_screen(410) | |||
get_transient(405) | |||
sanitize_title(397) | |||
set_transient(383) | |||
plugin_basename(382) | |||
get_query_var(382) | |||
add_shortcode(377) | |||
wp_kses_post(363) | |||
update_site_option(356) | |||
maybe_unserialize(355) | |||
plugin_dir_path(355) | — | ||
remove_action(351) | |||
get_posts(346) | |||
wp_kses(341) | |||
plugin_dir_url(340) | |||
esc_js(333) | — | ||
wp_register_style(326) | |||
get_the_ID(326) | — | ||
check_ajax_referer(314) | |||
get_plugin_data(312) | |||
register_setting(311) | — | ||
get_post_type(306) | — | ||
wp_safe_redirect(306) | |||
get_userdata(305) | |||
get_settings(303)! deprecated | — | ||
delete_transient(290) | |||
remove_query_arg(279) | — | ||
wp_unslash(278) | |||
add_option(277) | |||
is_plugin_active(272) | |||
add_meta_box(268) | — | ||
wp_upload_dir(265) | — | ||
wp_cache_get(257) | |||
wp_cache_delete(256) | |||
network_admin_url(256) |
Все wordpress функции, что использовали плагины хоть раз, я собрал в своем GIT-репозитории. Перейти на GitHub и посмотреть весь список
Много функций из этого списка вы использовали? Есть ли для вас интересные WordPress функции в этом списке, которые вы еще не использовали — но теперь точно будете их применять?
Читать также:
Топ-50 часто используемых функций, action и filter плагина WP-Recall
otshelnik-fm.ru
add_meta_box | Добавляет дополнительные блоки (meta box) на страницы редактирования/создания постов, постоянных страниц или произвольных типов записей в админ-панели. |
add_post_meta | Добавляет произвольное поле для определенного поста/записи. |
add_post_type_support | Добавляет указанный метабокс для указанного типа записи. Метабоксы это блоки на странице редактирования записи: редактор, автор, произвольные поля, комментарии и т.д. |
delete_post_meta | Удалят все произвольные поля с указанным ключом у указанного поста. |
delete_post_thumbnail | Удаляет миниатюру записи по ID записи. |
edit_bookmark_link | Выводит ссылку на редактирование текущей закладки (ссылки), если пользователь авторизирован и имеет право на редактирование. |
edit_post_link | Выводит ссылку на редактирование поста, если пользователю разрешено изменять пост. |
get_adjacent_post | Получает данные смежных постов (следующий, предыдущий). |
get_adjacent_post_link | Получает ссылки на смежные записи (следующая/предыдущая). Можно указать ограничения по рубрикам (элементам таксономий). Используется на страницах типа is_single(). |
get_all_page_ids | Получает ID всех постоянных страниц (is_page()). |
get_attached_file | Получает серверный путь вложения (прикрепленного файла) по переданному ID вложения. |
get_attached_media | Получает вложения (картинки, видео, аудио) прикрепленные к записи (посту). Получает объекты данных в виде массива. |
get_attachment_link | Выводит УРЛ прикрепленного к посту медиафайла. |
get_bookmark | Получает данные ссылки из блогролла, в виде массива. Нужно указать ID ссылки. |
get_bookmarks | Получает массив данных о ссылках блогролла (Админка -> Ссылки -> Ссылки). |
get_boundary_post | Получает первый или последний пост опубликованные на блоге. |
get_children | Получает дочерние записи: вложения, ревизии, подстраницы и т.д. Аналог get_posts(). |
get_delete_post_link | Получает ссылку (URL) на удаление поста. |
get_edit_post_link | Получает ссылку (URL) на редактирование записи в админ-панели. |
get_extended | Разделяет контент на 2 части до тега <!—more—> и после него. Возвращает массив с полученными частями. |
get_next_post | Получает следующий пост по отношению к текущему. |
get_next_posts_link | Получает HTML-ссылку на список ранее опубликованных постов внутри текущего запроса (ссылка пагинации). |
get_next_post_link | Получает ссылку (html код a) на следующий по дате пост относительно текущего. |
get_pages | Получает данные о постоянных страниц в виде массива объектов. Аналог get_posts(). |
get_page_by_title | Получает данные записи (страницы, поста, произвольного типа записи) по переданному заголовку записи. Если найдено несколько записей с одинаковым заголовком, то будет возращена запись с меньшим ID. |
get_page_children | Получает дочерние страницы к указанной из списка переданных страниц. Получает все уровни вложенности. |
get_page_template_slug | Получает название файла шаблона постоянной страницы, если шаблон для страницы установлен, иначе вернет пустую строку. |
get_permalink | Возвращает постоянную ссылку на запись, для дальнейшего использования в php. |
get_post | Получает пост по переданному ID и возвращает данные поста из базы данных. Вместо поста может быть любая другая запись (вложение, страница, произвольный тип). |
get_posts | Получает записи (посты, страницы, вложения) из базы данных по указанным критериям. Используя эту функцию можно выбрать любые посты и отсортировать их как угодно. |
get_post_ancestors | Получает родительские посты, относительно указанного ID поста. Возвращает массив ID родительских постов, если родительских постов нет, то будет возвращен пустой массив. |
get_post_custom | Возвращает многомерный массив с данными всех произвольных полей текущего поста. |
get_post_custom_keys | Возвращает массив с ключами произвольных полей, принадлежащих определенному посту. |
get_post_custom_values | Возвращает массив значений произвольных полей с определенным названием у определенного поста. |
get_post_field | Получает значение любого поля данных поста по переданному ID поста: post_type, post_status, post_content … |
get_post_format | Возвращает формат поста (quote, status, video, audio). |
get_post_meta | Возвращает значение определенного произвольного поля указанного поста или массив всех полей поста. |
get_post_mime_type | Получает mime тип прикрепленных записей (картинки, файлы и т.п.), на основе переданного ID |
get_post_status | Получает статус (publish, draft) поста на основе переданного ID |
get_post_thumbnail_id | Получает ID прикрепленной к посту картинки миниатюры. |
get_post_time | Возвращает время текущего поста в указанном формате (по умолчанию штамп времени в Unix формате). Используется внутри цикла WordPress. |
get_post_type | Возвращает тип записи (post, page, attachment), по переданному ID |
get_post_types | Возвращает зарегистрированные типы записей. Можно фильтровать вывод по любым критериям. |
get_previous_post | Возвращает предыдущий пост. Возвращается все данные предыдущего поста в виде объекта (массива). |
get_previous_posts_link | Получает HTML-ссылку (<a>) на страницу с предыдущими постами (более свежие посты). |
get_previous_post_link | Получает ссылку на предыдущий по дате пост (запись). Функция должна использоваться на отдельных страницах (типа is_single()). |
get_the_content | Получает контент поста. |
get_the_date | Получает дату создания текущего поста. формат вывода даты можно указать произвольный. |
get_the_excerpt | Получает цитату поста. Используется внутри цикла WP. |
get_the_ID | Возвращает ID текущего поста в цикле. Используется только внутри цикла. |
get_the_modified_date | Получает дату (время), когда в последний раз был изменен текущий пост (запись). Используется внутри цикла. |
get_the_permalink | Получает, а не выводит на экран, УРЛ записи, которая обрабатывается в текущий момент в Цикле. Копия функции get_permalink(). |
get_the_post_navigation | Получает ссылки (HTML) на следующую и предыдущую записи. Используется на странице отдельной записи (is_singular()). |
get_the_post_thumbnail | Получает html код (img) миниатюры поста, если она существует. |
get_the_time | Получает время публикации текущего поста в указанном формате. Используется внутри Цикла WordPress. |
get_the_title | Возвращает заголовок записи для дальнейшего использования в php. Передайте этой функции в качестве параметра ID поста и она вернет вам его заголовок. Если пост «защищен паролем» или является «личным», то это будет указано перед заголовком. |
get_the_title_rss | Получает заголовок поста. Используется при выводе заголовка в RSS-ленте. Используется в Цикле. |
has_excerpt | Проверяет есть ли у текущего поста цитата (короткое описание). Условный тег. |
has_post_format | Проверяет наличие указанного формата у записи (поста). Условный тег. |
has_term | Проверяет наличие у поста терминов, т.е. проверяет есть ли у поста метки/категорий/разделы (с учетом таксономии). |
image_downsize | Получает массив данных картинки указанного размера: УРЛ, ширина и высота картинки-вложения. |
is_object_in_term | Определяет связан ли указанный объект с любым из указанных элементов таксономии (термином). Можно указать конкретный термин(ы) для проверки связи. |
media_handle_sideload | Загружает файл в медиатеку WordPress из переданного массива с данными файла, аналогично media_handle_upload(). |
next_image_link | Создает ссылку на следующую картинку прикрепленную к посту. |
next_posts_link | Выводит ссылку на следующий список постов (например следующие посты в категории). Навигация внутри категории. |
next_post_link | Выводит ссылку на следующюю по дате запись. Используется на отдельных страницах: типа is_single(). |
paginate_links | Выводит ссылки пагинации для стариц архивов. Может быть использована для создания пагинации для любых страниц. |
posts_nav_link | Выводит ссылки на предыдущую и следующую страницы (посты/категории). Может пригодится для того, чтобы снабдить архивы ссылками навигации. |
post_password_required | Условный тег, проверяющий защищен ли пост паролем или нет. |
post_type_archive_title | Выводит или возвращает заголовок для архивной страницы произвольного типа постов. |
previous_image_link | Выводит ссылку на предыдущую картинку прикрепленную к посту. |
previous_posts_link | Выводит ссылку на список постов (страница пагинации). Ссылка выводится на более новые посты по сравнению с текущими. Навигация внутри категории. |
previous_post_link | Выводит ссылку на предыдущий по дате пост (запись). Функция должна использоваться на отдельных страницах (типа is_single()). |
register_post_status | Функция для создания нового или редактирования старого статуса поста, на основе переданных параметров. |
register_post_type | Создает новый тип записи или изменяет имеющийся. |
remove_meta_box | Удаляет Блоки на страницах редактирования/создания постов, постоянных страниц, ссылок и произвольных типов записей. |
setup_postdata | Устанавливает глобальные данные поста. Нужен для удобного использования Тегов Шаблона связанных с оформление поста: the_title(), the_permalink() и т.д. |
set_post_format | Устанавливает формат записи. |
set_post_thumbnail | Устанавливает миниатюру записи по переданным ID записи и ID вложения (медиафайла). Если указанного вложения нет в базе данных, то функция удалит миниатюру записи. |
set_post_type | Обновляет тип записи по указанному ID записи. Базовые типы записей: post, page, attachment … |
single_post_title | Выводит заголовок поста. Предназначен для использования на отдельных страницах записей. |
the_attachment_link | Выводит html код ссылки на прикрепленный к посту файл (вложение) или страницу этого файла в структуре шаблона. |
the_author | Выводит имя автора поста. |
the_content | Выводит контент текущего поста (записи). |
the_date | Выводит дату публикации поста или группы постов (опубликованные в один день). |
the_excerpt | Выводит отрывок (цитату) поста, с вставкой в конец […] (но это не ссылка на прочтение полного материала). |
the_excerpt_rss | Выводит на экран краткое описание поста (цитату) или первые 55 слов контента. Используется внутри Цикла WordPress. |
the_ID | Выводит ID текущего поста. Используется внутри Цикла WordPress. |
the_meta | Выводит произвольные поля поста, (мета данные расположенные в таблице wp_postmeta). |
the_modified_date | Выводит время (дату), когда пост был изменен. |
the_permalink | Выводит ссылку (УРЛ) на пост, который в текущий момент обрабатывается в Цикле. |
the_post | Устанавливает индексы поста в Цикле WP. Получает следующий пост, переопределяет глобальную переменную $post и устанавливает свойство ‘in the loop’ в true. |
the_post_navigation | Выводит на экран HTML блок ссылок на следующую и предыдущую записи. Используется на странице отдельной записи (is_singular()). |
the_post_thumbnail | Выводит html код картинки-миниатюры поста. |
the_shortlink | Выводит короткую ссылку на пост (/?p=1234). |
the_taxonomies | Этот Тег Шаблона можно использовать внутри Цикла WordPress, чтобы вывести ссылки на термины, относящиеся к посту, не указывая ID поста. |
the_time | Выводит на экран время (дату) публикации текущего поста в Цикле WordPress. |
the_title | Выводит на экран или возвращает заголовок записи. Функция используется внутри цикла WordPress. Особенностью является, то что заголовок для «личных» и «защищеных» постов будет помечен соответственно: «Protected: » or «Private: « |
the_title_attribute | Выводит заголовок записи подготовленный для использования в атрибутах html тега. |
update_post_meta | Обновляет произвольное поле указанного поста или добавляет новое. |
wp_count_posts | Получает количество записей любого типа записей и любых статусов (опубликовано, черновик). |
wp_delete_attachment | Удаляет вложение (прикрепленные файлы). |
wp_delete_object_term_relationships | Разрушает связь объекта (пост, страница) с терминами указанной таксономии(й). |
wp_delete_post | Удаляет запись из Базы Данных (пост, вложение, страницу). |
wp_dropdown_pages | Выводит выпадающий список постоянных страниц (список в теге select). |
wp_get_attachment_image | Возвращает картинку прикрепленного к посту файла (вложения). |
wp_get_attachment_image_src | Возвращает массив с данными о УРЛе, ширине и высоте картинки-вложения (прикрепленной к посту). |
wp_get_attachment_link | Выводит html код ссылки на вложение (прикрепленный к посту файл) или страницу, содержащую вложения. |
wp_get_attachment_metadata | Получает метаданные прикрепленного файла. |
wp_get_attachment_url | Получает УРЛ вложения по переданному ID вложения. |
wp_get_post_tags | Получает список (массив) меток указанного поста. |
wp_get_post_terms | Получает термины (метки, рубрики и т.д.) поста. |
wp_get_recent_posts | Получает последние посты блога. |
wp_get_shortlink | Возвращает короткую ссылку на статью (пост). |
wp_insert_attachment | Добавляет медиафайл (вложение) в медиатеку WordPress. Файл физически не добавляется — функция создает запись в таблице wp_posts в базе данных и возвращает ID созданной записи. |
wp_insert_post | Безопасно вставляет запись в базу данных. |
wp_link_pages | Выводит ссылки навигации по страницам, для многостраничных постов. |
wp_list_bookmarks | Выводит на экран список ссылок, указанных на странице «Администрирование > ссылки». |
wp_list_pages | Выводит список постоянных страниц в виде ссылок. |
wp_page_menu | Выводит список постоянных страниц блога в виде ссылок на соответствующие страницы. Аналог wp_list_pages(), только есть возможность добавить ссылку «на главную» в начало. |
wp_publish_post | Публикует запись: меняя её статус с future/draft/т.д. на publish. |
wp_set_post_categories | Устанавливает категории для поста. |
wp_set_post_terms | Устанавливает термины (рубрики) для записи (поста). |
wp_transition_post_status | Вызывает фильтры для любых изменений статусов записей (с draft на publish, с publish на private и т.д.). |
wp_update_attachment_metadata | Обновляет метаданные вложения (медиафайла). |
wp_update_post | Обновляет запись (пост) в Базе Данных WordPress. |
clublit.ru
Возможности | WordPress.org Русский
WordPress powers more than 35% of the web — a figure that rises every day. Everything from simple websites, to blogs, to complex portals and enterprise websites, and even applications, are built with WordPress.
WordPress сочетает в себе простоту для пользователей и издателей. Это делает его гибким, но при этом простым в использовании. Ниже приведен список некоторых функций, которые входят в стандартную комплектацию WordPress, тем не менее, есть тысячи плагинов, которые расширяют возможности WordPress, поэтому реальная функциональность практически безгранична. Вы также можете свободно писать с WordPress любой код, расширяя или модифицирую любым способом или использовать его для коммерческих проектов без каких-либо лицензионных сборов. В этом прелесть свободного программного обеспечения, бесплатное относится не только к цене, но и свободно иметь полный контроль над ним.
Вот некоторые из возможностей, которые, по нашему мнению, вам понравятся.
- Простота
Простота дает вам возможность выйти в интернет и быстро получить возможности публикации. Ничто не должно мешать вам создать ваш сайт и разместить на нём содержимое. WordPress создан для того, чтобы это произошло. - Гибкость
С помощью WordPress вы можете создать любой тип веб-сайта: личный блог или веб-сайт, фотоблог, бизнес-сайт, профессиональное портфолио, правительственный веб-сайт, журнал или новостной сайт, интернет-сообщество и даже сеть веб-сайтов. Вы можете сделать свой сайт красивым с помощью тем и дополнить его плагинами. Вы даже можете создать свое собственное приложение. - Публикуйте с легкостью
If you’ve ever created a document, you’re already a whizz at creating content with WordPress. You can create Posts and Pages, format them easily, insert media, and with the click of a button your content is live and on the web. - Инструменты публикации
WordPress makes it easy for you to manage your content. Create drafts, schedule publication, and look at your post revisions. Make your content public or private, and secure posts and pages with a password. - Управление пользователями
Not everyone requires the same access to your website. Administrators manage the site, editors work with content, authors and contributors write that content, and subscribers have a profile that they can manage. This lets you have a variety of contributors to your website, and let others simply be part of your community. - Управление медиафайлами
They say a picture says a thousand words, which is why it’s important for you to be able to quickly and easily upload images and media to WordPress. Drag and drop your media into the uploader to add it to your website. Add alt text and captions, and insert images and galleries into your content. We’ve even added a few image editing tools you can have fun with. - Полная совместимость со стандартами
Every piece of WordPress generated code is in full compliance with the standards set by the W3C. This means that your website will work in today’s browser, while maintaining forward compatibility with the next generation of browser. Your website is a beautiful thing, now and in the future. - Простая система тем оформления
WordPress comes bundled with three default themes, but if they aren’t for you there’s a theme directory with thousands of themes for you to create a beautiful website. None of those to your taste? Upload your own theme with the click of a button. It only takes a few seconds for you to give your website a complete makeover. - Расширение плагинами
WordPress comes packed with a lot of features for every user. For every feature that’s not in WordPress core, there’s a plugin directory with thousands of plugins. Add complex galleries, social networking, forums, social media widgets, spam protection, calendars, fine-tune controls for search engine optimization, and forms. - Встроенные комментарии
Your blog is your home, and comments provide a space for your friends and followers to engage with your content. WordPress’s comment tools give you everything you need to be a forum for discussion and to moderate that discussion. - Оптимизирован для поисковых систем
WordPress is optimized for search engines right out of the box. For more fine-grained SEO control, there are plenty of SEO plugins to take care of that for you. - Пользуйтесь WordPress на вашем языке
WordPress is available in more than 70 languages. If you or the person you’re building the website for would prefer to use WordPress in a language other than English, that’s easy to do. - Легкая установка и обновления
WordPress всегда был и остается удобным для установки и обновления. Множество хостинг-провайдеров предлагают установку WordPress в одно нажатие. Или, если вам удобно, то вы можете создать базу данных и загрузить WordPress по FTP (или другим удобным способом) и запустить установку. - Импорт данных
Using blog or website software that you aren’t happy with? Running your blog on a hosted service that’s about to shut down? WordPress comes with importers for Blogger, LiveJournal, Movable Type, TypePad, Tumblr, and WordPress. If you’re ready to make the move, we’ve made it easy for you. - Владейте своими данными
Hosted services come and go. If you’ve ever used a service that disappeared, you know how traumatic that can be. If you’ve ever seen adverts appear on your website, you’ve probably been pretty annoyed. Using WordPress means no one has access to your content. Own your data, all of it — your website, your content, your data. - Свобода
WordPress лицензируется под Универсальной общественной лицензией GNU (GPLv2 или более новой), созданной для защиты выших свобод. Вы можете использовать WordPress любым образом, каким захотите: устанавливать, использовать, изменять, распространять. Свобода программного обеспечения — тот фундамент, на котором основан WordPress. - Сообщество
As the most popular open source CMS on the web, WordPress has a vibrant and supportive community. Ask a question on the support forums and get help from a volunteer, attend a WordCamp or Meetup to learn more about WordPress, read blogs posts and tutorials about WordPress. Community is at the heart of WordPress, making it what it is today. - Участвуйте
You can be WordPress too! Help to build WordPress, answer questions on the support forums, write documentation, translate WordPress into your language, speak at a WordCamp, write about WordPress on your blog. Whatever your skill, we’d love to have you!
Возможности для разработчиков
For developers, we’ve got lots of goodies packed under the hood that you can use to extend WordPress in whatever direction takes your fancy.
- Система плагинов
The WordPress APIs make it possible for you to create plugins to extend WordPress. WordPress’s extensibility lies in the thousands of hooks at your disposal. Once you’ve created your plugin, we’ve even got a plugin repository for you to host it on. - Система тем оформления
Create WordPress themes for clients, other WordPress users, or yourself. WordPress provides the extensibility to create themes as simple or as complex as you wish. If you want to give your theme away for free you can give it to users in the theme repository. - Application Framework
WordPress может помочь вам и с созданием приложения. Под капотом есть масса возможностей, которые могут пригодиться: переводы, управление пользователями, HTTP запросы, база данных, маршрутизация URL и многое-многое другое. Вы также можете использовать REST API для всего этого. - Пользовательские типы содержимого
WordPress comes with default content types, but for more flexibility you can add a few lines of code to create your own custom post types, taxonomies, and metadata. Take WordPress in whatever direction you wish.
ru.wordpress.org
WordPress изнутри — принцип работы движка
WordPress известен вебмастерам, блоггерам и владельцев веб-ресурсов, как интуитивно понятная платформа на PHP. Но, наверное, в общих чертах многим хотелось бы понимать принцип работы движка WP-сайта и разобраться как работает WordPress.
В этой статье с занимательной инфографикой, вордпресс показан изнутри — весь процесс загрузки ядра и генерации веб-страницы расписан по шагам.
Источник: wpbeginner.com
1. Обращение к wp-config.php для загрузки конфигурации
Процесс загрузки начинается с запуска wp-config.php (конфигурационного файла с глобальными переменными и подключением к БД).
2. Загрузка дефолтных констант
Применяются предустановленные значения дефолтных констант: директория установки, максимальный размер файлов и т.д.
3. Загружается advanced-cache.php
Файл используется плагинами кэширования.
4. Подгружается wp-content/db.php (если он существует)
Файл необходимый для оптимизации работы BD. Он может повысить производительность сайта за счет уменьшения числа запросов к базе данных.
5. Подключение к серверу баз данных MySQL
CMS произведет выбор БД на сервере MySQL, либо вы увидите ошибку: «Error establishing database connection».
6. Запуск object-cache.php, либо wp-includes/cache.php
WordPress будет искать файл object-cache.php и при отсутствии такового, запустит по умолчанию wp-includes/cache.php.
7. Загрузка файла wp-content/sunrise.php
При наличии сети сайтов, запустится режим Multisite (после обнаружения вордпрессом sunrise.php в папке wp-contetnt).
8. Загрузка локализации
После обращения к библиотеке /l10n.php из wp-includes, вордпресс выполнит локализацию веб-сайта.
9. Запуск мультисайтовых плагинов
В случае мультисайтовой сети, WP запустит Multisite-плагины.
10. Событие «muplugins_loaded»
Срабатывает только для активных сетевых мультисайт-плагинов.
11. Запуск активированных плагинов
Запускаются все активные плагины, указанные в поле active_plugins таблицы wp_options.
12. Загрузка pluggable.php
Активированные вордпресс плагины могут переопределять функции pluggable.php, но если это не так, то платформа обратится к файлу pluggable.php.
13. Срабатывает событие plugins_loaded
Разработчики могут вставлять «plugins_loaded» в код различных хуков и запускать собственные функции после загрузки всех активированных плагинов.
14. Применение правил Rewrite для ЧПУ
Выполняются Rewrite Rules – правила переопределения ссылок в SEO-дружественные и понятные человеку URL (ЧПУ).
15. Инициализируются объекты $wp_query, $wp_rewrite, $wp
На этом этапе WP задействует:
- $wp_query: Глобальная переменная класса WP_Query сообщает, что контент запрошен в типичном для WP-движка формате
- $wp_rewrite: Глобальная переменная класса WP_Rewrite. Содержит функции и правила Rewrite Rules, подсказывающие вордпрессу, какой URL соответствует запрашиваемому контенту
- $wp: Глобальная переменная класса WP. Ее функции автоматически разбирают пользовательские запросы и загружают главную очередь (main query)
16. Запускается функция «setup_theme»
Загружая тему оформления, CMS выполняет предварительные действия.
17. Запуск functions.php дочерней темы
Файл functions.php работает как плагин и его назначение – придавать WP-теме отличительные особенности. Файл запустится, только если активна дочерняя тема, в противном случае загрузится functions.php активной темы.
18. Запуск functions.php родительской темы
Если используется дочерняя тема, на этом шаге WP запустит файл functions родительской темы.
19. Выполненяется «after_setup_theme»
Выполнение функции последует сразу за загрузкой основного шаблона (темы) и ее файла functions.php.
20. Загрузка объекта текущего пользователя User Object
Вордпресс обрабатывает запросы согласно роли и привилегий текущего пользователя.
21. Выполненяется функция «init»
К этому моменту WordPress уже запустил критически важные для работы механизмы. Теперь стартует функция «init». Она дает разработчикам возможность использовать собственный код, который выполняется сразу после того, как движом выполнены все предшествующие шаги.
22. Выполненяется функция «widget_init»
Разработчикам widget_init позволяет регистрировать виджеты и выполнять нужный для их функционирования код.
23. Выполнение wp()
Из файла wp-includes/functions.php вызывается функция wp(). Задаются переменные $wp, $wp_query, $wp_the_query и сразу следует вызов $wp->main.
24. Парсинг запроса
Сейчас у вордпресса есть вся информация, необходимая для парсинга запроса. Первым делом проверяются соответствуют ли rewrite-правила запросам пользователей. Далее следует фильтрация переменных запроса, запрос экшен-хуков и запрос на загрузку шапки (хедера) веб-ресурса.
25. Выполнение запроса
Когда вордпресс не находит соответствующий пользовательскому запросу контент, условный тег is_404 сгенерит страницу ошибки 404. Если контент найден, то продолжится запуск других запросов:
- WP_Query->get_posts()
- Функции DO_ACTION_REF_ARRAY ‘pre_get_posts’ для объекта WP_Query
- apply_filters (фильтр для очистки запросов и пр. завершающих проверок)
- К извлекаемым из БД постам применяются фильтры posts_results и the_posts
Теперь, когда все запросы выполнены, вордпресс выведет загруженные записи (посты).
26. Запуск функции template_redirect
Этот хук запустится до того, как будет выбрано, какой шаблон загружать
27. Загрузка Feed-шаблона
Для RSS feed запроса, вордпресс загрузит соответствующий шаблон RSS-ленты.
28. Загрузка основной темы (шаблона)
WP приступит к поиску файла темы. Обычно, процесс загрузки шаблона начинается с файла содержащего основной цикл вордпресса.
29. Запуск функции «shutdown»
Закончив исполнять PHP-код WordPress запустит «shutdown». Работа WP-движка выполнена.
В ответ на запрос пользователя, веб-серверу хостинга будет передан сгенерированный вордпрессом HTML код со стилями CSS / скриптами JS, далее последует рендеринг страницы браузером.
Работа WordPress заняла лишь миллисекунды!
seo-design.net