類別 | 學習心得

不看可惜的 … 八卦(限會員)

這篇文章是在「免費的喘息」討論區看到的,有人詢問 WordPress 要如何做到文章僅註冊會員登入後才可以閱讀,雖然我們部落格文章的性質不會常用到,不過還是收錄供大家參考,至於完整的演示 … 你已經體驗過了。 ^^

  這個方法是在「WordPress 中如何设置只有注册用户才能浏览特定的内容」文章發表的,只要將下面的代碼存成 .php,在上傳到 wp-content/plugins 啟動這個插件即可:

[code lang=”php”]<?php
/*
Plugin Name: User only
Plugin URI: http://fairyfish.net/2010/05/13/post-for-user-only/
Description:通過給 user_only 這個自定義字段設置為 true 來設置當前文章僅限於會員瀏覽。
Author: Denis
Version: 1.0
Author URI: http://wpjam.com
*/
add_filter(‘the_content’, ‘post_user_only’);
function post_user_only($text){
    global $post;
   
    $user_only = get_post_meta($post->ID, ‘user_only’, true);
    if($user_only){
        global $user_ID;
        if(!$user_ID){
            $redirect = get_permalink($post->ID);
            $text = ‘該內容僅限於會員瀏覽,請<a href="’.wp_login_url($redirect).’">登錄</a>!’;
        }
    }
    return $text;
}
?>[/code]

  如何使用這個效果呢?在新增文章時,使用文章編輯器下方的自訂欄位,在名稱欄位打上「user_only」,在欄位內容打上「true」,打好後按下方的新增欄位即可,該篇文章就變成僅註冊會員登入後才可以閱讀囉 ~~

  ~ That’s all ~ 

☆★相關文章★☆
啟動WordPress的Gzip網頁壓縮功能
啟動Wordpress的Gzip網頁壓縮功能加快網頁讀取的速度有很多種方法,其中讓網頁在輸出時透過壓縮功能,即可加速開啟及減少等待時間,這項壓縮功能叫做「Gzip 網頁壓縮」。  網站啟用 Gzip 壓縮可以幫助網站瘦身,其原理是透過網站伺服器壓縮輸出大小再傳給 Client 端,Client 端的電腦再進行解壓縮,可以節省許多網路頻寬,而啟動 Wordpress 的 Gzip 網頁壓縮功能有 2 種方法,以下: 透過 PHP:使用此方法的前提是伺服器須有支援「Zlib Compression Functions」,且當 WordPress 版本更新時,必須再重新加入此語法。修改的檔案是 Wordpress 根目錄的 index.php,請該檔案的「<?php」之後加入「ob_start('ob_gzhandler');」語法即可。 利用 .htaccess:這方法是透過 Apache 的「Enabling Compression」,請在 Wordpress  根目錄的 .htaccess 檔案加入以下語法(如果沒有請自行建立):[code lang="php"]<IfModule ...
繼續閱讀
將WordPress評論Ajax化
這是在《Willin Kan 的博客》這一篇「WordPress 內置嵌套評論專用 Ajax comments」文章挖到的寶,之前我們部落格使用F2cont也有將評論Ajax化,主要是發表評論後不需要再刷新頁面,就可以看到剛剛發表的評論,這樣可以降低系統的Loading,這對部落客真的是國寶級的好物。  有關安裝的步驟很簡單,請先點→這裡←下載程式,解壓縮後將這2個檔案放到你使用佈景的所在目錄,並修改使用佈景的 header.php: 找到[code lang="php"]<?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>[/code] 用下面幾行取代:[code lang="php"]<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script><?php if ( is_singular() ){ ?><script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/comments-ajax.js"></script><?php } ?>[/code]  以上就完成嚕,如果你佈景的評論樣式夠標準,其它的都不用修改,由於我們部落格佈景的評論樣式不是很標準,所以直接使用安裝方法還是會出問題,而willin大大針對使用 ...
繼續閱讀
Party Time (A good combination of 5 MVs) – PART II
Part II 在一堆唇印轉場後,就該是你眼睛閃亮的時候了,因為後面就陸續出現養眼的壯熊,原木不知道這支音樂的取名,用 iPhone 的 SoundHound 竟然也搜尋不到,知道的朋友留言告知一下囉!  壯熊 MV 音樂還蠻不錯聽的,旋律給人有種鹹濕又煽情的 FU,看幾個壯熊在畫面扭來扭去、摸來摸去,還用噴出來的香檳影射射 ... 受不了了,原木要去看同學片了,ㄏㄏㄏ ... 這部 MV 結束就接著「All the lovers」影片,MV而且接得將將好,也很不錯,影片看完了,凱莉姊姊是不是有給你想 HI 的 FU 呢?換你來做影片的主角囉,哈哈哈 ... 喜歡的朋友點下面的連結來收錄5部完整的 MV 哦![download id="24"]
繼續閱讀
使用Facebook Connect將WP與FB完整結合(下)
今天多寫了這篇文章,主要是因為換了Wordpress的Cache,在看到「高登工作室」的「裝個Hyper Cache快取外掛吧!」這篇文章,原木就移除WP Super Cache,試試高登強力推薦的Hyper Cache,結果瀏覽的速度從台鐵變成高鐵,推薦推薦!!  Hyper Cache安裝設定比WP Super Cache簡單許多,這篇文章原木就不再介紹了。在前一篇「使用Facebook Connect將WP與FB完整結合(中)」的文章有介紹在使用WP Super Cache時,必須在 .htaccess 加入「YOURAPIKEY_user」的設定,才能讓Facebook Connect正常使用與登入,但是還是會有些問題,1其一在首頁登入後,必須要自行再Reload頁面一次,不然還是會看到沒有登入的畫面(雖然實際上已經登入);2其二就是在寫評論的時候,雖然是有勾選「將此回應分享到 Facebook」,但是送出後FB的塗鴉牆視窗就是不會出現,這非常確定是WP Super Cache造成的。  現在使用Hyper Cache除了速度變更快之外,Facebook Connect使用與登入上也完全沒有問題,真的是太開心了,不過還是有兩個地方要設定一下,1第一就是「Home caching」要勾選,也就是首頁不要Cache,這樣才不會出現上一段WP Super Cache的第一個問題,當然,也會造成首頁開啟的速度比較慢喔;2第二就是在「Cookies matching」加入「YOURAPIKEY_user」,這樣就能讓你Wordpress的Facebook Connect與Cache相處愉快!^^  ~ That’s all ~
繼續閱讀
避免WordPress自動加上nofollow標示
如果你也是部落客,通常在留下評論時,也都會順手將你部落格的網址留下,但偏偏Wordpress都會將你留下的網址,加上nofollow這段敘述,讓搜尋引擎完全不會理會,到底nofollow是什麼東東啊?  nofollow屬性最初是用在網頁層級的中繼標記裡,告訴搜尋引擎不要遵從(即檢索)網頁上的任何對外連結。為了鼓勵大家多多留言,原木怎麼可以讓最毒婦人心的「不要發肉蜜」,讓大家留下的網址白留呢?!況且,大家都喜歡「發肉蜜」啊,呵呵喝 ...  將nofollow敘述拿掉,除了可以利用 「NoFollow Free」外掛,也可以自行修改 wp-includes/comment-template.php 檔案,找到在第 140 行「function get_comment_author_link()」這一段,在第 148 行有個「$return = "<a rel="external nofollow" href="$url">$author</a>";」敘述,將nofollow拿掉就可以嚕,真的是快、狠、準 ~ That's all ~  我們已經拿掉nofollow了,相信對大家網站的 SEO 會有不少幫助,也希望大家多多留言啦! ^^後記  每次 Wordpress 更新都要手動改一次,還真的有點麻煩,所以建議使用外掛,有興趣的朋友可以到 http://wordpress.org/extend/plugins/nofollow-free/ 下載此外掛,若要中文化,可下載 http://images.steachs.com/Files/lang.zip 繁中語系。
繼續閱讀
將WordPress標籤雲彩色化
今天在「阿茂的隨手札記」看到一篇如何「輕鬆將WordPress標籤雲彩色化」的文章,這是不需要安裝Plugin就可以實現,方法非常簡單,只要將Code插入使用中的佈景即可達成,原木特將此方法收錄,供以後自行參考使用,也分享給Wordpress使用者。  WordPress預設的標籤雲只有一種表現方式,就是所發文章的標籤雲類別越多,該標籤的字體越大,但是這樣顯得非常單調,而以下的方法則是不需要經過Plugin就可以讓標籤雲彩色化哦! 將下面Code插入 wp-content/themes/目前使用佈景/functions.php 檔案中的 <?php 之後:[code lang="php"]//Start of colorful tag cloudfunction colorCloud($text) {$text = preg_replace_callback('|<a (.+?)>|i', 'colorCloudCallback', $text);return $text;}function colorCloudCallback($matches) {$text = $matches[1];$color = dechex(rand(0,16777215));$pattern = '/style=('|")(.*)('|")/i';$text = preg_replace($pattern, "style="color:#{$color};$2;"", $text);return ...
繼續閱讀
WordPress評論回應郵件通知
這還是在《Willin Kan 的博客》挖到的寶,也就是當A回應B發表的評論,系統會發一封E-Mail通知B,這樣可以增加該篇文章的評論互動,當然,你的伺服器一定要有 mail() 功能哦!  這個不是插件,只要修改你使用中佈景的 functions.php 檔案,將代碼放置 <?php ..... ?> 區域內即可,《Wordpress評論回應郵件通知》的代碼有三種,請依需求點取下面的標題: 有勾選欄位,由訪客決定是否要回應郵件通知。 無勾選欄位,由管理者決定在什麼條件下發郵件。 所有回覆都發郵件。  先補充說明,如果你使用的佈景主題,評論式樣是使用 comments 和 trackbacks/pingbacks 分離(如原木使用的主題),請將下面所有的:  [code lang="php"]get_comment_link($parent_id)[/code]  修改成:  [code lang="php"]get_comment_link($parent_id, array('type' => 'comment'))[/code]  有勾選欄位,由訪客決定是否要回應郵件通知(會在模板自動加勾選欄,如果不想自動加,可把後面一小段刪除。)[code lang="php"]/* comment_mail_notify v1.0 by willin kan. (有勾選欄, 由訪客決定) */function comment_mail_notify($comment_id) ...
繼續閱讀
如何在 WordPress 做一個歡迎頁
今天開始來到我們家有一個新的大門了,由於我們有兩個部落格系統,舊的部落格是用 F2cont 架的,新的則是現在使用的 Wordpress,為了讓大家選擇要去我們的哪一個家,所以好友小潘幫我們家設計了一個歡迎頁。  Wordpress 的首頁是抓自己的 index.php,所以大家輸入網址後一定是讀取 index.php,這樣歡迎頁的 index.html 就無法當作第一個頁面來讀取,而 Wordpress 又會一直循環調用 index.php,如果更改 .htaccess 將首頁設定使用 index.html,那麼落格的文章就叫不出來了,怎麼辦呢?很簡單 ... 以下 Step by step: 將下面的代碼增加到根目錄的 .htaccess:[code lang="php"]<IfModule dir_module>DirectoryIndex index.html index.php</IfModule>[/code] 修改 wp-includes/rewrite.php 檔案,找到下面的敘述:[code lang="php"]var $index = ...
繼續閱讀
利用CSS讓有超連結圖案出現透明效果
今天在「WordPress 研究者日記」看到這篇「CSS透明特效:opacity」的文章,就是利用CSS的opacity語法,讓滑鼠移到有超連結的圖案上時,該圖案會出現透明的效果。  將以下代碼加入到 wp-content/themes/當前使用的佈景主題/style.css 檔案:[code lang="css"]a:hover img{ opacity: 0.55; filter:alpha(opacity=55); /* IE only */}[/code]  說明上面的數值,數值為「1」代表不透明,所以數值越小就越透明,而filter:alpha那段是給IE瀏覽器用的,數值為「100」代表不透明。  ~ That’s all ~
繼續閱讀
修正推文到FB中文亂碼問題(Facebook Open Graph WordPress Plugin 3.0.7)
有在使用 Sociable! 的 Facebook Open Graph WordPress Plugin 3.0.7 版本的網友應該都有一個痛,就是將文章推到 Facebook 時,中文會變成亂碼,這個問題已經被 Derek 大大解決囉!  解決這個方法有二,直接下載 Derek大大提供的檔案,覆蓋掉 wp-content/plugins/ fbconnect/ fbConnectInterface.php 就可以了,或者自行修改 fbConnectInterface.php 檔案,方法如下: 找到 103 及 104 行:[code lang="php"]echo '<meta name="og:site_name" content="'.htmlentities(get_bloginfo('name')).'"/>';echo '<meta ...
繼續閱讀
啟動WordPress的Gzip網頁壓縮功能
將WordPress評論Ajax化
Party Time (A good combination of 5 MVs)
使用Facebook Connect將WP與FB完整結合(下)
避免WordPress自動加上nofollow標示
將WordPress標籤雲彩色化
WordPress評論回應郵件通知
如何在 WordPress 做一個歡迎頁
利用CSS讓有超連結圖案出現透明效果
修正推文到FB中文亂碼問題(Facebook Open Graph WordPress Plugin 3.0.7)