Я хотел бы использовать модуль Timeago в качестве формата даты. Однако, когда время назад превысило 24 часа, я хотел бы показать другой формат (например, 4 февраля 2013 г.), очень похожий на использование Twitter или Dribbble.
Я пытался настроить код, но мои навыки подводили меня: /
Возможно, есть лучший модуль для этой цели? Или я должен сделать свой собственный?
Я нашел этот код, который показывает, как я хочу, чтобы он работал, однако я понятия не имею, как реализовать это в Drupal.
Любая помощь приветствуется, спасибо.
Ответы:
Действительно ли пользователи сидят на странице достаточно долго, что эти даты нужно обновлять с помощью javascript? Большинство из них нажмут на что-нибудь и в конечном итоге перезагрузят всю страницу. Так что, возможно, решение php тоже вариант?
Вы можете достичь решения php, используя модуль Custom Formatters .
Если вы создаете новый пользовательский форматер php-типа со следующим кодом (убедитесь, что это тип datetamp):
При создании форматера убедитесь, что вы выбрали тип поля 'datetamp'. После создания средства форматирования на вкладке управления отображением вашего типа содержимого установите поле для использования этого средства форматирования.
Если ваша дата не хранится в отдельном поле, вы можете применить пользовательский форматер ко времени изменения узла, установив модуль Display Suite .
Если вы не хотите использовать какой-либо из этих модулей, но хотите взломать php в своей теме или что-то еще, вы можете использовать ту же логику, что и выше, с функциями format_interval и format_date.
Надеюсь, что это может помочь.
источник
Где бы вы ни использовали timeago, чтобы показать отформатированную дату, подойдет ли фрагмент, подобный приведенному ниже, для вас?
источник
Создать модуль MyCustom
myCustom.module содержит
Создайте myCustom.install и он содержит
Применение :
источник