現在WordPress已經不僅僅是一個博客了,更多時候很多人都把WordPress當功能強大的CMS使了,WordPress之所以越來越受歡迎,主要在于它強大的擴展性以及良好的社區支持,看看我博客里的WordPress教程就知道了。今天,我將給你介紹一個新的WordPress擴展功能,文章只允許特定用戶閱讀。如果你不喜歡此功能,可以忽略以下內容!
WordPress本身也提供了相應功能來實現這個目的,包括文章私有和文章加密等,但是這些功能都比較大一,如何限定授權用戶和文章的范圍呢?本文將給你介紹這方面的內容。
一、某個分類/標簽的文章只允許登陸用戶閱讀
網站的訪客最基本的可以分成兩類,一類是非注冊用戶,另一類是登陸用戶,很多論壇的就是這樣區分用戶,部分內容只能登陸后查看,之前我寫了一個插件Login to view all來讓WordPress來實現類似功能,但是只能對單篇文章起作用,如果想要實現某個分類/標簽的文章只允許登陸用戶閱讀,可以用文本編輯器打開當前主題目錄下的single.php,查找:the_content,可以找到類似代碼:the_content(...),(注:…表示未知內容,不同主題不太一樣),將其改成:
這樣分類別名或名稱為 music 和 post 的分類下的文章內容就只對登陸用戶開放了,游客將會看到提示"請登陸后閱讀本文!",如果你想再添加一個分類images,可以將 array( 'music', 'post' ) 改成 array( 'music', 'post', 'images' ),更多依次類推;如果只限定一個分類music可以寫成 in_category( 'music' ) 。如果是限定含有某些標簽的文章只對登陸用戶開放,可以將以上代碼第一行改成:
music和news為標簽的名稱或別名,多個標簽的寫法跟分類相同!
二、某個分類/標簽的文章只允許特定角色的注冊用戶閱讀
WordPress站點的注冊用戶還可以分三六九等,包括訂閱者、投稿者、管理員等等,對于已經登陸的注冊用戶,同樣可以根據用戶的角色來決定是否有權閱讀文章,在第一部分內容的基礎上再加個限制條件就可以了,將第一部分代碼的第 2 行改成:
這樣等級小于 3 的注冊用戶將無權閱讀分類music和news下的文章,文章標簽的限定類似,詳見第一部分的說明。WordPress注冊用戶的等級參見以下說明:
三、某個分類/標簽的文章只允許知道密碼的用戶閱讀
如果你想給某個分類或標簽下的文章全部添加密碼,只有知道密碼的用戶才能閱讀這些文章,你可以使用我寫的WordPress插件:Post Encryption And Decryption,或者看這篇教程操作:WordPress加密某個分類的所有文章
補充說明:
按照以上各方法修改后,搜索將無法收錄這些文章,如果你希望搜索引擎收錄這些文章同時又限定用戶范圍,可以再添加一個限定條件,將第一部分代碼的第 2 行改成:
限制標簽、用戶等級等的修改方式一樣!另外,如果你的Feed是全文輸出的話,其他用戶還是可以通過訂閱看到相關的內容的!最后一點,以上所做的修改不是完全隱藏文章,所有用戶都可以看到文章的標題,如果你想讓未授權的用戶連標題都看不到,請自行解決,或者可以參考下文:WordPress技巧: 對游客隱藏部分文章
上一篇 php中ip地址轉換為數字方法