У меня проблемы с отображением выдержки из заголовка в следующей ссылке.
Если для названия следующих постов больше 30 символов, я бы хотел, чтобы он показывал «…»
Это код, который я использую для заголовков выдержки
<?php short_title('...', 25); ?>
И это код, который я использую для ссылок следующего поста
<?php next_post_link( '<span class="pn-a">%link</span>', '<span class="pn-a">%title</span>' ) ?>
Функция короткого заголовка
function short_title($after = '', $length) {
$mytitle = get_the_title();
if ( strlen($mytitle) > $length ) {
$mytitle = substr($mytitle,0,$length);
echo $mytitle . $after;
} else {
echo $mytitle;
}
}
Любая помощь?
Спасибо
Вот ты где 🙂
Измените свою функцию следующим образом, удалите эхо и просто верните значение для заголовка
function short_title_next_post($after = '', $length) {
$next = get_adjacent_post(1, '', 0);
$mytitle = $next->post_title;
if ( strlen($mytitle) > $length ) {
$mytitle = substr($mytitle,0,$length);
return $mytitle . $after;
} else {
return $mytitle;
}
}
И тогда в next_post_link просто вызовите эту функцию
next_post_link( '<span class="pn-a">%link</span>', '<span class="pn-a">' . short_title_next_post('...', 25) . '</span>' );
🙂
Других решений пока нет …