您在這裡

Drupal7 淺談文章上下架這檔事

前言

身為一個內容管理系統 (CMS) 管理內容上下架是非常基本的功能,Drupal 也不例外,既然扯到內容,就會有權限的操作管理,不知道 Drupal 的已發表/未發表權限是否困擾著你,如果要開啟權限給角色,勢必要開啟管理內容這項權限,開啟這項權限就能讓角色控制 Node 的作者資訊以及發佈選項可是這樣的權限控管真的是太大了,還必須額外解釋首頁推薦置頂這些功能的差異,身為這麼一個強大的系統,以及這麼彈性的架構,我們一定會有更好的解決方式。

如果你勾起了管理內容權限應該會看到上圖的情況。

解決方式

所以我們前面說了那麼多,只能靠額外裝模組去解決這件事情,又或者是用前端將其餘的選項隱藏起來,那麼有以下這些模組可以推薦大家使用。

推薦使用的模組:

模組簡介

Override Node Options

此模組解決了管理內容權限太大的問題,他將已發表首頁推薦置頂作者發佈時間的權限給細分出來,而且是每個內容類型 (Content Type) 所以我們就可以使用這個模組,開啟我們想要的權限,當然我們的已發表權限也已經解決了。

Publish Content

此模組跟上述的 Override Node Options 比起來就簡單了一點,此模組只專注於發表/未發表文章這件事情,並沒有太多其他的功能。他好用的地方在於,提供一個方式讓使用者直接將文章上下架,當然他是受權限控管的。

詳細介紹

說到這,各位心理大概可以知道這兩個模組之間的差異在哪了吧,如果還是不清楚,可以參考以下的操作教學,當然在使用這些模組之前,記得先將管理內容的權限取消。

Override Node Options 模組介紹

當模組安裝好後,我們可以在權限看到 Override Node Options 新增了許多權限。

接著我們就可以選擇要開啟的權限,在此以是否能發佈文章權限作為範例。

設定完成之後,只讓使用者可以看到控制發表權限的選項了。

Publish Content 模組介紹

接著介紹 Publish Content 這個模組,在模組簡介時就提到,這個模組的設定比較簡單,並沒有像 Override Node Options 提供細微的設定,此模組只專門處理發表權限,所以只有很簡單的設定。

首先先讓我們看到admin/config/content/publishcontent路徑下的設定。

Quick publish method 可以選擇要顯示的方式。
CONTENT TYPES 就是選擇想要啟用的內容類型。

預設 Tabs 的效果就是這樣。

當然,編輯畫面也會是只有發佈選項

當我們按下 Unpublish 的頁籤時就會看到以下畫面。

如此一來這個模組也是可以處理上下架的問題。

view_unpublished 模組介紹

那麼使用剛剛提的兩個模組一定會發現一個問題,角色是沒有權限可以觀看未發表文章的,儘管你打勾了檢視文章沒有發佈文章。這個權限。所以這個模組解決了這個權限問題,當然這個模組也只有權限設定。

裝了這麼模組之後就可以讓其他角色看到未發表的權限了。

結論

所以就這樣看來,我們已經解決了讓使用者可以上下架文章的問題了。 view_unpublished 這個模組基本上是一定要裝的,至於要選擇 Override Node Options 或是 Publish Content 就看在使用者是否有需要其他權限,如果只須簡單的上下架權限就只需要 Publish Content 就可以了。

你有使用過以上模組,或是覺得哪個好用嘛,又或是有其他相同功能的模組,可以在下面提出來跟我們一起討論喔。