body_class()

body_class( string|string[] $css_class = ” )

Опис

Виводить класи для тегу body. По дефолту, на різних сторінках при використанні цієї функції ви отримаєте різні класи в body, які додає сам WordPress і за допомогою яких ви можете по іншому стилізувати контент на сторінці або використовувати JS. Загалом багато варіантів, але суть в тому, що на усіх ваших проектах будуть такі класи додані з коробки. Список усіх класів тут

Parameters

  • $css_class: (string) Optional
    Список класів розділений пробілом
    Default Value: ”

Приклади використання

<?php 
// Стандартний варіант використання 2х ш більше класів ?>
<body <?php body_class( 'wp-teka wp-teka-custom-something' ); ?>>

<?php 
// Як прибрати якийсь клас + умовний тег
add_filter('body_class', function (array $classes) {
    if (in_array('class-to-remove', $classes)) {
      unset( $classes[array_search('class-to-remove', $classes)] );
    }
  return $classes;
});

//Як додати клас + умовний тег
add_filter( 'body_class', 'custom_class' );
function custom_class( $classes ) {
	if ( is_page_template( 'page-example.php' ) ) {
        $classes[] = 'example';
    }
	return $classes;
}

Список класів

Список класів, що додається до body залежно від того які умови спрацьовують. Напишіть в коментарях, якщо я щось пропустив

УмоваКласи, що додаються
is_rtl()rtl
is_front_page()home
is_home()blog
is_search() + є результати пошукуsearch search-results
is_search() + нічого не знайденоsearch search-no-results
is_attachment()attachment
is_404()error404
is_single()single postid-{ID поста}
is_single() + це сторінка постаsingle-post
is_single() + це сторінка кастомного типа постаsingle-{тип поста} // ex: single-portfolio
is_single() + це сторінка певного форматуsingle-format-{формат}
is_single() + формат не присвоєнийsingle-format-standard
is_single() + це сторінка вкладень (додатків / attachment)attachment single-attachment attachmentid-{ID} attachment-mime-type
is_archive()archive
is_archive() + це архів по датіdate
is_archive() + це архів певного пост тайпу.post-type-archive post-type-archive-{тип поста}
is_archive() + це архів постів певного автораarchive author author-{имя пользователя}
is_archive() + це архів певної категоріїarchive category category-{ярлык категории}
is_archive() + це архів певного тегуarchive tag tag-{ярлык метки}
is_archive() + це архів певної таксономіїtax-{таксономии} term-{ярлык элемента} term-{ID}
is_archive() + це архів певного формату постівtax-post_format term-post-format-{формат} term-{ID}
is_page()page page-id-{ID страницы}
is_page() + сторінка є батьківськоюpage-parent
is_page() + сторінка є дочірньою до якоїсь сторінкиpage-child parent-pageid-{ID}
is_page() + є присвоєний шаблон сторінкиpage-template page-template-{директория}{имя файла}-php
is_page() + немає присвоєного шаблону сторінки ( дефолтний )page-template-default
is_user_logged_in()logged-in
is_admin_bar_showing()admin-bar no-customize-support
Якщо використовується кастомний фонcustom-background
is_paged()paged paged-{номер страницы}
is_paged() + архів постаsingle-paged-{номер страницы}
is_paged() + архів сторінкаpage-paged-{номер страницы}
is_paged() + сторінка архівів категоріїcategory-paged-{номер страницы}
is_paged() + сторінка архівів тегуtag-paged-{номер страницы}
is_paged() + сторінка архівів по датіdate-paged-{номер страницы}
is_paged() + сторінка архівів автораauthor-paged-{номер страницы}
is_paged() + сторінка результатів пошукуsearch-paged-{номер страницы}
is_paged() + сторінка архіву кастомного пост тайпуpost-type-paged-{номер страницы}

Disclaimer: Наразі шаблон сторінки трошки поламаний, скоро пофікшу. І давай будемо на "ти". Якщо ти дочитав до цього моменту і не знайшов те, що шукав в описі саме цієї функції - напиши мені в телеграм @codelibry щоб я це додав, а також скинь лінк того що саме ти шукав, якщо знайшов на іншому ресурсі. Дякую :)