Используйте имя категории в URL блога Sitefinity
Я следовал приведенным здесь инструкциям по созданию нового поставщика и созданию пользовательских URL-адресов, и он работает, как и ожидалось. Кажется, нет четкой ссылки на то, какие параметры могут быть использованы в настройках, поскольку приведенный пример очень прост.
Я хочу использовать название категории сообщения в URL. Я старался:
/[Category]/[UrlName]
но то, что я получил в интерфейсе было:
http://localhost:60327/my-page/Telerik.OpenAccess.TrackedList%601[System.Guid]/my-post-name
Я тоже пробовал
/[Category.Title]/[UrlName]
который просто выбросил ошибки.
Кто-нибудь знает, как это сделать, или еще лучше, хороший справочник по параметрам?
1 ответ
Я не думаю, что это возможно, поскольку свойство Category на самом деле является коллекцией (TrackedList). Теоретически вам понадобится один из элементов коллекции, скажем, первый, и ваше выражение URL будет /[Category[0].Title]/[UrlName]
, но это в настоящее время не поддерживается анализатором выражений.
Кроме того, идея сделать URL зависимым от сложного (связанного) поля не очень хорошая идея. Если кто-то удалит эту категорию, он нарушит все URL вашего блога.
Я бы посоветовал вам создать настраиваемое текстовое поле для элемента сообщения в блоге (например, CategoryUrl), а затем вы сможете установить формат URL на /[CategoryUrl]/[UrlName]
, Удостовериться CategoryUrl
Поле, обязательное для заполнения.