我的第一個 WordPress 外掛,PIP – Per Post Privacy,文章圖片部份隱藏

diarm pip

WordPress 拿來寫網誌真的蠻不錯的,功能豐富、畫面看起來又專業。寫的東西漸漸也多了,但當要寫一些跟私人的生活有關的家庭紀錄、外出旅遊,就會有點顧慮隱私的問題。畢竟不是每個人都喜歡 “露臉”,但如果網誌裡都沒有自己或朋友的一些照片,感覺又很空虛。於是就找了找,看有沒有相關的外掛程式可以達成這樣的功能。

可惜看了看好像沒有完全符合需求的外掛,我心裡的目標是

每一篇要可以設定密碼,有密碼的人才可看到特定的圖片。沒密碼的人,就是看到那些沒設限的圖片。

捲起袖子自己來

講的簡單,做起來可能也不難。但是我不是 web guy,要做出這些東西還是要先稍微瞭解一下 WordPress 的架構,JavaScript 和 PHP 還要再複習一下。最後都找不到,只好自己動手把它做出來了,也是有點佩服自己啦,哈!要不是不想露臉的動機太強,又不想然回憶留空,我還真的沒這動力做,最後花了兩天把東西給寫出來了。取名叫 PIP, Per Image Privacy。

要直接從頭寫外掛當然不容易,但改就比較快。我先拿 Quick-Adsense-Reloaded 來練習修改圖檔超連結,把現有的圖片 Link 另外指向一張警示的圖片。接著拿 Page-Links-To 來練習做設定頁面,和儲存使用者輸入。最後把這兩個結合在一起,以 Page-Links-To 當模版,把他改成用來存密碼。然後加上 Quick-Adsense-Reloaded 學到的 ‘the_content’ filter 修改文章的技巧,來檢查使用輸入的密碼是否符合。若是,就顯示原圖。不然就顯示預設的圖片。

每個圖片或超連結含有指定的關鍵字,就會執行這項取代。圖片可以用CSS自定的類別(mzpip)來加,圖片的超連結可以在連到圖檔後加上參數(?class=mzpip)的方式來完成。就這樣,就完成我第一個外掛了。

給自己拍拍手!!!!

 

下面是一個正常的圖片

接下來是受保護的圖片

 

此時應該會看到第二張圖顯示被屏蔽,若圖片有超鏈結,點下去就會叫你輸入密碼(密碼:piptest),然後重新載入就可以看到圖片了。如果檔案沒有超連結,可以利用頁首的圖檔按鈕 <PIPIT> 和 <DEPIP> 來隱藏和顯示。當然,如果你是該文章的作者或管理員,就不會受到這種限制,這主要是針對未登入的訪客功能。

目前打算自己先用一陣子看看,等過一陣子覺得穩定不錯,看可不可以也分享到 WordPress 的官方去,出國比賽,為戰爭光!

Latest Comments

Leave a Reply