Файловая структура и ядро WordPress

К файлам ядра относятся папки wp-admin/, wp-includes/ и большинство файлов из кореневой директории. Директория wp-content/ содержит пользовательские файлы, включая файлы плагинов, тем и медиа файлов. Изменение файлов ядра не рекомендуется, так как это может повлиять на стабильность, обновление и поддержку системы. По сути, файлы ядра изменяются только тогда когда вы обновляете WordPress до новой версии.

Единственное место, где мы можем изменять файлы — это папка wp_content/:

  • languages/ — языковые файлы
  • plugins/ — папка с плагинами. По умолчанию здесь находятся 2 плагина akismet/ и hello.php. После устновки новых плагинов, их файлы будут размещатся в этой директории.
  • themes/ — папка с темами. По умолчаню размещаются 3 темы с приставкой twenty….
  • upgrade/ — используется при обновлении WordPress, как правило для хранения временных файлов.
  • uploads/ — хранятся медиа-файлы. По умолчанию они размещаются в папках по году и месяцу загрузки файлов.

Ядро содержит несколько основных типов функций:

  • Посты, страницы и пользовательские типы контента
  • Типы постов, таксономии и метаданные
  • Темы
  • Действия, фильтры и плагины
  • Пользователи, создание и управление контролем доступа
  • Фиды, форматирование и комментарии

Практически все файлы ядра WordPress содержат встроенную документацию в фор­ме PHPDoc. PHPDoc — это стандартизированный метод описания использования функции в форме комментария РНР. Комментарий вклю­чает:

  • Краткое и полное описание
  • Версия WordPress, в которой функция была добавлена
  • Доступные параметры и их тип
  • Тип возвращаемых данных

В ядре WordPress есть несколько файлов, которые содержат многие из самых по­пулярных функций WordPress.

wp-includes/functions.php

Содержит все основные функции WordPress API

  • current_time() — возвращает текущее время на основе определенного типа.
  • force_ssl_login() — требует SSL (https) авторизации
  • wp_nonce_field() — добавляет специальное скрытое поля формы, которое используется в целях проверки при отправке или обработке данных в WordPress.
  • absint() — конвертирует значение в неотрицательное целое число
  • wp_die() — завершает работу WordPress и выводит HTML сообщение об ошибке

wp-includes/option.php

Содержит основные функции Option API WordPress.

  • add_option(), update_option(), get_option() — добавление, обновление и отображение сохранённых опций.
  • set_transient(), get_transient(), delete_transient() — функции создания, возврата и удаления временных параметров в WordPress. Временный параметр — это параметр с ограниченным сроком действия и по достижении соответствующего времени автоматически удаляется из WordPress.
  • add_site_option(), update_site_option(), get_site_option() — функции создания, обновления и отображения параметров сайта. Если активирован Multisite, функция возвращает сетевой параметр, если нет — параметр стандартного сайта.

wp-includes/formatting.php

Содержит функции форматирования WordPress API.

  • esc_attr() — экранирует атрибуты HTML
  • esc_html() — заменяет спецсимволы на HTML сущности в переданном тексте, возвращает отформатированный текст
  • esc_url() — используется для проверки и очистки URL
  • sanitize_text_field() — очищает строку полученную из формы или БД
  • is_email() — проверяет валидность email

wp-includes/pluggable.php

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

  • wp_mail() — посылает электронные письма из WordPress
  • get_userdata() — возвращает все пользовательские данные для определенного ID пользователя
  • get_current_user_info() — возвращает все пользовательские данные для пользова­теля, авторизованного в данный момент
  • wp_set_password() — обновляет пароль пользователя на новый шифрованный
  • wp_rand() — генерирует случайное число
  • wp_logout() — завершает сеанс работы пользователя, прерывая текущую сессию
  • wp_redirect() — перенаправляет на другую страниц
  • get_avatar() — возвращает автар пользователя

wp-includes/plugin.php

Содержит функции WordPress Plugin API.

  • add_filter() — заставляет ядро WordPress пропускать контент через фильтр, перед тем как отображать его на экране или сохранять в базе данных
  • add_action() — заставляет ядро WordPress выполнять определенные действия в нужный момент работы
  • register_ activation_hook() — хук, вызываемый при активации плагина register_deactivation_hook() — хук, вызываемый при деактивации плагина
  • plugin_dir_url() — возвращает путь к директории файловой системы для пла­гина
  • plugin_dir_path() — возвращает URL для плагина
  • doing_filter() и doing_action() — возвращает имя текущего фильтра или экшена в процессе обработки

wp-includes/user.php

Содержит функции WordPress User API.

  • get_users() — возвращает список пользователей, соответствующих заданным критериям
  • add_user_meta(), get_user_meta(), delete_user_meta() — используется для создания, получения и удаления метаданных пользователя
  • username_exists() — проверяет, существует ли имя пользователя
  • email_exists() — проверяет, существует ли электронный адрес
  • wp_insert_user() и wp_update_user() — создает и обновляет учетную запись поль­зователя

wp-includes/post.php

Cодержит функции, используемые в обработке постов.

  • wp_insert_post() — создает новую запись
  • get_posts() — возвращает список последних постов, соответствующих критерию
  • add_post_meta() — создает мета данные для поста (custom field)
  • get_post_meta() — возвращает метаданные для поста
  • get_post_custom() — возвращает многомерный массив со всеми введенными ме­та данными для поста
  • set_post_thumbnail() — устанавливает миниатюру для поста
  • register_post_type() — регистрирует пользовательский тип поста

wp-includes/taxonomy.php

Cодержит функции WordPress Taxonomy API.

  • register_taxonomy() — регистрирует пользовательскую таксономию
  • get_taxonomies() — возвращает список зарегистрированных таксономий
  • wp_insert_term(), wp_update_term() — вставляет или обновляет термин таксоно­мии

wp-includes/deprecated.php

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

/**
 * Retrieve current theme name.
 *
 * @since 1.5.0
 * @deprecated 3.4.0 Use wp_get_theme()
 * @see wp_get_theme()
 *
 * @return string
 */
Отправить

Похожие посты


Владимир Камуз

Фрилансер Full Stack WordPress разработчик из Украины. Работаю в основном на международной бирже фриланса Upwork.

Добавить комментарий

Email рассылка

Еженедельный дайджест последних добавленных обучающих материалов. Подпишитесь на Email рассылку, чтобы не пропустить полезную информацию о фрилансе на Upwork и веб-разработке.