Как измененить длину excerpt в зависимости от категории

02.12.2009, категория - Рецепты
Как измененить длину excerpt в зависимости от категории

Вполне вероятно, что вы сталкивались с проблемой, когда ваш шаблон или сайт имеет сложную структуру и категории, внутренние страницы имеют разный дизайн…

Так же не всегда хочется использовать для таких дел плагины, если вы понимаете о чем я говорю и испытываете потребность в этом, тогда этот рецепт для вас :)

Просто вставьте код, написанный ниже в functions.php:

1
2
3
4
5
6
7
8
add_filter('excerpt_length', 'my_excerpt_length');
function my_excerpt_length($length) {
    if(in_category(14)) {
        return 13;
    } else {
        return 60;
    }
}

Соответственно подобрать необходимое количество слов для отображения можно для любой категории – in_category (id необходимой категории), если категорий несколько, то код выглядит подобным образом:

1
2
3
4
5
6
7
8
9
10
11
12
add_filter('excerpt_length', 'my_excerpt_length');
function my_excerpt_length($length) {
    if(in_category(14)) {
        return 13;
    } elseif(in_category(13)) {
        return 20;
    } elseif(in_category(5)) {
        return 40;
    } else {
        return 50;
    }
}