Тег calendar

С помощью этого тега вы можете вывести календарь, содержащий ссылки, основанные на записях в вашем разделе. Вот пример использования "мини-календаря", который вы можете разместить на каждой странице вашего сайта:

{exp:weblog:calendar switch="calendarToday|calendarCell"}

<table class="calendarBG" border="0" cellpadding="6" cellspacing="1" summary="My Calendar">
<tr class="calendarHeader">
<th><div class="calendarMonthLinks"><a href="{previous_path=weblog/index}">&lt;&lt;</a></div></th>
<th colspan="5">{date format="%F %Y"}</th>
<th><div class="calendarMonthLinks"><a class="calendarMonthLinks" href="{next_path=weblog/index}">&gt;&gt;</a></div></th>
</tr>
<tr>
{calendar_heading}
<td class="calendarDayHeading">{lang:weekday_abrev}</td>
{/calendar_heading}
</tr>

{calendar_rows }
{row_start}<tr>{/row_start}

{if entries}
<td class='{switch}' align='center'><a href="{day_path=weblog/index}">{day_number}</a></td>
{/if}

{if not_entries}
<td class='{switch}' align='center'>{day_number}</td>
{/if}

{if blank}
<td class='calendarBlank'>{day_number}</td>
{/if}

{row_end}</tr>{/row_end}
{/calendar_rows}
</table>
{/exp:weblog:calendar}

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

{exp:weblog:calendar switch="calendarToday|calendarCell" weblog="default_site"}

<table class="calendarBG" border="0" cellpadding="6" cellspacing="1" summary="My Calendar" width="90%">
<tr class="calendarHeader">
<th><div class="calendarMonthLinks"><a href="{previous_path=weblog/cal}">&lt;&lt;</a></div></th>
<th colspan="5">{date format="%F %Y"}</th>
<th><div class="calendarMonthLinks"><a class="calendarMonthLinks" href="{next_path=weblog/cal}">&gt;&gt;</a></div></th>
</tr>
<tr>
{calendar_heading}
<td class="calendarDayHeading">{lang:weekday_abrev}</td>
{/calendar_heading}
</tr>

{calendar_rows }
{row_start}<tr>{/row_start}

{if entries}
<td class='{switch}' align='center'>
<a href="{day_path=weblog/index}">{day_number}</a>
{entries}
<div><a href="{title_permalink=weblog/index}">{title}</a> <a href="{profile_path=member/profile}">{author}</a></div>
{/entries}
</td>
{/if}

{if not_entries}
<td class='{switch}' align='center'>{day_number}</td>
{/if}

{if blank}
<td class='calendarBlank'>{day_number}</td>
{/if}

{row_end}</tr>{/row_end}
{/calendar_rows}
</table>
{/exp:weblog:calendar}

Также вы может просмотреть пример CSS, для использования с примерами календарей. Вы можете добавить этот код к вашему основному стилю, изменить его, если необходимо, или просто игнорировать его.

Параметры

Доступны все параметры стандартного тега {exp:weblog:entries}. Кроме того, следующее параметры разработаны специально для тега weblog calendar.

leading_zeroes=

leading_zeroes="yes"

Если в этом параметре установлено "yes", то переменная {day_number} будет отображаться, как дополненное нолем число с двумя цифрами, например: 01, 02, 03, и т.д. Значение по умолчанию "no."

month= year=

month="04" year="2002"

Вы можете жестко закодировать месяц и год отображаемый календарем. Вы должны указать и месяц и год. Месяц должен быть определен в численной форме.

show_future_entries=

show_future_entries="yes"

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

start_day=

start_day="sunday"

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

switch=

switch="calendarToday|calendarCell"

Этот параметр работает иначе, чем в теге weblog entries. Этот параметр дает вам возможность определить два состояния: состояние "сегодня" и "все другие" состояния. Как правило, это используется для определения двух классов CSS, которые применяются к ячейке таблицы, в которой содержаться день месяца. Если ячейка соответствует сегодняшней дате, то к ней применяется состояние "сегодня" (первое состояние), иначе применяется состояние "все другие" (второе состояние).

Параметр работает с переменной {switch}.

Парные переменные

calendar_heading

{calendar_heading}
<td class="calendarDayHeading">{lang:weekday_abrev}</td>
{/calendar_heading}

Эта парная переменная используется для создания строки таблицы дней недели. Вы можете использовать одну из трех переменных, чтобы определить то, что будет отображаться для дня:

  1. {lang:weekday_abrev}: Однобуквенное сокращение для дня недели. т.е. П., В, и т.д.
  2. {lang:weekday_long}: Полный текст для дня недели. т.е. Понедельник, Вторник, и т.д.
  3. {lang:weekday_short}: Короткий текст для дня недели. т.е. Пн, Вт, и т.д.

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

calendar_rows

{calendar_rows}
{row_start}<tr>{/row_start}
<td class='{switch}' align='center'>
<a href="{day_path=weblog/index}">{day_number}</a>
{entries}
<div><a href="{title_permalink=weblog/index}">{title}</a> <a href="{profile_path=member/profile}">{author}</a></div>
{/entries}
</td>
{row_end}</tr>{/row_end}
{/calendar_rows}

Эта парная переменная используется для создания строк календаря.

entries

{entries}
<div><a href="{title_permalink=weblog/index}">{title}</a> <a href="{profile_path=member/profile}">{author}</a></div>
{/entries}

Эта парная переменная выводит в цикле все записи в указанном разделе (ах), которые встречаются в указанную дату.

row_end

{row_end}</tr>{/row_end}

Эта парная переменная просто определяет, какой контент будет использоваться в конце строки.

row_start

{row_start}<tr>{/row_start}

Эта парная переменная просто определяет содержимое начала строки.

Одиночные переменные

author

{author}

Имя автора (screen name), если оно существует; иначе, эта переменная содержит логин пользователя. Используется в парной переменной {entries}{/entries}.

comment_auto_path

{comment_auto_path}

Эта переменная возвращает URL, установленный в настройке "URL страницы комментариев", на странице Admin > Управление разделами. В эту переменную не входят ни идентификатор записи (entry id), ни URL заголовок, или другая информация; она возвращает только URL из указанной настройки.

comment_entry_id_auto_path

{comment_entry_id_auto_path}

Эта переменная возвращает URL, установленный в настройке "URL страницы комментариев", на странице Admin > Управление разделами. Автоматически добавляется идентификатор (ID) записи. Например, этот код:

<a href="{comment_entry_id_auto_path}">my entry</a>

Будет обработан следующим образом:

<a href="http://www.example.com/index.php/weblog/comments/234/">my entry</a>

comment_url_title_auto_path

{comment_url_title_auto_path}

Эта переменная возвращает URL, установленный в настройке "URL страницы комментариев", на странице Admin > Управление разделами. Автоматически будет добавлен заголовок URL. Например, этот код:

<a href="{comment_url_title_auto_path}">my entry</a>

Будет обработан следующим образом:

<a href="http://www.example.com/index.php/weblog/comments/ice_cream/">my entry</a>

comment_path

{comment_path=weblog/comments}

URL к указанному шаблону. Автоматически добавляется идентификатор (ID) записи. Например, этот код:

<a href="{comment_path=weblog/comments}">comments</a>

Будет обработан следующим образом:

<a href="http://www.example.com/index.php/weblog/comments/234/">comments</a>

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

comment_tb_total

{comment_tb_total}

Общее количество и комментариев и трекбэков для отдельной записи. Используется в парной переменной {entries}{/entries}.

comment_total

{comment_total}

Общее количество комментариев для отдельной записи. Используется в парной переменной {entries}{/entries}.

date

{date format="%F %Y"}

Текущая дата. Как и с другими переменными даты, эта переменная требует использовать параметр "format", для определения форматирования даты. Смотрите страницу изменяемое форматирование даты для получения дополнительной информации.

day_number

{day_number}

Номер дня месяца.

day_path

{day_path=weblog/index}

Эта переменная содержит URL, разработанный для отображения всех записей за указанный день. Как правило, указывается путь к основному шаблону, который выводит несколько записей. Например, этот код:

<a href="{day_path=weblog/index}">{day_number}

Может быть обработан следующим образом:

<a href="http://www.example.com/index.php/weblog/2003/02/17/">17</a>

entry_id_path

{entry_id_path=weblog/comments}

URL к указанному шаблону. Автоматически добавляется идентификатор (ID) записи. Например, этот код:

<a href="{entry_id_path=weblog/comments}">my entry</a>

Будет обработан следующим образом:

<a href="http://www.example.com/index.php/weblog/comments/234/">my entry</a>

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

next_date

{next_date format="%m %Y"}

Следующая дата для календаря; т.е. следующий месяц. Как и с другими переменными даты, эта переменная требует использовать параметр "format", для определения форматирования даты. Смотрите страницу изменяемое форматирование даты для получения дополнительной информации.

next_path

{next_path=weblog/calendar}

Эта переменная содержит URL, разработанный для того, чтобы указывать на следующий месяц в календаре. Путь, как правило, указывает на текущую страницу с календарем.

permalink

{permalink}

Эта переменная содержит адрес индексной страницы сайта вместе с идентификатором (ID) записи:

http://www.example.com/235/

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

{permalink="weblog/archives"}

Будет обработано как:

http://www.example.com/weblog/archives/235/

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

previous_date

{previous_date format="%m %Y"}

Предыдущая дата для календаря; т.е. предыдущий месяц. Как и с другими переменными даты, эта переменная требует использовать параметр "format", для определения форматирования даты. Смотрите страницу изменяемое форматирование даты для получения дополнительной информации.

previous_path

{previous_path=weblog/calendar}

Эта переменная содержит URL, который разработан для указания на предыдущий месяц в календаре. Путь, как правило, указывает на текущую страницу с календарем.

profile_path

{profile_path=member/profile}

URL к профилю автора текущей записи. Используется в парной переменной {entries}{/entries}. Автоматически добавляется идентификатор записи. Используется в ссылке:

<a href="{profile_path=member/profile}">{author}</a>

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

switch

{switch}

Эта переменная разрешает вам чередовать два значения, используемого для отображения записей на странице. Эта переменная работает совместно с параметром switch=.

title

{title}

Заголовок записи. Используется в парной переменной {entries}{/entries}.

title_permalink

{title_permalink}

Эта переменная использует "заголовок URL" как ссылку. По умолчанию это значение содержит адрес индексной страницы сайта вместе с "Заголовком URL":

http://www.example.com/my_ugly_boyfriend/

Кроме того, вы можете указать группу шаблонов/шаблон, а "url title" будет добавлен автоматически:

{title_permalink="weblog/archives"}

Будет обработано как:

http://www.example.com/weblog/archives/my_ugly_boyfriend/

Примечание: Если при создании новой записи вы не указываете "Заголовок URL" то он будет создан автоматически, на основании фактического заголовка записи. Все пробелы автоматически преобразуются в подчеркивания, и удаляются кавычки. Например, "Joe's night out" будет преобразовано в "joes_night_out".

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

trackback_path

{trackback_path=weblog/comments}

URL к указанному шаблону. Автоматически добавляется идентификатор (ID) записи. Используется в ссылке:

<a href="{trackback_path=weblog/comments}">trackback</a>

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

trackback_total

{trackback_total}

Общее количество трекбэков для отдельной записи. Используется в парной переменной {entries}{/entries}.

url_title_path

{url_title_path=weblog/archives}

URL к указанному шаблону. Автоматически будет добавлен "url title" (Заголовок URL). Например, этот код:

<a href="{url_title_path=weblog/archives}">permalink</a>

Будет обработан следующим образом:

<a href="http://www.example.com/index.php/weblog/archives/ice_cream/">permalink</a>

Переменная доступна для использования только внутри парной переменной {entries}{/entries}.

Наверх страницы