Нет, это невозможно с помощью крючка. Если вы посмотрите на исходный код the_title
, вы заметите, что нет никаких фильтров для аргументов before
и after
, только для функции get_the_title()
. Также нет единообразного способа, которым темы реализуют заголовки, например, они могут использовать что-то вроде the_title( '<h1>', '</h1>' );
или <h1><?php the_title(); ?></h1>
, так что это не то, чего вы можете ожидать с помощью ловушек.
Вы можете сделать это с помощью некоторого JavaScript, хотя
PHP (добавить класс к введенному элементу)
function so_title_filter( $title, $id = null ) {
if (in_the_loop()) {
$title = $title . '<p class="moveme">Custom markup!</p>';
}
return $title;
}
add_filter( 'the_title', 'so_title_filter', 10, 2 );
JS
jQuery( document ).ready( function() {
jQuery( '.moveme' ).each( function() {
jQuery( this ).insertAfter( jQuery( this ).parent() );
});
});
Кодовая демонстрация