OpenCMS - как исследовать плоскую структуру вместо структуры папок / деревьев
Я хотел бы иметь структуру дерева / папки для моего контента, но хотел бы, чтобы все страницы служили в качестве плоского URL. Например
страница, расположенная по адресу /cat1/subcat2/tulips.html, будет размещена по адресу:
http://example.com/tulips.html
и страница, расположенная в /cat5/roses.html, будет размещена по адресу:
Мне нужно, чтобы все ссылки были рассчитаны автоматически и чтобы не было конфликтов.
Это возможно с opencms?
Спасибо,
Ассаф
1 ответ
Грубый набросок, как бы я подошел к этому:
Сначала вы получите список всех ресурсов через <cms:contentload>
( http://www.bng-galiza.org/opencms/opencms/alkacon-documentation/documentation_taglib/docu_tag_contentload.html), taglib или соответствующий Java-API в Java-коде, так как вам все равно нужно некоторое кодирование, а затем создайте новые ресурсы введите "внешняя ссылка" в корневой папке OpenCms, указывая на ваши цели; вероятно, используя что-то вроде
getCms().createResource(newFileName, templateFile.getTypeId());
или аналогичный метод (поскольку внешняя ссылка не является структурированным контентом) для него.
Вы можете заключить эту логику в класс java и запланировать ее как запланированное задание, я полагаю, этого достаточно, если вам это не нужно сразу и некоторая задержка приемлема. В противном случае вам нужно подключить его к потоку публикации.