Загадка Spaces-PURL-Context.Веселье.Я собирался написать это в длинном стиле, чтобы закончить свою работу.
Что такое пробелы?
Пробелы - это модуль, который создает контейнеры переопределенной конфигурации для вашего сайта.Речь идет конкретно не о функциях, а о любом количестве значений конфигурации, которые могут работать с пробелами, в том числе о том, активна ли функция или нет.(Активный не означает, что модуль отключен, просто убран ряд функционально-ориентированных вещей, таких как типы контента и представления с пробелами.
При использовании пробелов вам необходимо решить, какой тип«корзины», которые вы хотите использовать. Open Atrium использует OG и пользовательские корзины, вам нужен новый тип корзины, основанный на роли пользователя. Для здравомыслия вам может даже понадобиться создать отдельный модуль, чтобы определитьпользовательские роли как более конкретная вещь в Drupal, вроде того, как Spaces OG нужно опираться на органические группы для ряда концепций.
Что такое контекст?
Контекст - это, в конечном счете, украшение страницы.механизм. Вы рассказываете ему кое-что о странице, она соответствующим образом изменяет страницу. Контекст не может изменить URL, это наоборот. Функции определяют контексты, чтобы сообщить сайту, как визуализировать данную страницу уникально для этой функции, нетпрямая связь между контекстом и пробелами или контекстом и PURL.
Что такое PURL?
PURL - это метод прикрепления объектов в URL и их хранения до тех пор, пока вы с ними не закончите.
Как это склеивает
Пробелы с интеграцией PURL запускаются на основе одного из двухвещи: URL или что-то о содержании на странице.Чтобы объяснить это, я буду использовать Spaces OG в качестве примера.
- Вы нажимаете на ссылку.Ссылка была предварительно скомпонована с компонентом PURL, который Spaces OG ищет для подсказок.Если этот фрагмент URL имеет смысл для пробелов, пробел срабатывает.
- Все ссылки, кроме тех, которые отказываются от модификации PURL, сохраняют элемент URL PURL, что означает пробел, и повторные триггерыс каждой загрузкой страницы.
- Пробелы OG знает, как проверять узлы на их групповую принадлежность.Если пробелы могут взломать узел и найти группу, он запустит пробел этого узла, используя измененную версию PURL
drupal_goto()
, чтобы перенаправить всю страницу для согласованности URL.Это превзойдет любую существующую структуру URL. - Если нет компонента URL, а у узла нет групповой принадлежности, пробел не запускается.
После запуска пробела всеиз этого значения конфигурации пространств втягиваются в игру.Это будет означать, что предустановки пространства по умолчанию (вы можете иметь несколько конфигураций пространства по умолчанию для каждого типа пространства) перекрывают значения по умолчанию в Drupal, которые, в свою очередь, переопределяются любой конфигурацией, сохраненной специально для пространства.В случае Open Atrium это включает в себя такие приятные вещи, как цвет группы, блоки на приборной панели и включенные функции.
Если пользователь посещает что-то, предоставляемое компонентом - узел, представление,и т. д. любые контексты, связанные с этим узлом, этим представлением, этот URL-адрес, предоставляемый любым модулем, может быть просто запущен, и он может начать работу с блоками и темами, чтобы настроить страницу для содержимого компонента.
Следующие шаги
Как я упоминал выше, мне кажется, что ваш первый шаг - попытаться взглянуть на Spaces OG и переписать его так, чтобы он был сосредоточен вокруг роли пользователя, а не на органических группах.Вам не нужно делать много с PURL напрямую, кроме небольшого копирования и вставки из Spaces OG.Возможно, вы захотите опубликовать в очереди выпусков Spaces информацию, чтобы сопровождающие могли ее увидеть и дать указатели.