Slugs & URLMaps: SEO-дружественные URL-адреса

  1. Построение шаблона карты URL
  2. Страница сведений
  3. Пример: документация dotCMS
  4. Обработка несоответствующих URL
  5. Код скорости для доступа к информации URLMap
  6. Введенный URL
  7. Отдельные элементы контента
  8. Поля элементов контента
  9. Влияние на поисковую оптимизацию
  10. Многоязычные URL

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

Чтобы создать карту URL для типа контента, вы создаете Шаблон карты URL на тип контента, который перенаправляет все запросы переднего плана, соответствующие шаблону подробная страница (настраивается на тип контента). Страница сведений понимает, как отображать отдельный элемент вашего типа контента, и отображает отдельный контент, как если бы он имел свою отдельную страницу.

Построение шаблона карты URL

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

Примечание. Рекомендуется заканчивать все значения URLMap конечной косой чертой (/), поскольку это делает URL-адрес более устойчивым к доступу различными способами, а также к различиям в пользовательских средах.

Например, рассмотрим тип контента с именем «Документация» со следующими полями:

Название переменной Название заголовка Wiki Заголовок wikiTitle Категория категории

Чтобы создать карту URL, которая включает в себя категорию в URL, шаблон карты URL можно настроить следующим образом:

/ Помощь / {категория} / {wikiTitle} /

Это будет включать «/ help», значение поля «Категория» и поле «Значение WikiTitle» в URL для каждого фрагмента контента, гарантируя, что и слово «справка», и категория каждого фрагмента контента будут включены в ваш SEO стратегия. Например, используя приведенный выше шаблон карты URL, документ, в котором подробно описываются правила пароля пользователя с категорией «Безопасность», может в конечном итоге отображаться на следующий URL:

/ помощи / безопасность / пользовательский пароль ограничение /

Страница сведений

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

Обратите внимание, что страница сведений не предназначена для прямого доступа (через собственный URL) с вашего сайта переднего плана. Например, если ваша страница сведений находится в «/ somefolder / detail», она не предназначена для доступа пользователей к странице сведений через URL-адрес в форме «http://site.yourdomain.com/somefolder/detail».

Вместо этого, когда dotCMS распознает, что пользователь ввел URL, который соответствует Шаблон карты URL dotCMS автоматически отображает страницу сведений о вашем типе содержимого и передает соответствующий элемент содержимого (элемент содержимого, значения полей которого соответствуют введенному URL-адресу) на страницу сведений.

Пример: документация dotCMS

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

/ Документы / последние / {wikiTitle}

На самом деле есть только одна HTML-страница, обслуживающая ВСЕ документацию dotCMS, которую вы сейчас читаете. Тип содержимого документации имеет обязательное поле с именем wikiTitle. По мере добавления контента это поле создает путь URL-адреса и передает соответствующий фрагмент контента в подробная страница , Это происходит автоматически благодаря использованию поля «Карта URL» в типе содержимого, как показано на следующем рисунке:

Например, этот документ, который вы сейчас читаете, является частью содержимого со следующим полем:

wikiTitle = url-map-seo-friendly-urls

Сочетание шаблона карты URL (/ docs / latest / {wikiTitle}) и значения поля wikiTitle (url-map-seo-friendly-urls) создает URL-адрес, который вы видите в верхней части браузера (/ docs / последний / urlmap-сео-дружелюбный-URLs). Обратите внимание, что этот URL-адрес позволяет вам получить доступ к этому документу как к отдельной странице, даже если каталоги «docs» и «последние» на самом деле не существуют в dotCMS.

Существует только одна HTML-страница, обслуживающая всю документацию, и все содержимое хранилища создает свой собственный виртуальный URL-путь в вашем браузере на странице сведений (настроенной для страницы индекса документации)!

Обработка несоответствующих URL

По умолчанию, если URL-адрес, введенный через карту URL-адресов, не соответствует ни одному из существующих материалов, dotCMS сгенерирует HTTP 404 (ошибка страницы не найдена). Однако сопоставление URL-адресов можно настроить в файле dotmarketing-config-ext.properties таким образом, чтобы оно «проваливалось», отображая страницу URL-карты, даже если нет соответствующего содержимого.

Примечание. Настоятельно рекомендуется, чтобы все изменения в файле dotmarketing-config.properties производились через файлы расширения свойств ,

URLMAP_FALLTHROUGH = ложь

  • true (по умолчанию): проверка на соответствие контента, а затем провалиться.
    • Сначала выполняется проверка, чтобы найти часть содержимого с соответствующей картой URL, затем, если не найдено совпадений, путь «проваливается», чтобы проверить, существует ли соответствующий объект dotCMS, путь которого соответствует пути URL (скорее всего, базовый HTML-код). страница, используемая для отображения всего содержимого карты URL).
  • false : всегда перенаправляет на страницу сведений, как указано в типе содержимого.
    • Заставляет dotCMS всегда отображать страницу сведений о типе контента независимо от того, соответствует ли какой-либо контент URL-адресу.
      • Это означает, что страница сведений действует как пользовательская страница 404 для структуры запросов, соответствующих шаблону карты URL.
    • Страница сведений должна быть настроена для обработки посещений страниц, которые не соответствуют шаблону карты URL ни одному элементу содержимого.

Важный

Если для свойства URLMAP_FALLTHROUGH установлено значение false , любые URL-адреса Vanity, созданные для перенаправления со старого сопоставленного URL-содержимого, не будут работать. Это сделано намеренно, так как установка URLMAP_FALLTHROUGH = false позволяет вам написать собственный код на вашем Детальная страница обрабатывать любые попытки доступа к контенту, сопоставленному с URL, который не соответствует ни одному существующему контенту.

Если вы хотите использовать URL-адреса Vanity для перенаправления со старого сопоставленного содержимого URL-адреса, необходимо установить для URLMAP_FALLTHROUGH значение true или написать код для проверки соответствия URL-адресов Vanity на странице сведений.

Код скорости для доступа к информации URLMap

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

Введенный URL

Поскольку подробная страница не предназначен для прямого доступа по собственному URL, вместо этого к нему будет обращаться URL, соответствующий шаблону карты URL] (# URLMapPattern). Чтобы найти URL-адрес, который использовался для доступа к содержимому сопоставленного URL-адреса (и который использовался для сопоставления с шаблоном URL-карты и отображения страницы сведений), используйте в своем коде Velocity следующее:

$ Request.getAttribute ( "javax.servlet.forward.request_uri")

Отдельные элементы контента

Когда ваш шаблон карты URL совпадает, dotCMS автоматически найдет отдельный элемент содержимого, соответствующий шаблону, и передаст этот элемент содержимого на страницу сведений. Чтобы получить доступ к отдельному элементу контента на странице сведений, используйте следующую переменную Velocity:

$ URLMapContent

Поля элементов контента

$ URLMapContent - это объект, представляющий один элемент содержимого вашего типа содержимого. Вы можете получить доступ к любому полю в объекте $ URLMapContent так же, как если бы вы обращались к объекту вашего типа контента, возвращенному из любого другого метода Velocity или viewtool (например, $ dotcontent.pull ()). Например, следующий код скорости можно использовать для доступа к полю «Заголовок» элемента содержимого документации dotCMS, отображаемого на этой странице:

$ URLMapContent.title

Влияние на поисковую оптимизацию

Для любого пользователя или поисковой системы, которые обращались к внешнему интерфейсу вашего сайта, каждый отдельный элемент содержимого вашего типа сопоставленного содержимого URL-адреса представляется отдельной страницей на вашем сайте. Это дает следующие преимущества для поисковой оптимизации (SEO):

  • Ваш сайт имеет большее количество страниц (и, следовательно, воспринимается как более ценный контент).
  • Каждый отдельный элемент контента имеет URL, который сам по себе может соответствовать определенным условиям поиска (в дополнение к контенту и заголовку контента).
  • Каждый отдельный элемент контента имеет URL, который соответствует самому контенту.
  • Ссылки, которые вы создаете в своих отдельных элементах контента, на другие отдельные элементы контента обеспечивают повышенную связь и соответствие поискового запроса.
  • Удобные URL-адреса для страниц облегчают пользователям обмен ссылками на отдельные страницы вашего сайта и ссылки на них.

Все эти факторы повышают релевантность вашего сайта и ваших отдельных страниц (в данном случае отдельных элементов контента) в поисковых рейтингах.

Многоязычные URL

Для получения информации о том, как создавать URL-карты, которые обрабатывают несколько языков, обратитесь к Карты URL (многоязычные) документация.