как я могу показать дату создания узла


9

Я использовал format_date()в своих файлах шаблонов, чтобы попытаться вывести дату создания.

Я следовал этому руководству http://webwash.net/tutorials/handling-date-and-time-drupal-7

Я создал формат даты 'd, j M y' и тип даты 'article' и назвал его через код:

<?php print format_date($node->changed, 'article') ?> 

однако указанная дата является датой обновления, а не датой ее создания.

Как мне показать дату создания узла?

Ответы:


18

В узле объекта есть свойство, называемое «создан». Это то, что вам нужно и может использоваться точно так же, как вы использовали «измененный».

<?php print format_date($node->created, 'article'); ?>

ДА! это сработало. я использовал это <? php print format_date ($ node-> создал, 'статья'); ?> Большое спасибо.
Джереми

2

Первые шаги

Первый шаг - включить «Отображение информации об авторе и дате» на странице редактирования типа контента по адресу:

/ Администратор / структура / типов / управление / [your_custom_content_type]

...как показано ниже:

введите описание изображения здесь

Получить данные

Теперь мы можем получить эти данные в файле node.tpl.php и изменить заголовок даты публикации. В идеале это будет для пользовательского шаблона узла, а не основного файла node.tpl.php. В моем случае у меня есть тип контента, называемый блогом, и я хочу, чтобы только дата публикации выглядела так для постов блога. Я беру node.tpl.php (находится в папке моей темы) и копирую и переименовываю его в node - blog.tpl.php. Обратите внимание на «двойные тире», это новое в Drupal

Найти код для замены

Теперь, глядя в мой новый узел - файл blog.tpl.php, я вижу код PHP, который мне нужен, после чего я изменю:

<?php if ($display_submitted): ?>
  <div class="submitted"><?php print $date; ?> -- <?php print $name; ?></div>
  <?php endif; ?>

Я хочу заменить это на некоторый пользовательский код PHP, по существу разбив дату на части и избавившись от имени автора (хотя вы могли бы легко добавить это обратно и задать тему).

Код это

Вот наш новый код:

<?php if ($submitted) { ?>

   <div class="date-in-parts">
       <span class="day"><?php  echo date("j", $node->created); ?></span>
       <span class="month"><?php echo date("M", $node->created); ?></span>
       <span class="year"><?php echo date("Y", $node->created); ?></span>
    </div><!--//date-in-parts -->

  <?php } ?>
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.