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

Календарь новостей

  • 04 октября 2010 г.
  • Я видел много сайтов с календарем новостей на сайте. Календарь выводит все-все месяца, включая те, где новостей нет.
    Как организовать появление ссылки на дате календаря только в случае наличия новости в эту дату?
    • 04 октября 2010 г.
    • Календарь в diafan.CMS действительно выводит все новости года (за исключением тех, что еще не наступили). Но ссылки стоят только на тех, где есть новости. Если нужно скрыть "пустые" месяцы, то это легко сделать в файле modules/news/news.model.php строки 292-302:
      вместо:
      Код
      $result["rows"][$Ye]["months"][]=(diafan_result(diafan_query("SELECT COUNT(id) FROM {news}"
      ." WHERE act"._LANG."='1' "
      ." AND trash='0'"
      ." AND created>'%d'"
      ." AND created<='%d'"
      ,mktime(0,0,0,$num,1,$Ye)
      ,mktime(0,0,0,$num,31,$Ye)
      ))
      ?'<a href="'.BASE_PATH_HREF.$this->diafan->rewrite.'/year'.$Ye.'/month'.$num.'/">'.$val.'</a>'
      :$val
      );

      написать:
      Код
      if(diafan_result(diafan_query("SELECT COUNT(id) FROM {news}"
      ." WHERE act"._LANG."='1' "
      ." AND trash='0'"
      ." AND created>'%d'"
      ." AND created<='%d'"
      ,mktime(0,0,0,$num,1,$Ye)
      ,mktime(0,0,0,$num,31,$Ye)
      )))
      {
      $result["rows"][$Ye]["months"][]='<a href="'.BASE_PATH_HREF.$this->diafan->rewrite.'/year'.$Ye.'/month'.$num.'/">'.$val.'</a>';
      }

      рецепт для версии 4.2
      Эта шаблонная функция кэшируется, поэтому нужно временно отключить кэширование, чтобы увидеть результат.

Новости

  • 17 января, пятница
  • В преддверии 2025 года была выпущена сборка 7.2.5, которая не приносит радикальных изменений в функциональности, но способствует повышению стабильности работы системы и расширению возможностей облачного сервиса для создания сайтов.
  • 18 июня 2024 г.
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля 2024 г.
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.