* РБК — новости

* *

Создание SEO-ориентированных URL с использованием файлов шаблонов

  1. Определения шаблонов
  2. Структуры файлов шаблонов
  3. Фиксированные токены
  4. Динамические токены
  5. Языки
  6. Лучшие практики для работы с файлами шаблонов

Файлы шаблонов используются при создании и деконструкции оптимизированных для SEO URL-адресов. Поскольку каждый тип страницы требует построения различных данных, файл шаблона содержит шаблон URL. Например, существуют файлы шаблонов для страниц категории, страницы контактов и страницы продукта.

Определения шаблонов

Следующий фрагмент кода представляет собой пример определения шаблона для URL-адреса страницы политики конфиденциальности: <! - URL-адрес конфиденциальности, подобный следующему: http: // localhost / shop / en / aurora / privacy-policy-registration (canonical) Этот шаблон заменяет Отображение PrivacyPolicy, присутствующее в SEOURLMapper.xml в предыдущих реализациях SEO (до FEP3) -> a <seourl: seoUrlPatternDef name = "PrivacyRegistrationURL"> b <seourl: seoUrlPattern viewName = "PrivacyView"> / LanguageToken / StoreToken: CatalogToken / seourl: seoUrlPattern> c <seourl: urlToParamMapping> <seourl: mapping name = "langId" value = "? LanguageToken?" /&gt; <seourl: mapping name = "storeId" value = "? StoreToken?" /&gt; <seourl: mapping name = "catalogId" value = "? CatalogToken?" /&gt; <seourl: mapping name = "fromPage" value = "registration" /> </ seourl: urlToParamMapping> d <seourl: paramToUrlMapping> <seourl: mapping name = "LanguageToken "значение ="? langId? " defaultValue = "- 1" /> <seourl: mapping name = "StoreToken" value = "? storeId?" /> <seourl: mapping name = "CatalogToken" value = "? catalogId?" /> <seourl: mapping name = "PrivacyRegistrationToken" value = "Privacy-Policy-Registration" /> </ seourl: paramToUrlMapping> e <seourl: creationDef> <seourl: use device = "browser"> <seourl: target> Конфиденциальность </ seourl: target> </ seourl: использование> </ seourl: UseDef> </ seourl: seoUrlPatternDef> a. SEO Определение имени шаблона URL Название шаблона. Установите значение равным имени, которое используется при создании URL-адресов SEO на страницах JSP с помощью библиотеки тегов wcf: url. б. Struts to pattern mapping Определяет шаблон URL. Атрибут viewName определяет отображение действий Struts, которое используется при деконструкции URL-адреса SEO. После того, как URL-адрес SEO деконструируется и сопоставляется с шаблоном, запрос перенаправляется в соответствующий атрибут viewName. с. SEO URL для сопоставления параметров Используется при деконструкции SEO URL. После сопоставления URL-адреса с шаблоном значения, связанные с ключевыми словами в URL-адресе, присоединяются к соответствующим именам параметров. Имена параметров определяются в этом сопоставлении, которое основано на сопоставлении между tokenName и ключевым словом.

Например, если en / aurora / Privacy-Policy-Registration сопоставляется с предыдущим шаблоном / LanguageToken / StoreToken: CatalogToken / PrivacyRegistrationToken, значение ключевого слова "en" связано с параметром langId. Ключевое слово aurora связано с StoreToken: CatalogToken, и его значение (например, 10001: 10002) присваивается storeID и catalogId (storeId = 10001 и catalgoId = 10002) после разделения.

д. Параметр URL-адреса SEO и сопоставление URL-адреса Используется при создании URL-адреса SEO на страницах JSP с помощью библиотеки тегов wcf: url. На основе имени токена и tokenValue ключевые слова ищутся в базе данных и заменяются именами токенов в шаблоне URL. е. Использование шаблона В этом примере используется для статической страницы конфиденциальности, которая отображается под инструментом управления хранилищем в Центре управления.

Структуры файлов шаблонов

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

  • Файлы шаблонов находятся на каком-то уровне. Максимальное количество уровней, которые могут быть определены в SEO URL, составляет 5.
  • Файл .disable найден.
  • Все связанные каталоги магазина ищутся.

В расширенном хранилище сайтов поиск файла шаблона сначала выполняет поиск в каталогах хранилища для расширенного хранилища сайтов В расширенном хранилище сайтов поиск файла шаблона сначала выполняет поиск в каталогах хранилища для расширенного хранилища сайтов. Если файл шаблона не найден, поиск выполняет поиск в каталогах хранилища активов.

Фиксированные токены

Файл шаблона SEO может содержать два раздела: Маркер является элементарным символом в шаблоне URL. Каждый токен имеет определенное использование и связан с ключевым словом и значением. Во время создания оптимизированного для SEO URL-адреса токены в шаблоне URL-адреса заменяются соответствующими им ключевыми словами. Во время деконструкции URL ключевые слова ищутся по их соответствующим именам токенов, чтобы соответствовать определенному шаблону URL. Ключевые слова также ищутся, чтобы найти значения, которые должны быть связаны с параметрами деконструированного динамического URL. Существует два типа токенов: динамический и фиксированный. Динамические токены определены в SEOTOKENUSGTYPE Таблица, а фиксированные токены определены в файле шаблона. <seourl: tokenDef> 1 <seourl: token name = "PageViewToken"> <seourl: tokenValue value = "image" /> <seourl: tokenValue value = "подробный" /> </ seourl: token> 2 <seourl: token name = "PrivacyRegistrationToken"> <seourl: tokenValue value = "Privacy-Policy-Registration" /> </ seourl: token> 3 <seourl: token name = "TopCategoryBooleanToken"> <seourl: tokenValue value = "Y" /> <seourl : tokenValue value = "N" /> </ seourl: token> 4 <seourl: token name = "BeginIndexToken"> <seourl: tokenValue value = "[[0-9] *]" /> </ seourl: token> 5 <seourl: token name = "CatEntryIDToken"> <seourl: tokenValue value = "[[0-9] *]" /> </ seourl: token> 6 <seourl: token name = "ContentOnlyToken"> <seourl: tokenValue value = "1" /> <seourl: tokenValue value = "0" /> </ seourl: token> </ seourl: tokenDef> 1. PageViewToken Может иметь только два значения: графическое или подробное. 2. PrivacyRegistrationToken Может иметь только значение Privacy-Policy-Registration. 3. TopCategoryBooleanToken Может иметь значение Y или N. 4. BeginIndexToken Может иметь числовые значения. Заключите выражение в набор скобок []. Выражение [[0-9] *] указывает, что допустимым значением для BeginIndexToken может быть любое числовое значение. Чтобы использовать целое число, не используйте *. 5. CatEntryIDToken Может иметь числовые значения. Заключите выражение в набор скобок []. Выражение [[0-9] *] указывает, что допустимым значением для CatEntryIDToken может быть любое числовое значение. Чтобы использовать целое число, не используйте *. 6. ContentOnlyToken Может иметь значение 1 или 0. Значение 1 указывает на включение заголовка, нижнего колонтитула, левой и правой панели навигации, а также содержимого. Значение 0 указывает, что заголовок, колонтитул и левая панель навигации не включены. Отобразить контент, представленный в середине страницы

Динамические токены

SEOTOKENUSGTYPE

таблица устраняет разрыв между пользовательским интерфейсом Центра управления, который сохраняет ключевые слова URL, и файлами определения шаблона, которые определены в витрине магазина. Основным разрывом между Management Center и витриной являются имена токенов, которые используются в файлах определения шаблона. Пользовательский интерфейс Центра управления использует имена токенов для сохранения ключевых слов URL для записей каталога, категорий и статических страниц хранилища. Чтобы различать различные токены, которые используются в определении шаблона, вводится понятие использования. Таблица типа использования токена предоставляет пользовательскому интерфейсу Центра управления имена токенов, используемые в файлах определения шаблона. Использование сопоставляет имя токена с сущностями, для которых ключевые слова определены по отношению к установленному имени токена. Некоторые виды использования предопределены в этой таблице и сопоставлены с объектами по умолчанию, для которых разрешено определять ключевые слова URL. Эти следующие предопределенные использования находятся в отображении таблицы:

  • хранить
  • язык
  • Товар
  • Вещь
  • категория
  • Конфиденциальность
  • Карта сайта

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

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

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

Предопределенное использование магазина использует StoreToken в качестве имени токена. Если какие-либо сложные токены определены для использования магазина для конкретного магазина, они должны содержать StoreToken. Например, хранилище может рассмотреть возможность объединения значений Id хранилища, языка и каталога в токен для использования хранилища и принимает следующую форму: StoreToken: LanguageToken: CatalogToken. Когда реестр конфигурации кэширует токен, он ищет строку StoreToken в имени токена. Значение в соответствующей позиции в значении токена рассматривается как storeId. Такое поведение является основной причиной использования жестко закодированного имени токена в качестве предопределенного токена хранилища.

Языки

Маркер по умолчанию для использования языка - LanguageToken. Поскольку ключевые слова для языкового токена взяты из языкового реестра, их не нужно определять.

По умолчанию LanguageTokens берутся из языкового реестра. Код lang - это ключевое слово. Например, в английском языке urlKeyword имеет значение en, ​​а languageId равно -1.

Но это поведение по умолчанию можно изменить, определив отдельные urlKeywords (кроме кода языка по умолчанию) для любого языка в файлах шаблонов URL-адресов SEO.

Для получения дополнительной информации см. Использование новых языков с SEO-дружественными URL ,

Лучшие практики для работы с файлами шаблонов

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

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

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

    Файл .reload должен находиться в том же каталоге, что и файл шаблона.

    В файле .reload укажите свойство интервала перезагрузки в следующем формате: reloadinterval = интервал перезагрузки в секундах. Где интервал перезагрузки в секундах - это время (в секундах), которое проходит до перезагрузки файла шаблона. Например, reloadinterval = 900 Файл .reload предназначен для загрузки изменений в файлах шаблонов SEO. Этот файл не загружает изменения в файле SEOURLMapper.xml.

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

  • Добавление пустого файла .disable по тому же пути отключает новую функцию SEO для этого конкретного магазина. Это действие требует перезагрузки сервера или файла .reload.
  • Убедитесь, что значение patternName не совпадает с именем сопоставления любого действия в файлах конфигурации Struts.
  • Символы косой черты «/» и подчеркивания «_» являются специальными ключевыми словами, которые используются для разделения токенов в файлах шаблонов SEO. Например, <seourl: seoUrlPattern viewName = "ProductDisplay"> / LanguageToken / StoreToken: CatalogToken / CatEntryIDToken </ seourl: seoUrlPatter>

    Примечание: не используйте эти символы или точку '. 'символ, когда вы создаете значение urlKeyword

LanguageToken?
Gt; <seourl: mapping name = "storeId" value = "?
StoreToken?
Gt; <seourl: mapping name = "catalogId" value = "?
CatalogToken?
Gt; <seourl: mapping name = "fromPage" value = "registration" /> </ seourl: urlToParamMapping> d <seourl: paramToUrlMapping> <seourl: mapping name = "LanguageToken "значение ="?
LangId?
DefaultValue = "- 1" /> <seourl: mapping name = "StoreToken" value = "?
StoreId?

Реклама

Популярные новости


Реклама

Календарь новостей

Реклама

Архив новостей

Реклама