WordPress 禁止顯示頁面 – 對管理員以外角色隱藏特定頁面

WordPress 禁止顯示頁面 內容綱要:

1. 加入函數對管理員以外角色隱藏特定頁面

當網站中具有多人共同編輯的情況下,為了防止其他具有編輯權限的工作同仁不小心修改到將已經建立好的網頁內容,除了安裝外掛來設定每一個身分更細的編輯項目外,也能以加入函數的方式將指定頁面隱藏起來。本篇文章分享的函數只需要將查詢到的頁面 ID 放入到指定位置,更新後就能夠生效,如果說只是單純想要隱藏頁面,又不想安裝多餘的外掛空耗主機資源,那麼就可以考慮使用此次教學說明的函數。

另外要做個提醒,加入任何自定義的函數前都請先確認 WordPress 版本(本次分享的函數在 WordPress 5.0 以上版本測試過)以及完成網站備份,以免網站發生錯誤無法還原。

WordPress Codex hook:pre_get_posts

WordPress Codex:Global Variables

WordPress Taiwan 正體中文下載點:https://tw.wordpress.org/releases/

• 函數說明與隱藏頁面效果

第一步:查看頁面 id 最快的方式,就是在後台中將游標移至要查詢的頁面項目上,在左下角就會顯示此頁面的 id 號碼,如下圖所示。

WordPress 禁止顯示頁面

第二步:下面的 function 首先以 add_action 定義 hook 為 pre_get_posts ,函數名稱為 exclude_this_page ,接者再以 $query 執行變量查詢。在 global 全局中給定變數為 $pagenow 、$current_user,再以 if 條件式給定當登入身份(user_roles)為網站管理員(administrator)時,返回正常查詢,也就是頁面均顯示,而當登入身份為編輯(editor)時,則執行 post__not_in,id=3 的頁面將不予顯示。

第三步:那進入佈景主題編輯器,選擇子主題後在 function.php 檔案結尾處加入函數,更新前記得修改 array(3) 中的數值為想要隱藏的頁面 id ,如果要隱藏多個頁面,使用逗點區隔即可,像是 array(3,4,5) 。

WordPress 禁止顯示頁面

第四步:筆者新增一個權限為編輯的使用者。

WordPress 禁止顯示頁面

第五步:在網站管理員權限的登入狀態下,ID 為 3 的頁面可以顯示。

WordPress 禁止顯示頁面

第六步:以編輯權限登入後,ID 為 3 的頁面會自動隱藏。

WordPress 禁止顯示頁面

 

結語:

今天的教學到這裡告一段落了,不要忘記在右側訂閱鵠學苑電子報,確保收到最新 WordPress 教學文章,如果有網頁設計相關需求,或者想了解最新網站知識,也可以到 鵠崙設計 做線上免費諮詢喔!我們下次的教學見~

WordPress 客製 相關教學文章:

WordPress 文章摘要設定 – 使用函數設定不同文章類型的摘要長度

WordPress 自訂媒體庫,使用函數限制文章特色圖片最小寬度及高度

WordPress 客製後台 – 變更不同狀態下文章列表欄位背景色

WordPress 自訂後台 – 使用 jQuery 限制頁面、文章標題字數

WordPress shortcode 函式教學 – 建立自定義短碼顯示文字及圖片

WordPress 禁用 Gutenberg 編輯器的兩種方法(外掛與函數)

網站架設知識推薦閱讀:

Astra 2.0 更新,超過 40 萬網站架設的 WordPress 主題推薦!

Elementor 網頁編輯器 突破 300 萬下載次數,最受歡迎的外掛!

Google FAQ 結構化資料啟用,讓問與答在搜尋結果中直接呈現

鵠學苑

鵠學苑

我們是由一群熱愛 WordPress 網站架設的同好所組成的團隊,希望可以將這套 頂尖的 CMS 管理系統推廣給想要架站的朋友們,並且能夠在過程中互相交流心得,讓網站架設過程變得更有效率!

訂閱電子報

立即訂閱鵠崙設計(鵠學苑)!我們將不定期發送架站教學文章、最新網站版型介紹以及網頁設計最優惠價格!

熱門文章

最新文章

相關文章

標籤雲

Sign up for our Newsletter

Click edit button to change this text. Lorem ipsum dolor sit amet, consectetur adipiscing elit

Scroll to Top