Главная Новости

Вывод заголовков All in One SEO Pack в плагинах карт сайта.

Опубликовано: 06.09.2018

видео Вывод заголовков All in One SEO Pack в плагинах карт сайта.

Плагин seo для WordPress (установка и настройка)

Вдогонку к статье о плагине All in One SEO Pack расскажу, как использовать данные этого плагина (заголовки) в плагинах Dagon Design Sitemap Generator и PS Auto Sitemap (в генерируемых картах сайта этих плагинов будут использованы заголовки, прописанные вами в плагине All in One SEO Pack).



1 Dagon Design Sitemap Generator

Откройте файл плагина sitemap-generator.php и найдите строчку:

573 $t_out .= '<li><a href="' . get_permalink ( $post_data [ $p ] [ 'id' ] ) . '"' ;

$t_out .= '<li><a href="' . get_permalink($post_data[$p]['id']) . '"';


Настройка заголовков у карточек товаров

Вставьте перед этой строчкой код:

572 573 574 $mytitle = htmlspecialchars ( stripcslashes ( get_post_meta ( $post_data [ $p ] [ 'id' ] , '_aioseop_title' , true ) ) ) ; if ( $mytitle != '' ) { $the_title = $mytitle ; }

$mytitle = htmlspecialchars(stripcslashes( get_post_meta($post_data[$p]['id'], '_aioseop_title', true))); if ($mytitle != '') {$the_title = $mytitle;}


YouTube Отдыхает. Получайте Доход на Самонаполняемых Видео-сайтах. Урок 6.3

Этот код сработает только для записей, а для страниц надо сделать еще одно небольшое изменение в файле sitemap-generator.php . Найдите строчку:

469 $t_out .= '<li><a href="' . get_permalink ( $page_data [ $p ] [ 'id' ] ) . '"' ;

$t_out .= '<li><a href="' . get_permalink($page_data[$p]['id']) . '"';

Вставьте перед этой строчкой код:

468 469 470 $mytitle = htmlspecialchars ( stripcslashes ( get_post_meta ( $page_data [ $p ] [ 'id' ] , '_aioseop_title' , true ) ) ) ; if ( $mytitle != '' ) { $the_title = $mytitle ; }

$mytitle = htmlspecialchars(stripcslashes( get_post_meta($page_data[$p]['id'], '_aioseop_title', true))); if ($mytitle != '') {$the_title = $mytitle;}

Собственно, на этом все - теперь в карте сайта от плагина Dagon Design Sitemap Generator будут выводиться заголовки, прописанные вами в плагине All in One SEO Pack . Если вы не прописывали для какой-то записи или страницы заголовок, то будет использован обычный заголовок.

2 PS Auto Sitemap

Откройте файл плагина ps_auto_sitemap.php и найдите строчку:

233 foreach ( $category_posts as $post ) {

foreach( $category_posts as $post ) {

Вставьте после нее код:

234 235 236 $mytitle = htmlspecialchars ( stripcslashes ( get_post_meta ( $post [ 'ID' ] , '_aioseop_title' , true ) ) ) ; if ( $mytitle != '' ) { $post [ 'post_title' ] = $mytitle ; }

$mytitle = htmlspecialchars(stripcslashes( get_post_meta($post['ID'], '_aioseop_title', true))); if ($mytitle != '') {$post['post_title'] = $mytitle;}

Не забудьте, что если в этом плагине вы используете кэширование, то результаты вы сможете увидеть, только удалив файл кэша.

Такими нехитрыми хаками можно заставить эти два плагина выводить заголовки из любого другого SEO-плагина тоже. Вам достаточно лишь поменять в коде имя произвольного поля " _aioseop_title " на используемое в вашем плагине.

SEO-заголовки в RSS-ленте

Данные из All in One SEO Pack можно использовать не только в плагинах карт сайта. Например, можно генерировать RSS-ленту блога с заголовками, прописанными в All in One SEO Pack . Я об этом уже писал , но там решение было не слишком удачным, так как использовался хак движка, а хакать движок не самая лучшая идея. Так что приведу пример нормального хака, который реализуется через добавление в файл шаблона functions.php кода:

//выводим полный заголовок из All in One SEO Pack в RSS start function custom_title_rss ( $content ) { global $wp_query ; $postid = $wp_query -> post -> ID ; $rsstitle = get_post_meta ( $postid , '_aioseop_title' , true ) ; if ( $rsstitle != '' ) { $content = htmlspecialchars ( stripcslashes ( $rsstitle ) ) ; } return $content ; } add_filter ( 'the_title_rss' , 'custom_title_rss' ) ; //выводим полный заголовок из All in One SEO Pack в RSS end

//выводим полный заголовок из All in One SEO Pack в RSS start function custom_title_rss($content) { global $wp_query; $postid = $wp_query->post->ID; $rsstitle = get_post_meta($postid, '_aioseop_title', true); if($rsstitle != '') { $content = htmlspecialchars(stripcslashes($rsstitle)); } return $content; } add_filter('the_title_rss', 'custom_title_rss'); //выводим полный заголовок из All in One SEO Pack в RSS end

И опять же, этот код можно заставить работать с любым другим SEO-плагином, если изменить имя произвольного поля на используемое этим плагином.

Оба описанных хака я использую на этом сайте – и в карте сайта и в RSS-ленте у меня выводятся полные SEO-заголовки.