Eu usaria o is_page_template()
condicional:
if ( is_page_template( 'page-courses.php' ) ) {
// The current page uses your
// custom page template;
// do something
}
Editar
Você usaria este condicional dentro de seu retorno de chamada de filtro:
function wpse83525_filter_the_title( $title ) {
if ( is_page_template( 'page-courses.php' ) ) {
return 'Custom Title';
}
return $title;
}
add_filter( 'the_title', 'wpse83525_filter_the_title' );
Agora, para isolar somente os títulos das páginas que usam seu modelo de página, você pode aproveitar o outro parâmetro passado para the_title
: $id
. Como você sabe o ID da postagem para a qual o título está sendo filtrado, é possível consultar a _wp_page_template
post meta e garantir que ela seja igual ao seu modelo de página:
function wpse83525_filter_the_title( $title, $id ) {
if ( 'page-courses.php' == get_post_meta( $id, '_wp_page_template', true ) ) {
return 'Custom Title';
}
return $title;
}
add_filter( 'the_title', 'wpse83525_filter_the_title', 10, 2 );
Editar 2
Se você deseja segmentar a página "Cursos" especificamente, use is_page()
com a página slug 'courses'
ou o título da página 'Courses'
:
function wpse83525_filter_the_title( $title ) {
if ( is_page( 'Courses' ) ) {
return 'Custom Title';
}
return $title;
}
add_filter( 'the_title', 'wpse83525_filter_the_title' );
No entanto, eu recomendaria alterar page-courses.php
para um Modelo de página personalizada , o que tornaria todo esse processo muito mais robusto.