Вход • Регистрация

Вывод дополнительной информации в списке новостей и в самой новости

  • 15 мая 2014 г.
  • В новостях (в списке новостей и самой новости) нужно вывести:
    1. количество просмотров (в самой новости есть, а в списке новостей нет)
    2. Количество комментариев
    3. Автора новости
    4. Категорию, к которой относится новость

    Подскажите пожалуйста, как это реализовать?

    Я новичок в этой системе еще. Решил попробовать по аналогии пойти. Увидел, что количество просмотров в самой новости есть, глянул в news.view.id.php и нашел где выводится
    //счетчик просмотров
    if(! empty($result["counter"]))
    {echo '<div class="news_counter">'.$this->diafan->_('Просмотров').': '.$result["counter"].'</div>';}

    Вставил тоже самое в news.view.list.php - и ничего не происходит!
    • 15 мая 2014 г.
    • Иван, а смысл в авторе новости, если с фронтэнда нет возможности постить новости?
      • 15 мая 2014 г.
      • Смысл в том, что это сайт журнала будет, журналистам будет предоставлен доступ для добавления статей и новостей. Вот и необходимость отображения имени автора новости.
    • 15 мая 2014 г.
    • В списке новостей надо result менять на row
      • 15 мая 2014 г.
      • понял, но не помогло что то. заменил на row, но все равно не выводит
        вставил echo $row["counter"]; ... и ничего.
  • 16 мая 2014 г. , редакция: 16 мая 2014 г.
  • В общем очень маленькие сдвиги, но есть.
    Порылся на форуме еще разок и нашел вот тут про вывод количества комментариев только у товаров. Применил это для новостей:
    добавил эту строку в news.model там где генерируются данные для новости самой
    Код
    $this->result["author"] = DB::query_result("SELECT COUNT(id) FROM {users} WHERE module_name='news' AND element_id=%d AND trash='0'", $row["id"]);

    и в самой новости в new.view.id.php вывел вот так
    Код
    $result["comments_cnt"]


    Заработало!
    Попробовал тоже самое сделать в news.model там где генерируются данные для СПИСКА новостей, и вывести в new.view.list.php через
    Код
    $result["comments_cnt"]
    , но ничего не вышло! пишет количество - 0.
    Если вместо result указать row, но ошибка Undefined index: comments_cnt
  • 16 мая 2014 г.
  • Странно как то, но в самом начале когда начал работать с новостями, при просмотре самой новости вроде как выводилось у меня количество просмотров. Пока копался с количеством комментариев, смотрю уже нет просмотров!
    В news.view.id.php где выводится количество просмотров оставил так:
    Код
    echo '<div class="news_counter">'.$this->diafan->_('Просмотров').': '.$result["counter"].'</div>';


    т.е. убрал условие if(! empty($result["counter"])) ...

    Включил режим разработчика... смотрю новость, а он выдает мне - [ERROR#1] Просмотров:
    и внизу сообщение "Undefined index: counter"

    Странно как то, решил может я что то перекопал не то случайно... поставил на локалке заново полностью систему.. добавил пару новстей, и тоже самое! хотя в админке указано количество просмотров.

    В чем дело может быть?

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум