Пользователи GetSimple CMS имели возможность отслеживать историю изменения содержания веб-сайта по дате последнего сохранения страниц. По отзывам пользователей этого было мало, поэтому GetSimple Extended CMS расширяет число сохраняемых данных, предназначенных для отслеживания истории изменения содержания страниц, настроек веб-сайта и пользователя.
Дата создания страницы
Поле страницы pubDate
в GetSimple CMS предназначено для хранения даты публикации. Его значение устанавливается при сохранении страницы через редактор в панели администрирования. Когда страница создана и сохранена в первый раз, дата в поле pubDate
соответствует времени создания страницы. При следующем сохранении это значение перезаписывается, что делает невозможным получение информации о возрасте страницы.
Поэтому в GetSimple Extended CMS к стандартным полям страницы добавлено поле creDate
. Это поле хранит дату создания страницы - дату первого сохранения. При последующих сохранениях значение поля creDate
не изменяется.
Следующий фрагмент кода показывает посетителю веб-сайта историю изменения страницы - когда страница была создана и обновлена в последний раз:
<?php
global $data_index;
echo '<p><strong>Page was created:</strong> ' . shtDate($data_index->creDate) . '.</p>';
echo '<p><strong>Last update</strong>: ' . shtDate($data_index->pubDate) . '.</p>';
Вывести информацию о возрасте страницы в днях можно так:
<?php
global $data_index;
$origin = date_create($data_index->creDate);
$target = date_create('now');
$interval = date_diff($origin, $target);
echo $interval->format('Page was created %a days ago.');
Даты создания и изменения веб-сайта
Хранение дат создания и изменения веб-сайта в GetSimple CMS не было предусмотрено. Поэтому в GetSimple Extended CMS к стандартным полям данных веб-сайта добавлены поля:
DATECREATED
- время создания веб-сайта;DATEMODIFIED
- время последнего изменения веб-сайта.
Первоначальные значения полей устанавливаются во время установки системы управления контентом. В последующем значение поля DATECREATED
не изменяется, а значение поля DATEMODIFIED
обновляется при:
- сохранении настроек веб-сайта;
- создании и сохранении страниц;
- удалении и восстановлении страниц;
- изменении порядка страниц меню через Menu Manager.
Авторы плагинов могут принудительно вызвать обновление значения поля DATEMODIFIED
вызовом функции set_site_last_update()
.
В следующем фрагменте кода поле DATEMODIFIED
используется для вывода информации о последнем обновлении веб-сайта:
<?php
global $dataw;
echo '<p><strong>Website was last updated:</strong> ' . shtDate($dataw->DATEMODIFIED) . '</p>';
Используя поле DATECREATED
, можно вывести информацию о копирайте веб-сайта:
<?php
global $dataw;
$origin = date('Y', strtotime($dataw->DATECREATED));
$current = date('Y');
echo '<p>© ' . (($origin == $current) ? $origin : $origin . ' - ' . $current) . ' <strong>' . get_site_name(false) . '</strong>. All Rights Reserved</p>';
Важно! В текущей реализации значение поля DATEMODIFIED
хранит дату последнего изменения применительно ко всему веб-сайту - и к его настройкам, и к контенту. В настоящее время это подлежит обсуждению. Возможно, к первому бета релизу поле DATEMODIFIED
будет хранить только дату последнего сохранения настроек веб-сайта, а дата последнего изменения контента будет храниться иным способом.
Даты создания и изменения профиля пользователя
Аналогичные рассмотренным полям данных веб-сайта, добавлены одноимённые поля для профиля пользователя. Первоначальные значения полей устанавливаются при установке системы управления контентом и создании пользователя. В последующем значение поля DATECREATED
не изменяется, а значение поля DATEMODIFIED
обновляется при сохранении настроек веб-сайта и профиля пользователя.
Важно! Запланирован пересмотр и разделение управления настройками веб-сайта и профилем пользователя, поэтому в будущем значения поля DATEMODIFIED
для пользователя будет обновляться только при сохранении настроек профиля пользователя.