Заголовки Темы style.css
Заголовки style.css
/** * Theme Name: Название темы (обязательно) * Template: Название родительской темы. Пр: Twenty Seventeen * Description: Короткое описание темы * * Theme URI: URL темы. Пр: http://wordpress.org/themes/twenty * Author: Kama * Author URI: https://wp-kama.ru * * Tags: black, brown, orange * Text Domain: Домен перевода темы. Пр: twentythirteen * * License: Лицензия. Пр: GNU General Public License v2 or later * License URI: http://www.gnu.org/licenses/gpl-2.0.html * * Version: 1.0 */
.htaccess код
# BEGIN WordPress # Директивы (строки) между "BEGIN WordPress" и "END WordPress" # созданы автоматически и подлежат изменению только через фильтры WordPress. # Сделанные вручную изменения между этими маркерами будут перезаписаны. <IfModule mod_rewrite.c> RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPressmod_rewrite_rulessave_mod_rewrite_rules()insert_with_markers()WP_Rewrite::mod_rewrite_rules()
Файлы Темы (подключение)
Функции подключения файлов Темы
- <?php get_header(); ?>header.php.
- <?php get_template_part('file'); ?>file.php.
- <?php get_search_form(); ?>Форма Поиска searchform.php.
- <?php comments_template(); ?>Шаблон Комментариев comments.php.
- <?php get_sidebar(); ?>sidebar.php.
- <?php get_footer(); ?>footer.php.
- get_template_directory()Путь до род. темы (не дочерней). Нет / в конце.
- get_stylesheet_directory()Путь до темы (где доч./род. style.css). Нет / в конце.
- get_parent_theme_file_path()Путь файла род. темы (не дочерней).
- get_theme_file_path()Путь файла доч./род. темы.
- load_template()Подключает файл (require_once).
- locate_template()Находит/Подключает файл доч./род. темы.
- get_template_directory_uri()URL род. темы (не дочерней). Нет / в конце.
- get_stylesheet_directory_uri()URL темы (учитывает доч. темы). Нет / в конце.
- get_theme_root_uri()URL папки с темами. Нет / в конце.
- get_stylesheet_uri()URL файла темы style.css.
- get_theme_file_uri()URL файла доч./род. темы.
- get_parent_theme_file_uri()URL файла род. темы.
Файлы Темы (иерархия)
/themes/ТЕМА/
Иерархия файлов Темы
- style.cssФайл стилей темы (обязательный)
- index.phpЛюбая страница без файла шаблона (обязательный)
- front-page.phpГлавная страница
- home.phpСтраница Постов (или Главная страница)
- functions.phpСпециальный файл для php функций (кода)
- 404.phpСтраница "не найдено"
- comments.phpШаблон Комментариев (подключаемый)
- header.phpШаблон Шапки сайта (подключаемый)
- searchform.phpШаблон формы Поиска (подключаемый)
- sidebar.phpШаблон Боковой панели (подключаемый)
- footer.phpШаблон Подвала сайта (подключаемый)
- single.phpЗапись (пост)
- single-POST_TYPE.phpЗапись типа POST_TYPE
- single-POST_TYPE-POST_NAME.phpЗапись POST_NAME типа POST_TYPE
- singular.phpЗапись любого типа
- page.phpПостоянная Страница
- page-POST_NAME.phpСтраница с Именем POST_NAME
- page-ID.phpСтраница с ID
- attachment.phpСтраница Вложения
- image.phpСтраница Вложения-картинки
- archive.phpСтраница любого Архива
- archive-POST_TYPE.phpСтраница Архива типа записи
- search.phpСтраница Поиска
- category.phpСтраница Рубрики
- category-SLUG.phpСтраница Рубрики со слагом
- category-ID.phpСтраница Рубрики с id
- tag.phpСтраница Метки
- tag-SLUG.phpСтраница Метки со слагом
- tag-ID.phpСтраница Метки с id
- taxonomy.phpСтраница любого Термина
- taxonomy-TAXONOMY.phpСтраница Термина таксономии TAXONOMY
- taxonomy-TAXONOMY-SLUG.phpСтраница Термина SLUG таксономии TAXONOMY
- author.phpСтраница постов Автора
Шаблон записи из любого файла:
<?php /* Template Name: Мой шаблон страницы Template Post Type: post, page, product */ // … остальной код шаблонаПодробнее про шаблоны записей
Информация о сайте bloginfo
- bloginfo()Выводит информацию о сайте.
- get_bloginfo()Получает информацию о сайте.
- <?php bloginfo('name'); ?>Название сайта.
- <?php bloginfo('description'); ?>Короткое описание сайта.
- <?php bloginfo('template_url'); ?>URL Темы: get_template_directory().
- <?php bloginfo('template_directory'); ?>Тоже что и template_url.
- <?php bloginfo('stylesheet_directory'); ?>URL Темы: get_stylesheet_directory_uri().
- <?php bloginfo('stylesheet_url'); ?>URL файла темы style.css: get_stylesheet_uri().
- <?php bloginfo('charset'); ?>Кодировка сайта: UTF-8.
- <?php bloginfo('html_type'); ?>Content-Type страницы: text/html.
- <?php bloginfo('language'); ?>Локаль сайта (язык): ru-RU.
- <?php bloginfo('version'); ?>Версия WordPress: 5.0.3.
- <?php bloginfo('rss2_url '); ?>URL фида: /feed.
- <?php bloginfo('comments_rss2_url'); ?>URL фида комментов: /comments/feed.
- <?php bloginfo('admin_email'); ?>E-mail Админа.
- <?php bloginfo('pingback_url'); ?>URL уведомлений на файл xmlrpc.php.
- <?php bloginfo('rdf_url'); ?>URL RDF/RSS 1.0 фида (/feed/rfd).
- <?php bloginfo('rss_url'); ?>URL RSS 0.92 фида (/feed/rss).
- <?php bloginfo('atom_url '); ?>URL Atom фида (/feed/atom).
- <?php bloginfo('url'); ?>URL Фронта. Псевдомин home_url().
- <?php bloginfo('wpurl'); ?>URL Админки. Псевдомин site_url().
Цикл Комментариев
- comment_ID()Выводит ID текущего комментария.
- comments_popup_link()Выводит <a> ссылку на всплывающее окно комментариев.
- comment_text()Выводит текст комментария.
- comment_author()Выводит имя автора комментария.
- comments_link()Выводит ссылку (URL) на форму комментирования текущей статьи.
- comment_reply_link()Выводит ссылку <a>, для ответа на комментарий.
- comment_time()Выводит время публикации комментария.
- comment_author_link()Выводит имя автора комментария в виде ссылки.
- comment_author_url()Выводит URL комментатора (указывается при комментировании).
- comment_author_url_link()Выводит ссылку (A тег) автора комментария.
- comment_author_email_link()Выводит email адрес комментатора как mailto ссылку.
- edit_comment_link()Выводит ссылку на редактирование комментария.
Цикл The Loop
Цикл «the loop»3 способа построения циклов
- in_the_loop()Проверяет активен ли цикл WordPress.
- have_posts()Проверяет есть ли записи для вывода.
- the_post()Устанавливает следующий пост в цикле и global $post.
- setup_postdata()Устанавливает global $post.
- the_ID()Выводит ID текущего поста.
- the_title()Выводит заголовок текущей записи.
- the_title_attribute()Выводит заголовок записи для атрибута html тега.
- the_content()Выводит контент записи.
- the_excerpt()Выводит отрывок (цитату) записи, со вставкой в конеце [...].
- the_excerpt_rss()Выводит отрывок (цитату) (для RSS).
- get_permalink()Получает URL записи.
- the_permalink()Выводит URL записи.
- comments_number()Выводит число комментариев записи.
- edit_post_link()Выводит ссылку (html) на редактирование поста.
- the_date()Выводит/получает дату публикации записи.
- get_the_date()Получает дату создания текущего поста.
- the_time()Выводит время (дату) публикации записи.
- get_post_time()Получает время (дату) публикации записи.
- the_modified_date()Выводит время (дату), когда пост был изменен.
- the_post_thumbnail()Выводит html код картинки-миниатюры текущего поста.
- get_post_thumbnail_id()Получает ID миниатюры записи.
- has_post_thumbnail()Имеет ли запись картинку-миниатюру. Условный тег.
- the_post_thumbnail_url()Выводит URL миниатюры записи.
- the_attachment_link()Выводит ссылку (тег A) вложения или страницы вложения.
- get_attachment_link()Получает URL на страницу вложения (во фронте).
- wp_get_attachment_link()Получает ссылку (тег A) вложения или страницы вложения.
- the_tags()Выводит ссылки на метки записи.
- the_category()Выводит рубрики записи в виде ссылок.
- the_taxonomies()Выводит ссылки <a> на термины записи.
- in_category()Проверяет принадлежит ли записиь к категории.
- sticky_class()Выводит класс "sticky", если это пост прилепленный пост.
- is_sticky()Проверяет прилеплен ли пост к главной странице сайта.
- the_meta()Выводит метаполя записи в <li> списке.
- get_post_format()Получает формат (тип) поста: quote, status, video, audio.
- the_author()Выводит имя автора поста.
- get_the_author()Получает имя автора поста (display_name).
- the_author_link()Выводит ссылку (A тег) на сайт автора поста.
- get_the_author_link()Получает ссылку (A тег) на сайт автора поста.
- the_author_posts()Выводит общее число постов, написанных текущим автором.
- the_author_posts_link()Выводит html код ссылки на страницу постов автора записи.
- the_author_meta()Выводит метаполе автора поста (wp юзера).
- get_the_author_meta()Получает метаполе автора поста.
- the_modified_author()Выводит имя автора, который последним изменял пост.
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <!-- Вывод постов, функции цикла: the_title() и т.д. --> <?php endwhile; else: ?> Записей нет. <?php endif; ?>
<?php if ( have_posts() ){ while ( have_posts() ){ the_post(); ?> <!-- Вывод постов, функции цикла: the_title() и т.д. --> <?php } } else { ?> Записей нет. <?php } ?>
<?php while ( have_posts() ){ the_post(); ?> <!-- Вывод постов, функции цикла: the_title() и т.д. --> <?php } ?> <?php if ( ! have_posts() ){ ?> Записей нет. <?php } ?>
<?php global $post; $myposts = get_posts([ 'numberposts' => 5, 'offset' => 1, 'category' => 1 ]); if( $myposts ){ foreach( $myposts as $post ){ setup_postdata( $post ); ?> <!-- Вывод постов, функции цикла: the_title() и т.д. --> <?php } } else { // Постов не найдено } wp_reset_postdata(); // Сбрасываем $post ?>
<?php global $post; $query = new WP_Query( [ 'posts_per_page' => 5, 'orderby' => 'comment_count', ] ); if ( $query->have_posts() ) { while ( $query->have_posts() ) { $query->the_post(); ?> <!-- Вывод постов, функции цикла: the_title() и т.д. --> <?php } } else { // Постов не найдено } wp_reset_postdata(); // Сбрасываем $post ?>
Теги шаблона
Все Теги шаблона
- home_url()Получает URL главной страницы сайта.
- site_url()Получает URL админки-сайта.
- wp_get_document_title()Получает заголовок страницы для <title>.
- the_archive_title()Выводит заголовок архивной страницы: метка, рубрика, дата.
- single_term_title()Выводит/получает заголовок страницы термина.
- single_post_title()Выводит/получает заголовок страницы записи.
- single_cat_title()Выводит/получает заголовок страницы рубрики/метки.
- body_class()Выводит css классы для тега <body>.
- wp_body_open()Запускает хук wp_body_open. Используется сразу после <body>.
- wp_head()Запускает хук wp_head. Для файла header.php.
- wp_footer()Запускает хук wp_footer. Для файла footer.php.
- wp_list_categories()Выводит список категорий в виде ссылок.
- wp_dropdown_categories()Выводит выпадающий список рубрик/таксономий.
- wp_list_comments()Выводит/получает комментарии записи.
- comment_form()Выводит форму комментирования.
- wp_tag_cloud()Выводит/получает облако меток.
- register_sidebar()Регистрирует панель виджетов.
- register_sidebars()Регистрирует панели виджетов (сразу несколько).
- wp_nav_menu()Выводит произвольное меню, созданное в админке.
- register_nav_menu()Регистрируется одно место для меню.
- register_nav_menus()Регистрируется несколько мест для меню.
- wp_get_attachment_image()Получает IMG тег картинки.
- wp_get_attachment_image_src()Получает данные картинки: URL/ширина/высота.
- wp_get_attachment_image_url()Получает URL картинки по ID.
- category_description()Получает описание рубрики.
- term_description()Получает описание термина.
- get_the_term_list()Выводит список терминов записи в виде ссылок.
- get_avatar()Получает html код аватара, тег <img>.
- next_post_link()Выводит ссылку на следующую по дате запись.
- previous_post_link()Выводит ссылку на предыдущий по дате запись.
- get_post_type_archive_link()Получает URL старницы архива типа записи.
- wp_link_pages()Выводит пагинацию для многостраничных записей <!--nextpage-->.
- the_post_navigation()Выводит HTML блок ссылок на следующую/предыдущую записи.
- wp_get_archives()Выводит ссылки на страницы архивов по дате: дни, месяцы, годы.
- wp_login_form()Выводит HTML код формы входа.
- edit_tag_link()Выводит ссылку на редактирование текущей метки.
- edit_term_link()Выводит ссылку на редактирование термина.
Форматирование
Форматирование
- absint()Конвертирует в положительное целое число.
- antispambot()Изменяет все символы email на HTML сущности.
- force_balance_tags()Исправляет HTML теги: не закрытые, неправильный синтаксис.
- links_add_target()Добавляет target атрибут с указанным значением к A тегам.
- make_clickable()Меняет ссылки вида http://site.com, www.site.com в HTML ссылку.
- normalize_whitespace()Заменяет все переносы строк (EOL) на \n, удаляет лишние пробелы.
- number_format_i18n()Поправляет формат целого или дробного числа под локализацию.
- size_format()Меняет байты в формат: 500 B, 63 KB, 9 MB, 2 GB, 1 TB.
- set_url_scheme()Поправляет URL протокол. Если указать "relative", то домен будет удален.
- wp_rel_nofollow()Добавляет rel="nofollow" ко всем <a>. Внутренние ссылки пропускаются.
- trailingslashit()Добавляет слэш (/) в конец строки (URL/пути).
- untrailingslashit()Удаляет закрывающий слэш (/) на конце строки.
- user_trailingslashit()Добавляет или удаляет слэш (/) в конце. Зависит от WP настроек ЧПУ.
- wp_trim_words()Обрезает текст до указанного количества слов.
- wpautop()Заменяет двойной перенос (\n\n) на HTML <p>...</p>, а одинарный на <br>.
- wptexturize()Изменяет некоторые символы в тексте: (tm) >> ™ и т.д.
- zeroise()Добавляет предшествующий ноль к числам: 10 >> 0010.
Очистка при Выводе
Очистка при выводе
- esc_attr()Очищает для использования в атрибуте HTML тега.
- esc_html()Очищает для вывода текста на экран.
- esc_url()Очищает для использования в атрибует src=, url= и т.д.
- esc_textarea()Очищает для использования в значении <textarea>.
- wp_strip_all_tags()Удаляет все HTML теги.
- wp_kses()Удаляет все HTML теги.
- esc_js()Подготавливает строку для вывода в JS.
- esc_sql()Чистит строку, оставляя только указанные HTML теги.
Очистка при Получении
Очистка при получении
- sanitize_text_field()Очищает строку оставляя чистый текст: без HTML, лишних пробелов и т.д.
- sanitize_textarea_field()Очищает строку для textarea (при сохранении в БД).
- sanitize_key()Очищает строку, чтобы использовать её как ключ/ID.
- sanitize_url()Очищает строку, чтобы использовать её при редиректах или хранить в базе данных.
- sanitize_html_class()Очищает текст для использования в html атрибуте "class".
- sanitize_email()Очищает строку оставляет в ней символы допустимые в email.
- sanitize_file_name()Очищает название файла, заменяя " " на "_" и удаляя недопустимые символы.
- sanitize_title_with_dashes()Очищает заголовок, заменяя " " на "-".
- sanitize_mime_type()Удаляет все кроме "-+**.a-zA-Z0-9/." - символы доступные в MIME типе.
Заголовки Плагина
Заголовки ПлагинаФайл readme.txt
<?php /** * Plugin Name: Название плагина * Description: Описание плагина (140 символов) * * Plugin URI: Ссылка на страницу плагина * Author URI: Ссылка на автора * Author: Имя автора * * Text Domain: ID перевода, указывается в load_plugin_textdomain() * Domain Path: Путь до файла перевода. * * Requires at least: 5.7 * Requires PHP: 7.0 * * License: GPL2 * License URI: https://www.gnu.org/licenses/gpl-2.0.html * * Network: true - активирует плагин для всей сети * Update URI: https://example.com/link_to_update * * Requires Plugins: some-plugin, some-plugin-2 * * Version: 1.0 */ // код плагина
Плагин
Создание Плагинов
- register_activation_hook()Регистрирует функцию активации плагина.
- register_deactivation_hook()Регистрирует функцию деактивации плагина.
- register_uninstall_hook()Регистрирует функцию удаления плагина.
- plugins_url()Получает URL папки плагинов/mu плагинов (без слэша на конце).
- plugin_basename()Путь до файла плагина (от каталога плагинов).
- plugin_dir_path()Получает путь до папки плагина (со слэшем на конце).
- plugin_dir_url()Получает URL папки плагина (со слэшем на конце).
- get_plugins()Получает данные плагинов (активных и неактивных).
- get_plugin_data()Получает данные плагина из заголовков файла.
- activate_plugins()Активирует плагины.
- deactivate_plugins()Деактивирует плагины.
- is_plugin_active()Проверяет активен ли плагин. Работает только в админке.
<?php if( ! defined('WP_UNINSTALL_PLUGIN') ) exit; // проверка пройдена успешно. Начиная от сюда удаляем опции и все остальное. delete_option( 'plug_option' );
Script и Style
Функции Script и Style
- wp_register_script()Регистрирует js файл.
- wp_enqueue_script()Регистрирует и подключает js файл.
- wp_dequeue_script()Удаляет файл из очереди на вывод.
- wp_add_inline_script()Добавляет JS код к зарегистрированному скрипту.
- wp_deregister_script()Отменяет регистрацию файла.
- wp_script_add_data()Добавляет данные скрипту. Пример: скрипт только для «IE 6», «lt IE 9».
- wp_localize_script()Добавляет данные перед указанным скриптом.
- wp_script_is()Был ли файл зарегистрирован/ожидает вывода/выведен.
- wp_register_style()Регистрирует css файл.
- wp_enqueue_style()Регистрирует и подключает css файл.
- wp_dequeue_style()Удаляет файл из очереди на вывод.
- wp_add_inline_style()Добавляет стили прямо в html документ.
- wp_deregister_style()Отменяет регистрацию файла.
- wp_style_add_data()Добавляет данные стилям. Пример: стили только для «IE 6», «lt IE 9».
- wp_style_is()Был ли файл зарегистрирован/ожидает вывода/выведен.
add_action( 'wp_enqueue_scripts', 'add_my_scripts' ); // Фронт add_action( 'admin_enqueue_scripts', 'add_my_scripts' ); // Админка add_action( 'login_enqueue_scripts', 'add_my_scripts' ); // wp-login.php function add_my_scripts(){ if ( ! wp_script_is( 'my-script', 'enqueued' ) ) { // Cкрипт my-script не добавлен в очередь } if ( ! wp_style_is( 'my-style', 'registered' ) ) { // Стили my-style не зарегистрированы } wp_enqueue_script( 'my-script', 'src', ['deps'], '1.0', 'in_footer' ); wp_enqueue_style( 'my-style', 'src', ['deps'], '1.0', 'all' ); wp_enqueue_style( 'theme-style', get_stylesheet_uri() ); // theme style.css wp_localize_script( 'my-script', 'myajax', [ 'ajaxurl' => admin_url( 'admin-ajax.php' ) ] ); wp_script_add_data( 'my-script', 'conditional', 'lt IE 9' ); wp_style_add_data( 'my-style', 'conditional', 'lt IE 9' ) wp_add_inline_script( 'my-scripts', 'alert("Hello!");' ); wp_add_inline_style( 'my-style', ' .mycolor{ background: #fff; } '); wp_deregister_script( 'my-script' ); wp_deregister_style( 'my-style' ); }
Функции Хуков
Как работают хуки в WordPressХронология выполнения событий (хуков)
- add_action()Вешает функцию на событие.
- remove_action()Удаляет функцию у события.
- did_action()Получает число, сколько раз было выполнено событие.
- do_action()Создает событие.
- do_action_ref_array()Создает событие. Аргументы передаются массивом.
- has_action()Проверяет повешена ли функция на событие.
- current_action()Получает название текущего события.
- doing_action()Проверяет обрабатывается ли событие в текущий момент.
- remove_all_actions()Удаляет все функции прикрепленные к событию.
- add_filter()Вешает функцию на фильтр.
- remove_filter()Удаляет функцию у фильтра.
- apply_filters()Создает фильтр.
- apply_filters_ref_array()Создает фильтр. Аргументы передаются массивом.
- has_filter()Проверяет повешена ли функция на фильтр.
- current_filter()Получает название текущего фильтра.
- doing_filter()Проверяет обрабатывается ли фильтр в текущий момент.
- remove_all_filters()Удаляет все функции прикрепленные к фильтру.
function my_filter_function( $str ){ return 'Hello '. $str; } // Прикрепим функцию к фильтру add_filter( 'my_filter', 'my_filter_function' ); // Вызов фильтра echo apply_filters( 'my_filter', 'John' ); //> Hello John
// Cоздадим функцию для события function my_action_function( $text ){ echo 'Событие my_action сработало сейчас.'; } // Прикрепим функцию к событию my_action add_action( 'my_action', 'my_action_function' ); // Вызов события do_action( 'my_action' ); //> Событие my_action сработало сейчас.
Локализация (перевод)
Фукнции ЛокализацииПереводы в WordPress
- __()Получает перевод строки.
- _e()Выводит перевод строки.
- _n()Получает перевод строки после числа.
- esc_attr__()Получает перевод строки + esc_attr().
- esc_attr_e()Выводит перевод строки + esc_attr().
- esc_html__()Получает перевод строки + esc_html().
- esc_html_e()Выводит перевод строки + esc_html().
- _x()Получает перевод строки для контекста.
- _ex()Выводит перевод строки для контекста.
- _nx()Получает перевод строки после числа для контекста.
- date_i18n()Получает переведенную дату. Локализация для date().
- determine_locale()Получает локаль сайта, подходящую для текущего запроса.
- get_locale()Получает локаль сайта. Пр: en_US.
- get_user_locale()Получает локаль юзера.
- switch_to_locale()Переключает локаль сайта.
- is_locale_switched()Проверяет была ли использована switch_to_locale().
- load_plugin_textdomain()Загружает .mo файл из папки плагина.
- load_muplugin_textdomain()Загружает .mo файл из папки MU плагина.
- load_theme_textdomain()Загружает .mo файл из папки темы.
- load_child_theme_textdomain()Загружает .mo файл из папки дочерней темы.
- load_textdomain()Загружает указанный .mo файл из любой папки.
- is_textdomain_loaded()Проверяет загружен ли .mo файл.
- unload_textdomain()Выгружает загруженный .mo файл.
Условные теги (типов страниц и запросов)
if( is_single() ){ // страница записи }
- wp_doing_ajax()Сработает при AJAX запросе в WordPress.
- wp_doing_cron()Сработает при запросе к Крону WordPress.
- is_ssl()Сработает для протокола HTTPS (SSL).
- is_front_page()Главная страница сайта.
- is_home()Страница постов (или Главная страница сайта).
- is_single()Страница записи любого типа кроме: attachment и page.
- is_singular()Страница записи любого типа.
- is_page()Страница "Постоянной страницы".
- is_page_template()Используется ли для страницы файл шаблона.
- is_attachment()Страница вложения.
- is_search()Страница результатов поиска.
- is_archive()Страница архива: рубрика, метка, автор, дата.
- is_category()Страница категории.
- is_tag()Страница метки.
- is_tax()Страница записей пользовательской таксономии.
- is_post_type_archive()Страница записей произвольного типа.
- is_author()Страница с постами автора.
- is_date()Страница архива по дате.
- is_year()Страница архива "Записи за год".
- is_month()Страница архива "Записи за месяц".
- is_day()Страница архива "Записи за день".
- is_time()Страница архива "Записи за час, минуту, секунду".
- is_paged()Страница пагинации.
- is_404()Страница "Не найдено".
- is_preview()Страница предпросмотра записи.
- is_feed()Страница Фида.
- is_admin()Админ-панель.
- is_network_admin()Раздел админки "Управление сетью" сайтов в Мультисайт.
- is_blog_admin()Раздел админки отдельного сайта в Мультисайт.
- is_user_admin()Раздел админки "Пользователь" в Мультисайт.
- is_customize_preview()Страница кастомайзера в админке.
- is_robots()Запрос к файлу robots.txt.
- is_embed()Страница встраивания записи.
- is_comment_feed()Страница фида комментариев.
- is_trackback()Страница пингов (trackback).
Условные теги (остальные)
Все Условные теги
if( is_user_logged_in() ){ // юзер авторизован }
- is_user_logged_in()Авторизован ли пользователь.
- have_comments()Есть ли на странице комментарии для вывода.
- comments_open()Открыто ли комментирование у записи.
- has_category()Находится ли запись хоть в одной из рубрик.
- has_tag()Находится ли запись хоть в одной из меток.
- has_term()Находится ли запись хоть в одном термине таксономии.
- has_excerpt()Есть ли у текущего поста отрывок (цитата, короткое описание).
- is_nav_menu()Существует ли меню (указываем ID, слаг или название).
- has_nav_menu()Имеет ли зарегистрированная область меню прикрепленное меню.
- has_shortcode()Есть ли в переданном тексте указанный шоткод.
- shortcode_exists()Зарегистрирован ли указанный шоткод.
- in_category()Находится ли пост в рубрике.
- in_the_loop()Находимся ли мы в цикле перебора записей.
- is_main_query()Выполняется ли действие в главном цикле WordPress.
- is_active_sidebar()Есть ли в области для виджетов есть хоть один виджет.
- is_child_theme()Используется ли дочерняя тема.
- is_dynamic_sidebar()Включены ли сайдбары для темы и есть ли хоть один виджет.
- is_local_attachment()Является ли переданный URL страницей вложения.
- is_multisite()Включен ли режим Мультисайт.
- is_new_day()Отличается ли текущая дата от предыдущей (в цикле).
- is_post_type_hierarchical()Является ли тип записи древовидным.
- is_taxonomy_hierarchical()Древовидная ли таксономия.
- is_sticky()Является ли запись прилепленной.
- pings_open()Разрешено ли записи получать пинги.
- post_exists()Есть ли запись с указанным заголовком (post_title).
- taxonomy_exists()Существует ли указанная таксономия.
- post_password_required()Защищена ли запись паролем и правильный ли пароль.
- term_exists()Существует ли элемент таксономии (вернет ID терма).
- cat_is_ancestor_of()Дочерняя ли рубрика к другой (все уровни вложенности).
- term_is_ancestor_of()Дочерний ли термин к другому (все уровни вложенности).
- wp_attachment_is()Является ли вложение: картинкой, аудио или видео.
- wp_attachment_is_image()Является ли запись вложением-картинкой.
- is_header_video_active()Нужно ли показать видео заголовка на странице.
- has_custom_header()Установлена ли картинка/видео для шапки темы.
- wp_is_mobile()С мобильного ли устройства просматривается сайт.
- wp_is_post_autosave()Является ли запись авто-сохранением.
- wp_is_post_revision()Является ли запись ревизией (редакцией).
WP CLI
Core:
# Download WordPress wp core download --locale=ru_RU # Generate wp-config.php: wp core config --dbname=NAME --dbuser=USER --dbpass=PASS --dbprefix=wp_ # Create DB (based on wp-config.php) wp db create # Install WP to created DB wp core install --url=example.com --title=Example --admin_user=supervisor \ --admin_email=info@example.com --admin_password=strongpassword
Post:
# List posts: wp post list # Edit post: wp post edit 1 # Post update: wp post update 1 --post_title="Your New title..." # Create posts: wp post create --post_status=publish --post_title="Second Post" --edit
Post meta:
# See all metas of post 18: wp post meta list 18 # Get post meta value: wp post meta get 18 meta_name # Delete post meta by key: wp post meta delete 18 meta_name
DB:
# Create DB dump wp db export - --add-drop-table --default-character-set=utf8mb4 | gzip > ./db_backup-$(date +%Y-%m-%d-%H%M%S).sql.gz # Insert data from DB dump to DB wp db import db_backup-2022-01-20.sql # Login WordPress db: wp db cli # Run SQL Query: wp db query "SELECT user_login, ID FROM wp_users;" # Optimize db: wp db optimize
Update:
# Update WordPress wp core update # Update all plugins: wp plugin update --all
Themes & Plugins
# List plugins: wp plugin list # Search plugin: wp plugin search yoast # Install plugin: wp plugin install yoast # List installed themes: wp theme list # Install theme: wp theme install twentyone # Activate theme: wp theme activate twentyone