// инициализация дефолтом
$desc = __( 'Test', 'default' );
// роутинг
// 1 случай
if(is_singular()){
if( !empty( $post -> post_excerpt ) ) {
$desc = apply_filters( 'the_excerpt', $post -> post_excerpt );
}
}
// 2 случай
и т.д.
// форматирование
$desc = str_replace( array( "\n", "\r", "\t" ), ' ', $desc );
$desc = strip_shortcodes( $desc );
$desc = strip_tags( $desc );
$desc = substr( $desc, 0, 300 );
// вывод
echo '<meta name="description" content="' . $desc . '" />';
А вот собственно суть вопроса, объясните пожалуйста, есть ли какой нибудь смысл или правило относящееся к WordPress, оборачивать переменные в функцию в файле functions.php, а после, выводить функцию вместо the_posts_pagination?