Пометка и поиск содержимого Plone из ограниченных словарей

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

  • ATVocabularyManager - позволяет редакторам создавать разные словари
  • eea.facetednavigation - позволяет редакторам подключать словари ATVocabularyManger к панели поиска

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

Я знаю, что могу сделать это в коде, но я надеюсь на что-то TTW, чтобы редакторы могли добавить больше способов категоризации, если они хотят. Я почти уверен, что должен быть плагин, чтобы решить эту проблему, но пока не нашел его. Я уверен, что редактор схемы ловкости решит эту проблему, но мне это нужно для существующих типов контента Plone.

Так интересно

2 ответа

Я думаю, что вы можете сделать, это просто сделать так, чтобы ваши редакторы контента отмечали контент с помощью обычного механизма тегов и помещали его так, как им нравится. Затем, с помощью eea.facetednavigation, вы указываете различные группы тегов, которые вы хотите использовать в своей многогранной навигации.

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

Некоторые пакеты, на которые вы можете взглянуть для решения этой проблемы:

ATVocabularyManager предназначен не для динамического добавления словарей в новые поля существующих типов контента, а для предоставления менеджера словаря для пользовательских типов контента и, возможно, полей schemaextender.

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

Давайте назовем это коллективные теги (?)

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

Это обеспечит панель управления, где вы можете ввести регулярное выражение. Это будет использоваться для всех ключевых слов, используемых для всего контента, чтобы разбить его на фасеты. Например, если все ваши теги имеют вид Animal-Fish, Color-Blue ваш re будет

(?P<facet>[^\S]*)-(?P<value>[^\S]*)

Установленные словари для "Цвета" и "Животного" доступны для использования в любом месте, включая eea.facetednavigation. Любой новый тег, добавленный к контенту, автоматически станет доступным в словарях (может потребоваться кэширование).

Другие вопросы по тегам