dimayakovlev.ru


Что нового в GetSimple Extended CMS: Дата создания страницы. Даты создания, изменения веб-сайта и профиля пользователя

Пользователи 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>&copy; ' . (($origin == $current) ? $origin : $origin . ' - ' . $current) . ' <strong>' . get_site_name(false) . '</strong>. All Rights Reserved</p>';

Важно! В текущей реализации значение поля DATEMODIFIED хранит дату последнего изменения применительно ко всему веб-сайту - и к его настройкам, и к контенту. В настоящее время это подлежит обсуждению. Возможно, к первому бета релизу поле DATEMODIFIED будет хранить только дату последнего сохранения настроек веб-сайта, а дата последнего изменения контента будет храниться иным способом.

Даты создания и изменения профиля пользователя

Аналогичные рассмотренным полям данных веб-сайта, добавлены одноимённые поля для профиля пользователя. Первоначальные значения полей устанавливаются при установке системы управления контентом и создании пользователя. В последующем значение поля DATECREATED не изменяется, а значение поля DATEMODIFIED обновляется при сохранении настроек веб-сайта и профиля пользователя.

Важно! Запланирован пересмотр и разделение управления настройками веб-сайта и профилем пользователя, поэтому в будущем значения поля DATEMODIFIED для пользователя будет обновляться только при сохранении настроек профиля пользователя.