Seditio.by

Плагин Metadates для CMF Cotonti

Seditio.by » Наше портфолио » Плагин Metadates для CMF Cotonti

Плагин Metadates для CMF Cotonti

Назначение плагина Metadates

Плагин Metadates является лучшим и единственным решением для среды управления сайтом Cotonti, предназначенным для вывода различного представления даты и времени. В базовой комплектации CMS Cotonti предлагает выводить даты и время только полностью и в цифровом виде, например:

01.03.2010 г.
или
14:05 03.01

Данную проблему частично решал плагин Cooldates, однако его реализация и возможности заставляют желать лучшего, да и написан он для CMS Seditio.

Почему Metadates?

Плагин Metadates лишен всех указанных недостатков, поскольку он

  1. Опимизирован для использования в среде управления сайтом Cotonti
  2. Обеспечивает вывод дат через файлы локализации
  3. Использует стандартные теги вывода даты и времени

Где и как использовать для вывода даты и времени плагин Metadates?

Metadates использует следующие стандартные теги Cotonti с добавлением собственных постфиксов:

  • {COMMENTS_ROW_DATE} в comments.tpl
  • {FORUMS_POSTS_ROW_CREATION} в forums.posts.tpl
  • {LIST_ROW_DATE}, {LIST_ROW_BEGIN} и {LIST_ROW_EXPIRE} в list.tpl
  • {PAGE_ROW_DATE}, {PAGE_ROW_BEGIN} и {PAGE_ROW_EXPIRE} в news.tpl
  • {PAGE_ROW_DATE}, {PAGE_ROW_BEGIN} и {PAGE_ROW_EXPIRE} в page.tpl

Например, комментарий создан 2 марта 2010 г. в 21:47. C помощью плагина Metadates будут доступны следующие значения:

{COMMENTS_ROW_DATE_YYYY}: 2010 // Год в 4 цифры
{COMMENTS_ROW_DATE_YY}: 10 // Год в две цифры
{COMMENTS_ROW_DATE_DD}: 02 // Дата
{COMMENTS_ROW_DATE_D}: 2 // Дата без 0
{COMMENTS_ROW_DATE_MMMM}: март // Полный месяц
{COMMENTS_ROW_DATE_MMM}: мар // Сокращенный месяц
{COMMENTS_ROW_DATE_MM}: 03 // Порядковый номер месяца
{COMMENTS_ROW_DATE_M}: 3 // Порядковый номер месяца без 0
{COMMENTS_ROW_DATE_WWWW}: вторник // Полный день недели
{COMMENTS_ROW_DATE_WWW}: вт // Сокращенный день недели
{COMMENTS_ROW_DATE_W}: 2 // Порядковый номер дня недели (вск = 0)
{COMMENTS_ROW_DATE_Z}: 60 // Количество дней с начала года
{COMMENTS_ROW_DATE_GG}: 21 // Часы (24-часовой формат без 0)
{COMMENTS_ROW_DATE_G}: 21 // Часы (24-часовой формат без 0)
{COMMENTS_ROW_DATE_HH}: 21 // Часы (24-часовой формат с 0)
{COMMENTS_ROW_DATE_H}: 21 // Часы (12-часовой формат с 0)
{COMMENTS_ROW_DATE_I}: 47 // Минуты
{COMMENTS_ROW_DATE_S}: 00 // Секунды

Metadates Plugin Description

The Metadates plugin is the best and the only solution for the Cotonti CMF that provides you with a flexible capability to display numeric & textual date and time representations within a Cotonti template file. In the Cotonti basic package you are limited with a digit-only date and time stamps, i.e.:

2010/03/01
or
14:05 03.01

This problem was partially solved by a far-from-being-perfect Cooldates plugin written specifically for the Seditio CMS.

Why Metadates?

The Metadates plugin is free from thew above shortcomings due to:

  1. Optimization for the Cotonti CMF
  2. Output via localization files
  3. Use of the Cotonti standard date / time output tags

Where and how can I use Metadates?

Metadates works via the following Cotonti standard tags with its own postfixes attached:

  • {COMMENTS_ROW_DATE} in the comments.tpl
  • {FORUMS_POSTS_ROW_CREATION} in the forums.posts.tpl
  • {LIST_ROW_DATE}, {LIST_ROW_BEGIN} and {LIST_ROW_EXPIRE} in the list.tpl
  • {PAGE_ROW_DATE}, {PAGE_ROW_BEGIN} and {PAGE_ROW_EXPIRE} in the news.tpl
  • {PAGE_ROW_DATE}, {PAGE_ROW_BEGIN} and {PAGE_ROW_EXPIRE} in the page.tpl

In instance, a comment was created on March 2, 2010 @ 21:47. Via Metadates you're gonna have the following date / time components available in the template:

{COMMENTS_ROW_DATE_YYYY}: 2010 // 4-digit year
{COMMENTS_ROW_DATE_YY}: 10 // 2-digit year
{COMMENTS_ROW_DATE_DD}: 02 // 2-digit date
{COMMENTS_ROW_DATE_D}: 2 // 1-digit date
{COMMENTS_ROW_DATE_MMMM}: March // Full month
{COMMENTS_ROW_DATE_MMM}: Mar // Shortened month
{COMMENTS_ROW_DATE_MM}: 03 // 2-digit month index number
{COMMENTS_ROW_DATE_M}: 3 // 1-digit month index number
{COMMENTS_ROW_DATE_WWWW}: Tuesday // Full weekday
{COMMENTS_ROW_DATE_WWW}: Tue // Shortened weekday
{COMMENTS_ROW_DATE_W}: 2 // Weekday index number (Sun = 0)
{COMMENTS_ROW_DATE_Z}: 60 // Number of dated passed since Jan 1
{COMMENTS_ROW_DATE_GG}: 21 // 24-hour format of an hour without leading zeros
{COMMENTS_ROW_DATE_G}: 21 // 24-hour format of an hour without leading zeros
{COMMENTS_ROW_DATE_HH}: 21 // 24-hour format of an hour with leading zeros
{COMMENTS_ROW_DATE_H}: 21 // 12-hour format of an hour with leading zeros
{COMMENTS_ROW_DATE_I}: 47 // Minutes
{COMMENTS_ROW_DATE_S}: 00 // Seconds

Загрузка: Плагин Metadates для CMF Cotonti

Размер файла: 4Кб
Скачан: 97 раз

Комментарии


1. Макс
02:07 15.07.2010

Хороший плагин. Но в news.tpl не работает.



2. esclkm
07:14 15.07.2010

Версия новостей?



3. Admin
08:10 15.07.2010

Макс Да, плагин хороший. И в news.tpl он работает замечательно: обратите внимание на нашу главную страницу.



4. Макс
08:16 15.07.2010

Вчера дат на главной в новостях не было. Версия плуга у меня 0.0.3. А у вас какая?
Я знаю colldate не работал без хака в плагине новостей. Тут тоже с хаком?



5. Admin
08:56 15.07.2010

1. Даты в news.tpl включены сегодня специально для вас.
2. Cooldate работал под Cotonti без хаков (в т.ч. у нас до написания MetaDates)
3. MetaDates работает под Cotonti без хаков
4. Metadates работает под Cotonti в news.tpl
5. Прежде чем утверждать что что-то у вас не работает, исключите возможные причины. Например, протестируйте плагин на чистом Cotonti 068. Приблизительно так:



6. Макс
13:03 15.07.2010

[quote=]1. Даты в news.tpl включены сегодня специально для вас.[/quote]
Очень приятно :)

Если у вас Cooldate работал под Cotonti без хаков, значит версии плуга news у нас разные. Я юзаю тот, что с Motor выкладывал. Сравню версии, посмотрим в чём вопрос.



7. Admin
13:27 15.07.2010

Мы пишем и тестируем свои плагины под последнюю актуальную версию Котонти. И предполагаем что такая же стоит и у пользователя. Если у вас вместо этого стоит поделка, то это совершенно не означает что наш плагин нерабочий. Правильно формулируйте свои утверждения, а вопросы совместимости с самоделками задавайте их авторам, а не нам.



8. Макс
01:12 23.07.2010

Такс... удалил поделку, поставил news из 069 и Metadates отсюда. Отчёт:
news.tpl - ok!
list.tpl - ok!
page.tpl - error: конструкция типа {PAGE_ROW_DATE_DD} {PAGE_ROW_DATE_MMM} {PAGE_ROW_DATE_YY} выводит 01 янв 70 на любой странице. При этом {PAGE_DATE} работает правильно.

Траст писал, "что Обычно такое бывает, когда при апгрейде с 0.0.5 на 0.0.6 забывают выполнить один пункт инструкции по обновлению:
Copy sql/patch-0.0.6.txt, save it in your site root as patch.php, run in web browser like http://your-domain.tld/patch.php and then remove patch.php from your site."

Но уже поздно. Что можно предпринять в этом случае?



9. Admin
10:34 23.07.2010

А что -- теперь патч не выполняется?



10. Макс
19:28 23.07.2010

Теперь толку нету. Он то выполняется, но всё как было так и остаётся. Может вообще дело не в нём.



11. Макс
19:53 26.07.2010

Базу залил новую и чистую, в страницах выводит 01.01.1970



12. Landgraft
20:19 11.10.2010

Плагин хороший, но действительно есть такой косяк. cot 0.6.10, в страницах не выводятся даты. Проблема в том, что когда плагин подключается к pages.php в page.tags, то он получает УЖЕ ПРЕОБРАЗОВАННУЮ дату в переменной $pag['page_date']. В самом начале page.php, сразу после запроса в БД, есть строка (№48) $pag['page_date'] = @date($cfg['dateformat'], $pag['page_date'] + $usr['timezone'] * 3600);, в результате чего в переменной $pag['page_date'] вместо никсового времени содержится форматированная дата.

Как вариант могу предложить такой выход:
в файле metadates.pages.php заменить в строках:
в 23: код $pag['page_date'] на strtotime($pag['page_date']),
в 24: код $pag['page_begin'] на strtotime($pag['page_begin'])
и в 25: код $pag['page_expire'] на strtotime($pag['page_expire']).

Собственно, даже при изменении маски времени на H:i d-m-Y, все работает нормально (главное, чтобы формат даты выдавался в английской локализации, иначе strtotime не сможет обработать его). Может еще где некорректно обрабатывается, остальное пока не проверял)))

А плагин полезный, спасибо.



13. esclkm
19:34 12.10.2010

баг со страницами будет исправлен в следующем релизе движка. В ближайшее время


Всего : 13, на странице: 13

Имя (E-mail):
* Ваш комментарий будет доступен для редактирования в течение 10 Минут

Инфромация о заказе:

Версия фреймворка: Cotonti 0.6.22 Genoa
Валидность: XHTML/CSS2.1
Кроссбраузерность кода: обеспечивается

Похожие страницы

  • Плагин Sitemap для CMF Cotonti

    Создание плагина для вывода навигационной карты сайта

  • Плагин PageAvatar для CMF Cotonti

    Создание плагина для вывода собственных изображений (аватаров) для страниц в списках категорий

  • Плагин Subcat для CMF Cotonti

    Разработка плагина, позволяющего выводить в списке страниц категории все страницы вложенных подкатегорий

  • Плагин Userwall для CMF Cotonti

    Простой плагин, позволяющий пользователям оставлять комментарии и рейтинги на страницах других пользователей

  • Плагин MaxPerPage для CMF Cotonti

    Создание плагина, позволяющего изменять "на лету" количество страниц в списках в стиле интернет-магазина

Контакты

Поиск: