Как удалить ненужные страницы со страницы «Карта сайта»

  Автор:
  3818
Как удалить ненужные страницы со страницы "Карта сайта"

Уф, давно я не писала на блоге. В связи с выходом новой версии шаблона AB-Inspiration 5.0, выпуска нового плагина «Входная страница», и обновление плагина «Живая форма + Слайдер» конец года был горячим и работы поприбавилось :). Но это приятные хлопоты. Спасибо всем, кто активно начал тестировать все три новшества, спасибо за Ваши замечания и пожелания. Я старалась тут же исправлять или добавлять новые фишки.

Сегодня хочу рассказать о том, как убирать ненужные страницы с «Карты сайта». Этот функционал я встроила по многочисленным просьбам, и он теперь доступен пользователям шаблона AB-Inspiration с версии 5.6.

Зачем удалять страницы со страницы «Карта сайта»?

Больше всего запросов было на удаление страниц «Перенаправление», и первое, что я хотела сделать, просто прописать в шаблоне «Карта сайта» не включать страницы созданные с помощью шаблона «Перенаправление».

Но потом подумала, что могут быть и другие причины исключить какую-либо страницу с карты сайта. Так я решила встроить дополнительное «Мета поле» под редактором страниц, где Вы можете просто отметить галочкой те страницы, которые хотите исключить.

karta-except

Немного подробнее о том, что я сделала в шаблоне, для тех, кому интересно, как я это сделала или для тех, кто хочет реализовать что-то подобное самостоятельно.

Для исключения определенных страниц из страницы «Карта сайта» я внесла изменения в 2 файла в шаблоне AB-Inspiration:

1. function.php  — добавила метабокс к страницам


add_action( 'add_meta_boxes', 'sitemap_exclude_page' );
function sitemap_exclude_page()
{
add_meta_box( 'sitemap-meta-box-id',  'Исключить из карты сайта', 'meta_box_callback', 'page',  'normal',  'high' );
}
function meta_box_callback( $post )
{
$values = get_post_custom( $post->ID );
$selected = isset( $values['sitemap_exclude_page'] ) ? $values['sitemap_exclude_page'][0] : '';
wp_nonce_field( 'my_meta_box_nonce', 'meta_box_nonce' );
?>
<p>
<input type="checkbox" name="sitemap_exclude_page" id="sitemap_exclude_page" value="1" <?php if( $selected == 1 ) { ?>checked="checked"<?php } ?> /> Исключить страницу из карты сайта<br>
</p>
<?php }

add_action( 'save_post', 'sitemap_exclude_page_save' );
function sitemap_exclude_page_save( $post_id ) {
global $post;
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) {
return;
if( !isset( $_POST['meta_box_nonce'] ) || !wp_verify_nonce( $_POST['meta_box_nonce'], 'my_meta_box_nonce' ) ) return;
if( !current_user_can( 'edit_post' ) ) return;
};
update_post_meta( $post_id, 'sitemap_exclude_page', $_POST['sitemap_exclude_page'] );
}

2. sitemap.php  — добавила ID страниц


<?php
global $wpdb;
$sep = '';

// запрос к базе данных, выбор ID страниц исключенных из карты сайта
$sitemap = $wpdb->get_results ("
SELECT meta_id, post_id
FROM $wpdb->postmeta
WHERE meta_key = 'sitemap_exclude_page'
AND meta_value = '1'
");

//вывод всех ID страниц через запятую исключенных из карты сайта
foreach ( $sitemap as $sitema )
{
$excludesitemap .= $sep . $sitema->post_id;
$sep = ',';
}
?>

// вывод страниц на странице "Карта сайта"
<?php wp_list_pages( 'exclude='.$excludesitemap.'&depth=0&sort_column=menu_order&title_li=' ); ?>

Шаблон AB-Inspiration 5.6 уже доступен для обновления.

P.S.  Кстати, если Вы новичек и мечтаете стать, ПО НАСТОЯЩЕМУ, инфобизмесменом, в начале марта я расскажу о нашем тайном эксперименте.

Почему тайном. Все просто — просто НЕ ЛЮБЛЮ БОЛТАТЬ. Сначала дело, и если есть результат можно повторит многим,  ДЕЛЮСЬ ОПЫТОМ.

Эксперимент называется просто «Инфобизнес от новичка к профессионалу».  Результаты есть и отличные! Пришло время делится с Вами опытом.  Подробности на блоге скоро … Это будет честный рассказ …

Как удалить ненужные страницы со страницы «Карта сайта»

   12 голосов
Средняя оценка: 4.7 из 5
Вы находите данную статью полезной или интересной? Поделитесь ею, пожалуйста, с другими - просто нажмите на кнопки ниже:
Самые Важные Оповещения Блога + Четкий Комплект Ценных Подарков ДЛЯ БЛОГЕРОВ И ФРИЛАНСЕРОВ
Оставьте свой комментарий:
20 комментариев
  1. Здравствуйте, Анфиса! Спасибо за новый функционал! Обновил шаблон до версии 5.6, легко и быстро удалил из карты сайта все страницы перенаправления. В этот же день автоматически обновился и WORDPRESS до версии 4.1.1. На сайте WordPress.ORG узнал, что исправлено 21 ошибок, которые были в версии 4.1.
    Там же узнал о плагине Background Update Tester (Фон Tester Update), который тестирует сайт(блог) на предмет совместимости с обновленными версиями. Это актуально для тех, у кого не выполняется автоматическое обновление WordPress. Этот плагин выявляет проблемы, имеющиеся на блоге.

  2. Анфиса, здравствуйте! Как я рада снова получить Ваше письмо! Ваши советы всегда полезные и актуальные. Не совсем поняла, а что за страница «Перенаправлянеие»? Входная страница или что-то другое?

    • Ирина, в функционале шаблона AB-Inspiration есть несколько готовых шаблонов страниц: Карта сайта, Контакты, на всю ширину (без боковой колонки), Входная страница, Отзывы и Перенаправление.
      Шаблон Перенаправление мы используем для маскировки партнерских ссылок. Такие страница содержать только партнерскую ссылку, больше ничего. Поэтому чаще ее вообще не нужно размещать в карте сайта.

  3. Здравствуйте, Анфиса! Спасибо за новую возможность!
    Шаблон до версии 5.6 обновила и быстро удалила из карты сайта все страницы перенаправления. Вопросы есть, но подожду Вебинара.

  4. Здравствуйте Анфиса!
    Не нашел в клубе нового шаблона.
    Обновление шаблона до версии AB-Inspiration 5.6 возможно только при покупке ключа? Без ключа обновить нельзя?

    • Николай, до версии 5.6 можно обновиться только с ключом. Если у Вас еще нет ключа обратитесь, пожалуйста, в тех. поддержку по скайпу: mlmporoekt.ru

  5. Здравствуйте, Анфиса! В моей карте сайта отображаются только рубрики (без статей!). Подскажите , пожалуйста, как можно это исправить? Спасибо.

на Блоге
в Фейсбук
в Вконтакте