W tej poradzie dowiesz się, jak skrócić tytuł wpisu w WordPress do określonej liczby znaków tak, by nie uciąć ostatniego słowa. Aby tego dokonać, należy standardowy kod wyświetlający tytuł:
<php the_title(); ?>
zastąpić o wiele dłuższym, ale sprawdzającym się w boju kodzie:
<?php if (strlen(the_title('','',FALSE)) > 30) { //liczba znaków
$title_short = substr(the_title('','',FALSE), 0, 30); //liczba znaków
preg_match('/^(.*)\s/s', $title_short, $matches);
if ($matches[1]) $title_short = $matches[1];
$title_short = $title_short.' ...';
} else {
$title_short = the_title('','',FALSE);
} ?>
<?php echo $title_short ?>
Za ilość znaków odpowiadają dwie pierwsze linie. W przypadku powyżej to liczba 30. – Gdy tytuł ma 30 lub więcej znaków, zostanie skrócony do tylu słów, które łącznie nie zawierają 30 znaków. Przykład. – Jeśli tytuł brzmi „Słonie są doskonale przystosowane do życia na wolności”, skrócony on zostanie do „Słonie są doskonale…”. A wszystko dlatego, że kolejne słowo „przystosowane” przekracza owe 30 znaków, dlatego nie jest wyświetlane.