Задайте название страницы с помощью настраиваемого шаблона страницы.

Большинство связанных вопросов по-прежнему остаются без ответа или имеют очень мало информации. У меня есть пользовательская тема для моего сайта и использование WordPress SEO для названий.

Все страницы статей работают отлично, за исключением страниц, которые создаются с помощью шаблона, например, / take-a-dog и / dog-breeds . На этих страницах есть список записей об усыновлении и породы собак. Adopt-a-dog использует adoption-search.php в качестве шаблона и adopt-details.php для отображения отдельных результатов. Там, где собаки-породы используют breeds.php для отображения страницы пород собак, а также отдельных пород.

Я попытался добавить заголовок в header.php используя условие is_page_template('adopt-details.php') но это не работает. Я также попытался изменить functions.php но это тоже не сработало.

Он показывает название, указанное в WordPress SEO, то есть «Принять собаку, спасти жизнь». Вместо этого, если результат принятия для щенка Fodo, я хочу установить заголовок на что-то вроде: "Adoption details for " . pet_name . ", " . pet_city "Adoption details for " . pet_name . ", " . pet_city

Есть ли способ установить заголовок из шаблона страницы или задать заголовок на основе URL?

Код, который я пробовал:

 if ( ( get_permalink() == 'http://animalswecare.com/dog-breeds/' || get_permalink() == 'http://animalswecare.com/cat-breeds/' ) && uri_segment( 2 ) != '0' ) { ?><title><?php echo uri_segment( 2 ); ?></title><?php } else { ?><title><?php wp_title( '|', true, 'right' ); ?></title><?php } 

Второй вариант, который я пробовал, отключает WP SEO, когда страница adopt-detail-dog . При добавлении этого кода URL-адрес отображается как заголовок. Это нормально, если каким-то образом URL можно очистить, чтобы показать как текст.

 if ( is_page( 589 ) ) { global $wpseo_front; remove_action( 'wp_head', array( $wpseo_front, 'head' ), 1 ); ?><title>hiiiiiiiiiiiiiiiiii</title><?php } else { ?><title><?php wp_title( '|', true, 'right' ); ?></title><?php } 

Это изменяет заголовок, чтобы показывать URL страницы, но не отображает «hiiiiiiiiiiii» как заголовок.

Solutions Collecting From Web of "Задайте название страницы с помощью настраиваемого шаблона страницы."

Для пород собак я добавил следующий код на страницы шаблонов, перезаписав функции WP SEO:

 function assignPageTitle() { // To set page title global $resultarray; return $resultarray->breed_title; } if ( uri_segment( 2 ) != '0' ) { add_filter( 'wpseo_title', 'assignPageTitle' ); // WP SEO function overwritten } 

См. Список других функций WP WP.

Добавьте следующий код в файл functions.php:

 function wpse62415_filter_wp_title( $title ) { // Return a custom document title for // the my-custom-page custom page template if ( is_page_template( 'my-custom-page.php' ) ) { return 'I\'m the my-custom-page details page'; } // Otherwise, don't modify the document title return $title; } add_filter( 'wp_title', 'wpse62415_filter_wp_title' );