Уф, давно я не писала на блоге. В связи с выходом новой версии шаблона AB-Inspiration 5.0, выпуска нового плагина «Входная страница», и обновление плагина «Живая форма + Слайдер» конец года был горячим и работы поприбавилось :). Но это приятные хлопоты. Спасибо всем, кто активно начал тестировать все три новшества, спасибо за Ваши замечания и пожелания. Я старалась тут же исправлять или добавлять новые фишки.
Сегодня хочу рассказать о том, как убирать ненужные страницы с «Карты сайта». Этот функционал я встроила по многочисленным просьбам, и он теперь доступен пользователям шаблона AB-Inspiration с версии 5.6.
Зачем удалять страницы со страницы «Карта сайта»?
Больше всего запросов было на удаление страниц «Перенаправление», и первое, что я хотела сделать, просто прописать в шаблоне «Карта сайта» не включать страницы созданные с помощью шаблона «Перенаправление».
Но потом подумала, что могут быть и другие причины исключить какую-либо страницу с карты сайта. Так я решила встроить дополнительное «Мета поле» под редактором страниц, где Вы можете просто отметить галочкой те страницы, которые хотите исключить.
Немного подробнее о том, что я сделала в шаблоне, для тех, кому интересно, как я это сделала или для тех, кто хочет реализовать что-то подобное самостоятельно.
Для исключения определенных страниц из страницы «Карта сайта» я внесла изменения в 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. Кстати, если Вы новичок и мечтаете стать, ПО НАСТОЯЩЕМУ, инфо бизнесменом, в начале марта я расскажу о нашем тайном эксперименте.
Почему тайном. Все просто — просто НЕ ЛЮБЛЮ БОЛТАТЬ. Сначала дело, и если есть результат можно повторит многим, ДЕЛЮСЬ ОПЫТОМ.
Эксперимент называется просто «Инфо бизнес от новичка к профессионалу». Результаты есть и отличные! Пришло время делится с Вами опытом. Подробности на блоге скоро … Это будет честный рассказ …
Создать сайт для заработка с нами — легко и быстро!
За помощью обращайтесь в нашу службу поддержки 24/7
Нужен качественный хостинг для сайта на WordPress?
Рекомендую, проверенные годами, хостинг Timeweb:

а также, хостинг Beget:

Средняя оценка: 4.4 из 5






