Я только что установил cmsms 2.1.5, я только добавил новость. Однако, когда я проверяю свой сайт, он не показывает новости.
Что может помешать отображению новостей? Я не изменил никаких настроек, шаблонов или таблиц стилей.
Это может звучать как общий вопрос, но это сводит меня с ума.
Заранее спасибо.
РЕДАКТИРОВАТЬ: В отличие от того, что я упоминал ранее, что модуль новостей не работает в новой установке CMSMS, я понял, что проблема была только в том случае, когда я добавил статью новостей. Когда я добавлял статьи, они не показывались, однако показывались примеры статей, которые были там как часть установки. Какие-либо предложения?
Покопавшись на форумах CMSMS, я понял, что проблема в том, что мой HTTP-сервер и часовые пояса моей базы данных не синхронизированы. Однако новые статьи сохраняются в базе данных, но код для извлечения новостей
$db = cmsms()->GetDb();
$now = $db->DbTimeStamp(time());
$query = "SELECT mn.*, mnc.news_category_name FROM ".CMS_DB_PREFIX."module_news mn LEFT OUTER JOIN ".CMS_DB_PREFIX."module_news_categories mnc ON mnc.news_category_id = mn.news_category_id WHERE status = 'published' AND ";
$query .= "(".$db->IfNull('start_time',$db->DBTimeStamp(1))." < $now) AND ";
$query .= "((".$db->IfNull('end_time',$db->DBTimeStamp(1))." = ".$db->DBTimeStamp(1).") OR (end_time > $now)) ";
$query .= 'ORDER BY news_date DESC LIMIT 1';
$row = $db->GetRow($query);
использует функцию timeStamp. Покопавшись на форумах, я обнаружил, что это можно решить, синхронизируя http-сервер и сервер базы данных при каждом запросе. Что делается путем добавления $config['set_db_timezone']=1
в вашем конфигурационном файле, как найдено в старой конфигурации ссылка найдена Вот.
Надеюсь, это вам тоже поможет 🙂 Я буду больше копать и вернусь с точной работой этой штуки.
Других решений пока нет …