.category-description {
margin: 1.5em 0 2.5em;
padding: 1.2em 1.8em;
background: #f8f9fa;
border-left: 4px solid #0073aa;
border-radius: 4px;
line-height: 1.6;
}
.category-description p:last-child {
margin-bottom: 0;
}
';
*/
}, 20);
/**
* Основной вывод описания
*/
function scd_show_category_description() {
// Показываем только на страницах архивов категорий (можно расширить)
if (!is_category() && !is_tag() && !is_tax()) {
return;
}
// Получаем описание
$description = get_the_archive_description();
if (empty($description)) {
return;
}
// Можно обернуть в свой класс или изменить тег
$output = '
';
$output .= $description;
$output .= '
';
echo $output;
}
/**
* Вариант А — после заголовка архива (самый популярный)
*/
add_action('woocommerce_archive_description', 'scd_show_category_description', 15); // для woocommerce
add_action('generate_archive_title', 'scd_show_category_description', 20); // GeneratePress
add_action('astra_archive_header', 'scd_show_category_description', 15); // Astra
// Универсальный способ — если тема не использует специальные хуки
add_action('wp_head', function() {
if (is_category() || is_tag() || is_tax()) {
add_filter('the_content', 'scd_inject_description_to_content', 9);
}
});
function scd_inject_description_to_content($content) {
// Показываем только в начале основного контента архива
if (!is_main_query() || !in_the_loop()) {
return $content;
}
remove_filter('the_content', 'scd_inject_description_to_content', 9);
$description = get_the_archive_description();
if (empty($description)) {
return $content;
}
return '' . $description . '
' . $content;
}
/**
* Вариант Б — короткий код [category_description]
* Можно вставить в любой блок / виджет / шаблон
*/
add_shortcode('category_description', function() {
return get_the_archive_description();
});