日期:2022-04-14 15:22:16 訪問量:0次
Drupal 8是一個旨在滿足復(fù)雜內(nèi)容管理需求的Web項目需求的工具。我們聽到了很多關(guān)于headless,API優(yōu)先,去耦等概念,這些概念堅決地復(fù)雜內(nèi)容管理需求的項目提供了堅實的架構(gòu)。但這并不意味著Drupal 8不再推動更傳統(tǒng)的,有時甚至更不那么雄心勃勃的網(wǎng)站:簡單,小型甚至大型網(wǎng)站,但我們希望從中受益于Drupal的模塊化,靈活性和健壯性。
Drupal 8,適用于小型或大型站點(diǎn)的工業(yè)化解決方案
Drupal也是一種解決方案,它提供了不同的架構(gòu)來實現(xiàn)網(wǎng)站的生產(chǎn)。能夠簡單快速地生成和管理多個站點(diǎn)的反復(fù)出現(xiàn)的需求,管理多個簡單站點(diǎn)的項目中,或多或少會有些復(fù)雜。
Drupal 8為我們提供了多種網(wǎng)站設(shè)計工業(yè)化解決方案:Drupal 8原生的多站點(diǎn)架構(gòu)和Domain Access模塊。
Drupal原生多站點(diǎn)架構(gòu)允許生成和維護(hù)多個獨(dú)立的Drupal 8站點(diǎn),這些站點(diǎn)基于相同的Drupal核心及其第三方貢獻(xiàn)模塊,而Domain Access提供從單個Drupal 8實例為不同站點(diǎn)提供支持,只需通過訪問權(quán)限來分離內(nèi)容。然而,這些解決方案中的每一種都有其優(yōu)點(diǎn)和缺點(diǎn)。在多站點(diǎn)架構(gòu)上維護(hù)大量Drupal 8實例可能很快變得復(fù)雜和耗時,并且其優(yōu)勢之一是上線時間,可以根據(jù)結(jié)構(gòu)及其IT中的或多或少復(fù)雜的組織來緩解。
在簡要介紹了Drupal 工業(yè)化解決方案之后,本文的目的不是詳細(xì)介紹每個工具,而是提供一種可能的第三種方法,基于Micro Site模塊,以及它的許多貢獻(xiàn)的模塊。
使用Drupal 8為眾多微站提供支持
Micro Site模塊提出的多站點(diǎn)架構(gòu)的主要思想基于以下思路:
能夠像發(fā)布博客文章一樣輕松快速地發(fā)布新網(wǎng)站
實際上,它的概念可以與Typo 3提出的多站點(diǎn)解決方案進(jìn)行比較,甚至可能啟發(fā)了Micro Site模塊的大部分起源。
Typo 3允許管理員,甚至是簡單的網(wǎng)站管理員,只需創(chuàng)建一個新網(wǎng)站,配置其URL和一些基本屬性(名稱,徽標(biāo)等),將用戶分配到這個新網(wǎng)站并將權(quán)限委托給他們,然后只需發(fā)布鏈接到此新站點(diǎn)的頁面可以在內(nèi)容和管理中快速擁有獨(dú)立權(quán)限的站點(diǎn),同時通過單個界面進(jìn)行管理和維護(hù)。
與Typo 3的多站點(diǎn)解決方案一樣,Micro Site模塊旨在:
?使您能夠在同一個Drupal 8實例中驅(qū)動和管理數(shù)百個(以及更多,如有必要的)站點(diǎn)
?在專用且簡化的管理空間內(nèi)委派Micro站點(diǎn)的管理權(quán)限
?允許Micro Sites之間的內(nèi)容和用戶共享。
?盡量減少對復(fù)雜IT基礎(chǔ)架構(gòu)的修改
?允許在線發(fā)布,上線時間極短
?并從Drupal的所有模塊化中受益,使您能夠為具有不同屬性的微站提供支持
Micro Site模塊(及其外圍模塊)可以以多種方式使用:大學(xué)的每個部門或?qū)嶒炇业膶S谜军c(diǎn),活動站點(diǎn),合作伙伴站點(diǎn),品牌站點(diǎn),允許聯(lián)盟或協(xié)會為其成員提供打包的,準(zhǔn)備好的使用網(wǎng)站,同時促進(jìn)內(nèi)容共享和共同的用戶群,任何想要掌握其多個互聯(lián)網(wǎng)存在的企業(yè),以及一般來說,輕松簡單地推動和管理幾十個網(wǎng)站,從幾十個到幾百個。
Micro Site模塊的體系結(jié)構(gòu)
微站的體系結(jié)構(gòu)與Domain Access模塊非常相似,因為Drupal 8低級訪問權(quán)限系統(tǒng)用于在微站之間分離內(nèi)容,但在一個基本方面有所不同:Domain Access依賴于配置實體來定義和創(chuàng)建由單個實例提供支持的不同站點(diǎn),Micro Site模塊依賴于一個內(nèi)容實體,該實體將用于提供微站點(diǎn)的URL以及許多其他內(nèi)容,例如為Drupal 8實例的用戶提供非管理員,獨(dú)立創(chuàng)建和發(fā)布微型站點(diǎn)的權(quán)限。
通過依賴內(nèi)容實體,微站允許您隨意進(jìn)行本地自定義,簡單的站點(diǎn)構(gòu)建和主題化,只需使用Drupal 8提供的模塊化,即您希望能夠為不同類型的微站站點(diǎn)提供支持。例如:
?微站點(diǎn)的主頁由內(nèi)容實體站點(diǎn)本身構(gòu)成,因此可以隨意定制,而不必遵守主站的一般配置。
?通過簡單的站點(diǎn)構(gòu)建和主題,在微站實體上添加的所有字段都可以用于構(gòu)成微站點(diǎn)的所有內(nèi)容。因此,只需在微站提供的內(nèi)容實體上添加一些專用字段,即可通過幾次單擊和模板修改來配置微站點(diǎn)的頁腳。
?通過簡單地使用Drupal 8生態(tài)系統(tǒng),可以添加針對某種微站點(diǎn)的自定義開發(fā),復(fù)雜的業(yè)務(wù)需求。
微站,甚至可以制作咖啡的解決方案?
像任何工業(yè)化解決方案一樣,除了通用解決方案之外,微站也有其優(yōu)勢和劣勢,與其他工業(yè)化解決方案相比。如果是Drupal 8原生的多站點(diǎn)架構(gòu),因為網(wǎng)站工廠的每個實例都是一個完整的,獨(dú)立的Drupal 8站點(diǎn),基于Micro Site的架構(gòu),讓你從Drupal 8貢獻(xiàn)模塊的整個生態(tài)系統(tǒng)開箱即用。
一些模塊將能夠開箱即用,沒有特定的集成,由于它們的性質(zhì)(例如提供特定字段小部件的模塊,例如jQuery minicolors或Paragraphs模塊),其他模塊將需要稍微的通過對其配置的簡單修改(例如Matomo模塊)進(jìn)行集成,而提供內(nèi)容實體的模塊(例如參考書目和引用模塊或Simplenews)將需要更完整的集成。
Micro Sites本身簡化了用戶及其在Micro站點(diǎn)及其相關(guān)內(nèi)容上的相關(guān)權(quán)限的管理。該想法是通過即時,簡單和有效的解決方案覆蓋80%的用例。因此,Micro Site有4種類型的用戶(除了Micro Site的所有者),他們是:
?管理員:擁有所有權(quán)利的人員
?內(nèi)容管理員:對鏈接到微型站點(diǎn)的所有內(nèi)容具有修改權(quán)限的人員
?投稿者:可以發(fā)布與Micro站點(diǎn)相關(guān)的內(nèi)容,并修改自己的內(nèi)容的人員
?成員:可以簡單地查看未發(fā)布的內(nèi)容的人員
關(guān)于更復(fù)雜或更具體的需求,Micro網(wǎng)站本身并不打算對其進(jìn)行處理。但很簡單,這些需求可以通過一些改動或特定字段的添加以及通過定制模塊應(yīng)用其業(yè)務(wù)邏輯來解決。
因此,Micro Site不是能夠通過幾次點(diǎn)擊覆蓋所有使用情況的解決方案。另一方面,它為您提供了堅實的架構(gòu),管理空間以及任何更改所需的API,以達(dá)到預(yù)期的結(jié)果。對于常見的用途和需求,可以使用與Drupal 8管理不同類型內(nèi)容相同的方式創(chuàng)建和修改Micro站點(diǎn)。
微站生態(tài)系統(tǒng)
Micro Site是核心模塊,提供Site實體以及主要API。然而,僅使用Micro Site模塊,我們只能創(chuàng)建One Page類型的微型站點(diǎn),這是一個由Site實體本身創(chuàng)建的頁面。但是有幾個模塊擴(kuò)展了Micro Sites的功能,允許超越簡單的One Page站點(diǎn)的框架,主要是以下幾個。
Micro Node - 微站點(diǎn)節(jié)點(diǎn)模塊
Micro Node是允許您在Micro Site中集成節(jié)點(diǎn)(以及任何內(nèi)容類型)的模塊。因此,它允許在Master實例中配置可用于Micro站點(diǎn)的不同內(nèi)容類型。然后可以針對每種類型的Micro Site調(diào)制這些參數(shù)。我們可以在Micro站點(diǎn),多個Micro站點(diǎn)甚至所有Micro站點(diǎn)上發(fā)布內(nèi)容。
Micro Menu Menu - 微站點(diǎn)菜單模塊
Micro Menu模塊允許您創(chuàng)建菜單并將其專門分配給Micro Site。此外,它允許在編輯或創(chuàng)建內(nèi)容時自動選擇此菜單,當(dāng)您在Micro站點(diǎn)的上下文中時,允許直接將內(nèi)容與此菜單中的條目相關(guān)聯(lián)。
Micro Theme - 微站點(diǎn)主題模塊
Micro Theme模塊允許您為每個激活的主題聲明Micro Site是否可以使用它。默認(rèn)情況下,Micro Sites將使用默認(rèn)主題,但可以根據(jù)需要為每個Micro Site分配不同的主題。此外,Micro Theme模塊提供了一個界面來動態(tài)修改主題的某些顏色,使用的字體,類似于Core Color模塊中可以找到的顏色。默認(rèn)情況下,此接口提供可以配置的特定數(shù)量的顏色,可以擴(kuò)展的變量,以及為此提供相應(yīng)CSS文件所必需的,從而允許此接口適應(yīng)所使用的任何主題。
Micro Taxonomy - 微站點(diǎn)分類模塊
Micro Taxonomy模塊允許將Drupal 8實例的分類與Micro Sites集成。一方面,通過允許為每個Micro站點(diǎn)分配專用詞匯表,還通過使不同類型的Micro站點(diǎn)可以訪問公共詞匯表,允許他們在這些公共和共享詞匯表中使用或創(chuàng)建分類詞。
Micro Path - 微站點(diǎn)路徑模塊
Micro Path模塊允許您在多個Micro站點(diǎn)上自動管理相同URL的別名。因此,在兩個不同的Micro站點(diǎn)上發(fā)布的兩個內(nèi)容可以具有相同的別名。此外,此模塊還允許您為可用的內(nèi)容類型創(chuàng)建特定于Micro站點(diǎn)的自動別名模式,允許您修改在Master實例上以一般方式配置的自動別名模式。
Micro SSO - 微站點(diǎn)SSO模塊
Micro SSO模塊允許從主實例到每個Micro站點(diǎn)設(shè)置SSO身份驗證。
Micro User - 微站點(diǎn)用戶模塊
Micro User模塊允許您在每個Micro Site和/或Master實例的級別控制哪個用戶可以連接到Micro Site或Master實例。其功能范圍正在等待可能需要擴(kuò)展其功能的用例。
Micro Sitemap - 微站點(diǎn)地圖模塊
Micro Sitemap模塊允許您將Sitemap模塊集成到每個Micro站點(diǎn)的上下文中,允許您從每個Micro站點(diǎn)自定義自動站點(diǎn)地圖。
Micro Contact - 微站點(diǎn)聯(lián)系表單模塊
Micro Contact模塊允許在每個Micro Site中集成Drupal 8 Contact模塊,可以配置在Master實例上配置的哪個聯(lián)系表單用于每個Micro站點(diǎn)。請注意,Webform表單的使用可以通過Paragraph的簡單構(gòu)造來完成,允許加載和呈現(xiàn)Webform表單,因此不需要特定的集成。
Micro Simple Sitemap - 微站點(diǎn)地圖生成模塊
Micro Simple Sitemap模塊允許您為每個Micro站點(diǎn)生成sitemap.xml文件。請注意,此模塊在其當(dāng)前版本2.x中集成了Simple Sitemap模塊,因此在主實例上集成了所有參數(shù),但不排除使用更簡單的方法以自主方式生成XML站點(diǎn)地圖文件對于每個Micro站點(diǎn)。
Micro Bibcite - 微型Bibcite
Micro Bibcite模塊允許您將參考書目和引文模塊與Micro Site集成。到目前為止,僅支持此模塊提供的參考內(nèi)容實體。
這些不同的模塊可以發(fā)布能夠滿足許多編輯需求的微站點(diǎn)。
Micro Site的功能簡要概述
作為序言,由于繞過自動分配給User-1的內(nèi)容訪問控制權(quán)限,建議不要使用此特定用戶來管理具有Micro Site模塊的Drupal實例,因此也不應(yīng)使用特殊管理員角色。否則,該用戶將會看到所有Micro站點(diǎn)上發(fā)布的所有內(nèi)容,并且所有內(nèi)容都混淆在一起了,這令用戶感到不愉快。因此,您必須創(chuàng)建一個新角色,您可以為其分配除繞過內(nèi)容訪問控制權(quán)限之外的所有權(quán)限,并將此角色分配給管理員。這直到這個問題刪除uid#1的特殊行為已經(jīng)解決。
一般配置
Micro Site模塊提供了使用新的Site內(nèi)容實體創(chuàng)建和發(fā)布新站點(diǎn)的基本體系結(jié)構(gòu)。它還提供了主站實例的常規(guī)配置。要執(zhí)行的第一個操作是全局配置為Micro Sites提供支持的Master實例的基本URL,以及此實例的公共URL(可以與基本URL相同)。
我們可以全局配置Micro Sites可以使用的內(nèi)容類型。這些參數(shù)可以通過Micro Site的類型進(jìn)行調(diào)整。
我們還可以配置Micro Sites可以使用哪些詞匯表。這些參數(shù)也可以通過Micro站點(diǎn)的類型進(jìn)行調(diào)制。
創(chuàng)建微型站點(diǎn)類型
然后,可以創(chuàng)建不同類型的站點(diǎn)(單頁,通用,事件,部門,部門,品牌等),以便能夠以不同方式配置它們。
每種站點(diǎn)類型的配置可以不同,具體取決于貢獻(xiàn)模塊提供的選項,例如Micro Node或Micro Taxonomy。
因此,當(dāng)然可以在站點(diǎn)類型上添加盡可能多的字段,就像內(nèi)容類型一樣,也可以配置一些通用選項,這些選項隨后可用于將要創(chuàng)建的此類型的所有Micro站點(diǎn)。我們可以為每種類型的站點(diǎn)配置:
?為每個Micro站點(diǎn)自動創(chuàng)建專用菜單
?創(chuàng)建專門為每個Micro站點(diǎn)保留的專用詞匯表
?可以在此類型的每個Micro站點(diǎn)上管理用戶及其不同的配置文件
?每個Micro站點(diǎn)可以使用的主實例上存在的不同類型的內(nèi)容
?主實例上存在的不同詞匯表可供每個Micro站點(diǎn)使用
管理和創(chuàng)建Micro Sites
然后可以創(chuàng)建和管理Micro Sites作為Drupal 8項目的內(nèi)容類型。
Micro Site有兩種狀態(tài):已注冊和已發(fā)布。
已注冊狀態(tài)將驗證Micro站點(diǎn)的URL以及是否存在有效的虛擬主機(jī)。只要Micro Site已注冊,對Micro Site的任何訪問都會自動返回到Micro Site的URL。已注冊狀態(tài)條件訪問用于管理和創(chuàng)建與Micro站點(diǎn)關(guān)聯(lián)的內(nèi)容的菜單。換句話說,在注冊之前,無法開始創(chuàng)建與Micro Site關(guān)聯(lián)的內(nèi)容。
已發(fā)布的狀態(tài)更為典型。未發(fā)布的站點(diǎn)只能由其作者或其成員(如果他們具有相應(yīng)的權(quán)限)以及與未發(fā)布的Micro站點(diǎn)關(guān)聯(lián)的任何內(nèi)容可見。
管理微型站點(diǎn)
這里的主要思想是,簡單用戶可以完全獨(dú)立于Master實例管理微站點(diǎn)。微網(wǎng)站的管理者可能甚至不知道他的網(wǎng)站是在Drupal主實例上托管的。Micro Site具有可從Micro Site主頁上的Local Tasks訪問的管理區(qū)域。
因此,我們可以隨意定制可以構(gòu)成微網(wǎng)站管理的不同屏幕,這些屏幕與已連接到的不同字段有關(guān)。
在下面的示例中,Micro Site的默認(rèn)表單允許您修改和查看以下元素:
?Micro Site的名稱和電子郵件地址
?Micro Site的狀態(tài)
?允許填寫Micro Site頁面,其主頁和頁腳的頂部的不同字段(段落的使用允許對這些不同元素的內(nèi)容具有很大的靈活性)
?Metatag信息
?Micro站點(diǎn)的URL
?微網(wǎng)站所有者
?Micro網(wǎng)站的Logo和Favicon
另一種稱為配置的表單模式已創(chuàng)建并配置(請參閱向Drupal 8實體提供自定義表單模式)以對其他字段進(jìn)行分組以配置Micro Site行為。例如下面:
?Micro Site用戶
?此Micro Site的Matomo / Piwik配置
?此Micro站點(diǎn)的資源管理(即為此Micro站點(diǎn)編寫某些特定CSS規(guī)則的能力)
Micro Menu模塊添加了一個選項卡,可直接從Micro Site本身管理Micro Site菜單條目,而無需通過標(biāo)準(zhǔn)的Drupal管理菜單界面。
Micro Node模塊添加了一個Content選項卡,用于管理與Micro Site關(guān)聯(lián)的所有內(nèi)容,其方式與傳統(tǒng)Drupal 8實例相同。
Micro Taxonomy模塊添加了Taxonomy選項卡來管理專用于Micro Site的詞匯表,還添加了與Micro Site關(guān)聯(lián)的共享詞匯表的所有分類術(shù)語。
我們有一個參數(shù),任何貢獻(xiàn)模塊都可以使用這些參數(shù)將特定配置屏幕添加到Micro站點(diǎn)。例如,下面可以創(chuàng)建特定于Micro Site的新自動別名模式。
這個Micro站點(diǎn)管理空間的快速概述向我們表明,用戶可以直接從該空間管理和管理Micro站點(diǎn)的內(nèi)容,而無需管理訪問Drupal Master實例上的任何參數(shù)。至少在管理微型站點(diǎn)的基本和必要功能方面。
Micro Site的初始設(shè)計旨在允許無數(shù)相對簡單的網(wǎng)站的發(fā)布和管理,具有專用的管理空間,可以快速執(zhí)行常見的網(wǎng)站管理操作。Micro站點(diǎn)只在一個空間中匯集了Drupal管理功能的子集。它允許我們在Micro Site的上下文中原生使用Drupal提供的實體,幾乎沒有或沒有改變。因此,我們可以從Drupal的所有功能中受益,以滿足更高級的需求。例如,需要多語言的Micro Site嗎?只需在Master實例上激活多語言,即可輕松訪問它。
Micro Site是否可用于生產(chǎn)?
這里介紹的大多數(shù)模塊仍然是alpha版本。當(dāng)然,在API的整合,要測試的不同用例以及自動化測試方面的正確覆蓋方面,仍然有許多工作要做,這在我們切換到測試版之前是必不可少的。當(dāng)然,歡迎任何幫助來完成這次登錄。
就我個人而言,我已經(jīng)在兩個不同的項目上使用它們,反饋非常好。該生態(tài)系統(tǒng)模塊的功能覆蓋已涵蓋許多共同需求。但肯定有一些尚未涵蓋的用例需要或多或少的復(fù)雜集成。
Drupal的一些有趣方面仍然需要在Micro Site中進(jìn)行集成,例如塊管理和放置。當(dāng)然,可以使用Micro Site提供的可見性參數(shù)在Drupal Master實例級別本身管理此功能,但是出現(xiàn)的問題是該管理功能是否可以在微型站點(diǎn)中委派。但是,使用Paragraphs,甚至是新的Layout Builder,可以滿足截至目前的許多布局需求。通過相關(guān)的網(wǎng)站建設(shè)熱情,一些修飾主題和模板適應(yīng)不同的網(wǎng)站類型和基于段落的內(nèi)容架構(gòu)的選擇,無數(shù)的可能性已經(jīng)觸手可及,而無需對其他模塊進(jìn)行重大更改。
-
Drupal如何“decouple”(解耦)我是使用drupal的內(nèi)置模板構(gòu)建網(wǎng)站,還是使用drupal的解耦與 JavaScript 框架相結(jié)...
-
對下一代管理UI的定向反饋Admin UI & JS團(tuán)隊在 Drupal Europe 會議上展示了一些很大的進(jìn)步,他們?yōu)镈r...
-
分布式內(nèi)容管理概念解析創(chuàng)建一個具有多國或者多地區(qū)具有復(fù)雜內(nèi)容的創(chuàng)建和發(fā)布并且可跟蹤的項目,如果沒有一套規(guī)范的內(nèi)容管理系統(tǒng),...
13584197958