Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Вопрос по кастомизации {content}

Тема в разделе "Вопросы- ответы", создана пользователем volodec, 3 апр 2017.

03.04.17 в 09:12
04.04.17 в 10:29
6
1.127
2
  1. TopicStarter Overlay
    volodec

    volodec Посетитель

    Регистрация:
    17 фев 2017
    Сообщения:
    60
    Лучших ответов:
    0
    Рейтинги:
    +10 / 4 / -0
    Приветствую. Прошу помочь тех кто в курсе, как и где мне поправить код чтобы исключить из вывода новостей, новости определенной категории, при этом чтобы пагинация была корректной. Тег {custom} прошу не предлагать, с ним тег {sort} не работает. Буду примного благодарен.

    В общем нашел. Оставлю здесь.
    Ищем:
    Код:
    $sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date . " ORDER BY " . $fixed . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];
                        $sql_count = "SELECT COUNT(*) as count FROM " . PREFIX . "_post WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date;
    
    выше вставляем:
    PHP:
    $not_allow_cats_custom = array(30,31);//перечень ненужных на вывод категорий
                        
    $stop_list "category NOT REGEXP '[[:<:]](" implode '|'$not_allow_cats_custom ) . ")[[:>:]]' AND ";
    DLE 11.2

    ах да, это все в /engine/engine.php
     
    #1 volodec, 3 апр 2017
    Последнее редактирование модератором: 3 апр 2017
    • Нравится Нравится x 2
  2. Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.901
    Лучших ответов:
    2
    Рейтинги:
    +444 / 70 / -0
    При переходе в эти категории 30,31, новости будут отображаться? Или новости просто не отображаются на главной (Публиковать на главной) ?
     
  3. byroot

    Забанен

    Регистрация:
    10 окт 2015
    Сообщения:
    12.297
    Лучших ответов:
    54
    Рейтинги:
    +5.204 / 74 / -0
    если сделать в секции вывода новостей на главной - то только с главной они будут удалены:
    Код:
    // ################ Новости на главной #################
     
  4. TopicStarter Overlay
    volodec

    volodec Посетитель

    Регистрация:
    17 фев 2017
    Сообщения:
    60
    Лучших ответов:
    0
    Рейтинги:
    +10 / 4 / -0
    так и есть
     
  5. Burial

    Burial Местный

    Регистрация:
    30 сен 2015
    Сообщения:
    1.901
    Лучших ответов:
    2
    Рейтинги:
    +444 / 70 / -0
    Но тогда ведь можно выполнить запрос в базу данных, чтобы снять галочку для всех новостей с определенной категории "Публиковать на главной". ?
     
  6. TopicStarter Overlay
    volodec

    volodec Посетитель

    Регистрация:
    17 фев 2017
    Сообщения:
    60
    Лучших ответов:
    0
    Рейтинги:
    +10 / 4 / -0
    Не понял, зачем снимать галочку?
     
  7. TopicStarter Overlay
    volodec

    volodec Посетитель

    Регистрация:
    17 фев 2017
    Сообщения:
    60
    Лучших ответов:
    0
    Рейтинги:
    +10 / 4 / -0
    Решение было не полным, точнее если бы вы в админке в настройках групп пользователей скрыли какую то категорию, то она все равно была бы этой группе видна. Вот более безопасное решение:
    PHP:
        $not_allow_cats_custom = array(3031);//перечень ненужных на вывод категорий

                        
    $not_allow_cats_custom = empty($not_allow_cats[0]) ? $not_allow_cats_custom array_merge($not_allow_cats$not_allow_cats_custom);
                        
    $stop_list "category NOT REGEXP '[[:<:]](" implode '|'$not_allow_cats_custom ) . ")[[:>:]]' AND ";
    Вставлять все туда же
     
Яндекс.Метрика