Пути публикации архивов
Материал из Movable Type Wiki
Пути публикации архивов используются при создания архива, они определяют, с какой структурой и с какими именами будут опубликованы архивные шаблоны. Если рассматривать пути публикации со стороны конечного пользователя сайта, то это — адреса страниц (URL).
Один шаблон может иметь несколько путей публикации, например, архив автора и автора по месяцам может быть опубликован с помощью одного шаблона, если в нём задать специальные условия с помощью тегов mt:If, mt:Else, mt:Unless, и др.
Для создания архива по месяцам подобно этому:
2008/12/index.html
… используйте %y для обозначения года в четырёхзначном формате и %m для обозначения месяца в двухзначном формате, а также %i для индексного файла. Также не забывайте разделять значения слэшем («/»):
%y/%m/%i
Для создания архива категории подобно этому:
категория/под-категория/index.html
… используйте %-c для создания пути категории, слова в которой разделены дефисом, а также %i для индексного файла, не забывая разделять значения слэшем:
%-c/%i
Чтобы создать архив записи подобно этому:
2008/12/entry-basename.html
… 4-х значный год, 2-х значный месяц, а также базовое имя записи с расширением, указанным в параметрах блога:
%y/%m/%-f
Пути архивов используют различные теги Movable Type для создания ссылок (например, <mt:EntryPermalink />). Когда путь архива заканчивается индексным файлом (для большинства серверов это index.html или index.php), то Movable Type удаляет этот индексный файл из URL.
Таким образом, если фактическое расположение файлов выглядит так:
2008/12/entry-basename/index.html 2008/12/index.html
То Movable Type создаёт ссылки без индексного файла (если только вы не создадите собственный путь, в котором индексный файл будет):
<a href="2008/12/entry-basename/"><!-- запись --></a> <a href="2008/12/"><!-- ежемесячный архив --></a>
Содержание |
Основные пути архивов
Ниже представлены основные пути архивов в Movable Type. Значение по умолчанию для определённого типа архива выделено жирным шрифтом.
| Тип архива | Путь архива | Значение в шаблонах |
|---|---|---|
| Запись | гггг/мм/базовое-имя-записи.html | %y/%m/%-f |
| Запись | гггг/мм/базовое_имя_записи.html | %y/%m/%f |
| Запись | гггг/мм/базовое-имя-записи/index.html | %y/%m/%-b/%i |
| Запись | гггг/мм/базовое_имя_записи/index.html | %y/%m/%b/%i |
| Запись | гггг/мм/дд/базовое-имя-записи.html | %y/%m/%d/%-f |
| Запись | гггг/мм/дд/базовое_имя_записи.html | %y/%m/%d/%f |
| Запись | гггг/мм/дд/базовое-имя-записи/index.html | %y/%m/%d/%-b/%i |
| Запись | гггг/мм/дд/базовое_имя_записи/index.html | %y/%m/%d/%b/%i |
| Запись | категория/под-категория/базовое-имя-записи.html | %-c/%-f |
| Запись | категория/под-категория/базовое-имя-записи/index.html | %-c/%-b/%i |
| Запись | категория/под_категория/базовое_имя_записи.html | %c/%f |
| Запись | категория/под_категория/базовое_имя_записи/index.html | %c/%b/%i |
| Страница | путь-папки/базовое-имя-страницы.html | %-c/%-f |
| Страница | путь-папки/базовое-имя-страницы/index.html | %-c/%-b/%i |
| Страница | путь_папки/базовое_имя_страницы.html | %c/%f |
| Страница | путь_папки/базовое_имя_страницы/index.html | %c/%b/%i |
| Ежедневный | гггг/мм/дд/index.html | %y/%m/%d/%f |
| Еженедельный | гггг/мм/день-недели/index.html | %y/%m/%d-week/%i |
| Ежемесячный | гггг/мм/index.html | %y/%m/%i |
| Ежегодный | гггг/index.html | %y/%i |
| Категория | категория/под-категория/index.html | %-c/%i |
| Категория | категория/под_категория/index.html | %c/%i |
| Ежедневный категории | категория/под-категория/гггг/мм/дд/index.html | %-c/%y/%m/%d/%i |
| Ежедневный категории | категория/под_категория/гггг/мм/дд/index.html | %c/%y/%m/%d/%i |
| Ежемесячный категории | категория/под-категория/гггг/мм/index.html | %-c/%y/%m/%i |
| Ежемесячный категории | категория/под_категория/гггг/мм/index.html | %c/%y/%m/%i |
| Еженедельный категории | категория/под-категория/гггг/мм/день-недели/index.html | %-c/%y/%m/%d-week/%i |
| Еженедельный категории | категория/под_категория/гггг/мм/день-недели/index.html | %c/%y/%m/%d-week/%i |
| Ежегодный категории | категория/под-категория/гггг/index.html | %-c/%y/%i |
| Ежегодный категории | категория/под_категория/гггг/index.html | %c/%y/%i |
| Автор | автор/отображаемое-имя-автора/index.html | author/%-a/%f |
| Автор | автор/отображаемое_имя_автора/index.html | author/%a/%f |
| Ежедневный автора | автор/отображаемое-имя-автора/гггг/мм/дд/index.html | author/%-a/%y/%m/%d/%f |
| Ежедневный автора | автор/отображаемое_имя_автора/гггг/мм/дд/index.html | author/%a/%y/%m/%d/%f |
| Ежемесячный автора | автор/отображаемое-имя-автора/гггг/мм/index.html | author/%-a/%y/%m/%f |
| Ежемесячный автора | автор/отображаемое_имя_автора/гггг/мм/index.html | author/%a/%y/%m/%f |
| Еженедельный автора | автор/отображаемое-имя-автора/гггг/мм/день-недели/index.html | author/%-a/%y/%m/%d-week/%f |
| Еженедельный автора | автор/отображаемое_имя_автора/гггг/мм/день-недели/index.html | author/%a/%y/%m/%d-week/%f |
| Ежегодный автора | автор/отображаемое-имя-автора/гггг/index.html | author/%-a/%y/%f |
| Ежегодный автора | автор/отображаемое_имя_автора/гггг/index.html | author/%a/%y/%f |
Редактирование пути архива
Путь архива располагается в разделе «Опции шаблона», который находится внизу каждого архивного шаблона.
- Перейдите к Дизайн -> Шаблоны.
- Откройте любой архивный шаблон, например: Запись, Список записей категории, Ежемесячный список записей, и т.д.
- В нижней части экрана найдите ссылку «Опции шаблона», там будет «Путь публикации архивов», где вы можете отредактировать существующий или создать новый путь.
Использование тегов шаблонов в путях архивов
Movable Type позволяет использовать в путях архивов теги шаблонов.
Например, чтобы опубликовать записи с подобным URL:
2009/September/16/basename.html
Используйте тег mt:EntryDate, в котором можно использовать дополнительные форматы дат. В результате путь архивов будет выглядеть так:
%y/<mt:EntryDate format="%B" />/%d/%-fПример с использованием дат и слэшей:
<mt:EntryDate format="%Y/%B/%d" />/%-fОбратите внимание: необходимо понимать, что использование тегов шаблонов в путях архивов в некоторых ситуациях несёт определённые риски. Нет абсолютной гарантии, что указанные теги, а также их комбинация с модификаторами (например, dirify="1") будет совместима в будущих версиях. Если вы используете теги в этом месте, то не забывайте детально проверять список изменений в новых версиях Movable Type, чтобы избежать возможных ошибок в работе.
Значения путей архивов
%a
Базовое имя автора <mt:AuthorBasename /> Пример: melody_nelson.
%_a
То же самое, что и %a. Может быть использовано для принудительного использования подчёркивания.
%-a
То же самое, но с использованием дефиса. Пример: melody-nelson.
%b
Для индивидуального имени записи, равнозначно <mt:EntryBasename />. По умолчанию это первые 30 дирифицированных символов с использованием подчёркивания в качестве разделителя. Значение указывается автоматически для записи, но может быть переопределено вручную через поле «Базовое имя» в редакторе записей. Пример: my_summer_vacation
%_b
Тоже самое, что и %b.
%-b
То же, что и выше, но используется дефис вместо подчёркивания. Пример: my-summer-vacation.
%c
Путь категории и подкатегории (если существует) до записи. Используется базовое имя категории. Пример: arts_and_entertainment/tv_and_movies.
%_c
Равнозначно %c.
%-c
Тоже, что и выше, но с использованием дефиса. Пример: arts-and-entertainment/tv-and-movies.
%C
Базовое имя основной категории, равнозначно тегу <mt:CategoryBasename /> Пример: tv_and_movies.
%-C
Тоже, что и выше, но с использованием дефиса. Пример: tv-and-movies.
%d
Двухзначное значение месяца. Равнозначно тегу <mt:ArchiveDate format="%d" /> Пример: 09.
%D
Трёхзначное название дня недели. Равнозначно тегу <mt:ArchiveDate format="%e" trim="1" /> Пример: Tue.
%e
Числовое значение ID записи — шесть цифр. Если значение ID меньше 999999, то первые цифры заменяются нулями. Равнозначно тегу <mt:EntryID pad="1" />. Пример: 000040.
%E
Числовое значение ID записи. Равнозначно тегу <mt:EntryID pad="0" />. Пример: 40.
%f
Имя публикуемого файла, уже включающее расширение, указанное в параметрах блога. Может быть использовано вместо %b или %i для обеспечения правильного поведения в соответствии с контекстом. Равнозначно тегу <mt:ArchiveFile /> Пример: entry_basename.html или index.html.
%-f
Тоже, что и %f, но с использованием дефиса. Пример: entry-basename.html.
%F
Тоже, что и %f<code>, но без расширения файла. Равнозначно тегу <code><mt:ArchiveFile extension="0" />. Пример: entry_basename.
%-F
Тоже, что и %f, но без расширения файла и с использованием дефиса. Равнозначно тегу <mt:ArchiveFile extension="0" separator="-" />. Пример: entry-basename.
%h
Час в 24-часовом формате с ведущим нулём. Равнозначно тегу <mt:ArchiveDate format="%H" /> Пример: 09 или 16.
%H
Час в 24-часовом формате без ведущего нуля. Равнозначно тегу <mt:ArchiveDate format="%k" trim="1" /> Пример: 9 или 16.
%i
Значение конфигурационной директивы IndexBasename вместе с расширением файла. Равнозначно тегу <mt:IndexBasename extension="1" />. Пример: index.html.
%I
Тоже, что %i<code>, но без расширения файла. Равнозначно тегу <code><mt:IndexBasename /> Пример: index.
%j
Трёхзначный день года, c нулями. Равнозначно тегу <mt:ArchiveDate format="%j" /> Пример: 040.
%m
Двухзначный месяц, с нулями. Равнозначно тегу <mt:ArchiveDate format="%m" /> Пример: 07.
%M
Трёхзначное значение месяца. Равнозначно тегу <mt:ArchiveDate format="%b" /> Пример: Sep<code> или <code>Jan.
%n
Двухзначные минуты, с нулями. Равнозначно тегу <mt:ArchiveDate format="%M" />. Пример: 04.
%p
Номер текущей страницы. Равнозначно <mt:PagerBlock><mt:IfCurrentPage><mt:Var name="__value__" /></mt:IfCurrentPage></mt:PagerBlock>.
%s
Двухзначные секунды, с нулями. Равнозначно тегу <mt:ArchiveDate format="%S" /> Пример: 01.
%x
Расширение файла вместе с точкой (.). Равнозначно тегу <mt:BlogFileExtension />. Если расширение файла не указано, то будет возвращено пустое значение. Пример: .html.
%y
Четырёхзначный год. Равнозначно тегу <mt:ArchiveDate format="%Y" /> Пример: 2005.
%Y
Двухзначный год, с нулями. Равнозначно тегу <mt:ArchiveDate format="%y" /> Пример: 05.