Как не выводить пост на главной в wordpress

(Ответов: 11, Просмотров: 9213)
Страница 1 из 2 12 Последняя
  1. Гуру Аватар для skryptman
    • Регистрация: 08.06.2010
    • Сообщений: 1,576
    • Репутация: 69
    Заметил на некоторых блогах которые торгуют ссылками в ггл или ротапост что они публикуют посты которые отображаются только в категориях, на главной странице и в rss ленте не отображаются. Как это сделать на wordpress, может черех специальный плагин или еще как-то?
    • 0
  2. Allow: /index.php Аватар для DarkAngel-163
    • Регистрация: 29.07.2011
    • Сообщений: 510
    • Репутация: 124
    • Webmoney BL: ?
    PHP код:
    function removeFromHome($query) {
    if (
    $query->is_home
        {
    $query->set('cat','-ID1');}
    return 
    $query; }
    add_filter('pre_get_posts','removeFromHome');
    function 
    removeCat($query) {
    if (
    $query->is_feed || ($query->is_home && !(is_paged()))) 
        {
    $query->set('cat','-ID1');}
    return 
    $query; }
    add_filter('pre_get_posts','removeCat'); 
    Пеовый блок с главной удаляет, второй из РСС.
    Вместо ID1 ставите ID рубрики которую вам нужно удалить.

    З.Ы. код пишется в functions.php
    • 0
  3. Гуру Аватар для skryptman
    • Регистрация: 08.06.2010
    • Сообщений: 1,576
    • Репутация: 69
    А куда конкретно прописывать данный код в functions.php, или это значение не имеет? И еще, после установки данного кода посты из удаленной с главной категории будут индексироваться пс?
    • 0
  4. Опытный Аватар для redapp
    • Регистрация: 14.01.2011
    • Сообщений: 350
    • Репутация: 69
    Можно и плагином - если лень заморачиваться. Например - advanced category excluder. Настраивается за три секунды, работает как нужно :)

    Сам плагин - http://wordpress.org/extend/plugins/...gory-excluder/
    Описание на русском - http://wpnew.ru/sozdanie-bloga/razde...t-rubriku.html
    Отличный VPS по низким ценам в Германии
    • 1

    Спасибо сказали:

    skryptman(21.11.2011),
  5. Гуру Аватар для skryptman
    • Регистрация: 08.06.2010
    • Сообщений: 1,576
    • Репутация: 69
    redapp С плагином мне легче будет разобраться, спасибки.
    • 0
  6. Allow: /index.php Аватар для DarkAngel-163
    • Регистрация: 29.07.2011
    • Сообщений: 510
    • Репутация: 124
    • Webmoney BL: ?
    skryptman, без разницы куда вставлять.

    Да, конечно. Посты просто не будут на главной, а в карте сайта и в рубриках они будут присутствовать.
    Что касается времени индексации, разницы я не замечал.
    • 0
  7. Гуру Аватар для skryptman
    • Регистрация: 08.06.2010
    • Сообщений: 1,576
    • Репутация: 69
    DarkAngel-163 Я выбрал работать с плагином, тк мне с ним проще разобраться. С этими кодами пока не особо дружу.
    • 0
  8. Banned
    • Регистрация: 10.10.2011
    • Сообщений: 297
    • Репутация: 10
    DarkAngel-163 Подскажите пожалуйста. А с помощью этого кода можно реализовать вывод только одной рубрики? Скажем как - то перечислить рубрики которые не хочешь выводить?
    Последний раз редактировалось Александр Марьичев; 21.11.2011 в 09:33. Причина: орфография хромая. Исправил.
    • 0
  9. Дипломник Аватар для vadimon
    • Регистрация: 09.03.2010
    • Сообщений: 114
    • Записей в дневнике: 1
    • Репутация: 21
    Александр Марьичев, во-первых записи из нужных рубрик на главной странице можно вывести с помощью плагина Advanced Category Excluder, однако этот плагин уже давно не обновлялся, поэтому нет гарантии работоспособности его на последних версиях wordpress, а можно с помощью функции query_posts
    PHP код:
    <?php query_posts('cat=1,2,3'); ?>
    <?php 
    if (have_posts()) : ?>
    <?php 
    while (have_posts()) : the_posts(); ?>
    //Ваш код
    <?php endwile?>
    перед выводом осовного цикла указываете ID категорий, записи из которых нужно выводить на главной странице.
    Последний раз редактировалось vadimon; 21.11.2011 в 09:46.
    • 0
  10. Allow: /index.php Аватар для DarkAngel-163
    • Регистрация: 29.07.2011
    • Сообщений: 510
    • Репутация: 124
    • Webmoney BL: ?
    Александр Марьичев, да, просто ставится ID рубрики без минуса.

    Тоесть, например, если нужна только рубрика с ID = 50
    PHP код:
    function removeFromHome($query) { 
    if (
    $query->is_home)  
        {
    $query->set('cat','50');} 
    return 
    $query; } 
    add_filter('pre_get_posts','removeFromHome'); 
    function 
    removeCat($query) { 
    if (
    $query->is_feed || ($query->is_home && !(is_paged())))  
        {
    $query->set('cat','50');} 
    return 
    $query; } 
    add_filter('pre_get_posts','removeCat'); 
    • 1

    Спасибо сказали:

Страница 1 из 2 12 Последняя

Похожие темы

Темы Раздел Ответов Последний пост
Как лучше выводить статью? Небольшой анонс или просто картинку?
Общие вопросы поисковой оптимизации 0 30.10.2011 20:48
Как не выводить определенные записи на главной и в RSS
Web программирование 7 23.07.2011 13:59
Плагин wordpress метки с rel="nofollow" если только один пост в ней
Софт, скрипты, сервисы 9 26.07.2010 17:22
Короткий пост, длинный пост. Какой должна быть длина поста.
Дайджест блогосферы 0 23.02.2010 01:56

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры