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