Вывод даты последней модификации страницы (API) — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «Используем кастомный макрос, который пропишем в ~classes/modules/custom.php, после слов: //TODO: Write your own mac…»)
 
 
(не показаны 2 промежуточные версии 2 участников)
Строка 1: Строка 1:
 
Используем кастомный макрос, который пропишем в ~classes/modules/custom.php,
 
Используем кастомный макрос, который пропишем в ~classes/modules/custom.php,
 
после слов: //TODO: Write your own macroses here
 
после слов: //TODO: Write your own macroses here
<pre>
+
<source lang="php">
 
   public function mdftime($id, $format){
 
   public function mdftime($id, $format){
 
   if ($hierarchy = umiHierarchy::getInstance()->getElement($id)){
 
   if ($hierarchy = umiHierarchy::getInstance()->getElement($id)){
Строка 9: Строка 9:
 
   return "";
 
   return "";
 
   }
 
   }
</pre>
+
</source>
 
Пример вызова маркоса:
 
Пример вызова маркоса:
 
<pre>
 
<pre>
%custom mdftime(%pid%, Y-m-d)%
+
%custom mdftime(%pid%, 'Y-m-d')%
 
</pre>
 
</pre>
  
Строка 18: Строка 18:
  
 
При написании кастомных макросов, пытаясь получить значение поля типа Дата:
 
При написании кастомных макросов, пытаясь получить значение поля типа Дата:
<pre>
+
<source lang="php">
 
$time = umiHierarchy::getInstance()->getElement($id)->getValue('publish_time');
 
$time = umiHierarchy::getInstance()->getElement($id)->getValue('publish_time');
 +
</source>
 
где $id – id страницы;
 
где $id – id страницы;
</pre>
+
 
 
В переменной $time будет объект класса umiDate. Чтобы получить само значение необходимо применить метод getFormattedDate() класса umiDate, т.е.:
 
В переменной $time будет объект класса umiDate. Чтобы получить само значение необходимо применить метод getFormattedDate() класса umiDate, т.е.:
<pre>
+
<source lang="php">
 
$mdftime = $time->getFormattedDate('U');
 
$mdftime = $time->getFormattedDate('U');
</pre>
+
</source>
  
 
В качестве параметра передается метод форматирования даты, в данном случае 'U' – время в формате unix-time.
 
В качестве параметра передается метод форматирования даты, в данном случае 'U' – время в формате unix-time.
  
[[Категория:Написание кастомных макросов]]
+
[[Категория:Написание кастомных макросов]][[Категория:API]]

Текущая версия на 12:22, 5 июня 2013

Используем кастомный макрос, который пропишем в ~classes/modules/custom.php, после слов: //TODO: Write your own macroses here

  public function mdftime($id, $format){
  if ($hierarchy = umiHierarchy::getInstance()->getElement($id)){
  $time = $hierarchy->getUpdateTime();
  return date($format, $time);
  }
  return "";
  }

Пример вызова маркоса:

%custom mdftime(%pid%, 'Y-m-d')%

Первый параметр это id страницы, второй параметр это метод форматирования даты, допустимые значения этого параметра совпадают со значениями параметра format функции date в PHP.

При написании кастомных макросов, пытаясь получить значение поля типа Дата:

$time = umiHierarchy::getInstance()->getElement($id)->getValue('publish_time');

где $id – id страницы;

В переменной $time будет объект класса umiDate. Чтобы получить само значение необходимо применить метод getFormattedDate() класса umiDate, т.е.:

$mdftime = $time->getFormattedDate('U');

В качестве параметра передается метод форматирования даты, в данном случае 'U' – время в формате unix-time.