Вы здесь

Информация о последнем изменении страницы

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

Код нужно вставит в файл node.tpl.php:

<?php
$nodeid
= $node->nid;
if (isset(
$nodeid)) {
$result = db_query("
  SELECT pv.value AS last_editor, u.uid AS the_uid
  FROM node_revisions nr, users u, profile_values pv
  WHERE    nr.uid = u.uid
  AND pv.fid = 1
  AND nr.uid = pv.uid
  AND nr.nid = "
.$nodeid. "
  ORDER BY timestamp DESC
  LIMIT 1"
);
$resultset = db_fetch_object($result);
print
'Последнее изменение '
 
.format_date($changed, 'custom', "j.m.Y");}
?>

Данный код выведет сообщение следующего вида:

Последнее изменение 14.07.2007

Если нужно чтобы показывался и автор последнего изменения, то код будет выглядеть так:

<?php
$nodeid
= $node->nid;
if (isset(
$nodeid)) {
$result = db_query("
  SELECT u.name AS last_editor, u.uid AS the_uid
  FROM node_revisions nr, users u
  WHERE    nr.uid = u.uid
  AND    nr.nid = "
.$nodeid. "
  ORDER BY timestamp DESC
  LIMIT 1"
);
$resultset = db_fetch_object($result);
print
'Последние изменения внёс «<a href="user/' .$resultset->the_uid. '">'
 
.$resultset->last_editor.'</a>» '.format_date($changed, 'custom', "j.m.Y");}
?>

Данный код выведет сообщение следующего вида:

Последние изменения внёс «<a href="/user/UID">ПСЕВДОНИМ</a>» 14.07.2007