當(dāng)前位置:首頁(yè)>WordPress建站>用戶交互>WordPress文章收藏插件:WP Favorite Posts

WordPress文章收藏插件:WP Favorite Posts

倡萌最近一直在考慮 WordPress大學(xué) 的設(shè)計(jì)問(wèn)題,尤其是如何做好注冊(cè)用戶體驗(yàn)。考慮添加一個(gè)文章收藏的功能,讓大家收藏自己喜歡的文章,然后在一個(gè)頁(yè)面生成列表,并且在側(cè)邊欄顯示最近收藏的文章,這樣一來(lái),大家以后就可以很方便找到自己需要的文章。于是找到了 WP Favorite Posts 這個(gè)WordPress文章收藏插件,試了一下,感覺(jué)不錯(cuò)。

WP Favorite Posts 簡(jiǎn)介

WP Favorite Posts 是一個(gè)不錯(cuò)的WordPress文章收藏插件,可以在文章頁(yè)面中添加收藏按鈕,用戶可以點(diǎn)擊收藏自己的文章,并且可以在專門的頁(yè)面中顯示自己收藏的文章,還支持“最近收藏的文章(每個(gè)人看到自己的)”“全站收藏次數(shù)最多的文章”這兩個(gè)小工具。

最值得一提的 WP Favorite Posts 通過(guò)瀏覽器cookie和數(shù)據(jù)庫(kù)兩種方式存儲(chǔ)用戶收藏?cái)?shù)據(jù),也就是說(shuō),游客也可以收藏文章,當(dāng)然了,游客的收藏?cái)?shù)據(jù)是通過(guò)cookie保存的,如果刪除了瀏覽器的cookie,就丟掉了收藏?cái)?shù)據(jù)了,所以建議注冊(cè)用戶后收藏,就可以保存在數(shù)據(jù)庫(kù)中,不會(huì)丟失了。

WP Favorite Posts 安裝設(shè)置

1.在后臺(tái)插件安裝頁(yè)面 搜索 WP Favorite Posts  在線安裝,或者 下載WP Favorite Posts

2.啟用以后,在 設(shè)置 – Favorite Posts ,可以進(jìn)行相關(guān)設(shè)置(看不懂英文的,就使用翻譯工具翻譯吧)

wpdaxue.com-201301319

可以設(shè)置各種提示語(yǔ)

wpdaxue.com-201301320

設(shè)置好以后,就可以使用該插件了。

WP Favorite Posts 使用方法

1.“收藏鏈接“的顯示方式

你可以在第一個(gè)圖中的界面,選擇自動(dòng)插入文章頭部或尾部,或者通過(guò)在 single.php 或 page.php 的主題文件中使用下面的代碼自定義位置:

<?php if (function_exists('wpfp_link')) { wpfp_link(); } ?>

如果你只希望在某些文章中才顯示收藏鏈接,那你可以在編輯文章的時(shí)候,添加下面的簡(jiǎn)碼到文章中即可:

[wpfp-link]

2.小工具調(diào)用。你可以在 外觀 – 小工具 看到可用的兩個(gè)小工具,自己設(shè)置一下即可。

3.添加收藏列表頁(yè)面。這個(gè)頁(yè)面就是用來(lái)顯示用戶所有搜藏的文章的頁(yè)面,你可以在 頁(yè)面 – 新建頁(yè)面,然后在內(nèi)容中添加下面的調(diào)用代碼,就可以顯示用戶的收藏列表(每個(gè)用戶只能看到自己的收藏列表)

[wp-favorite-posts]

wpdaxue.com-201301321

WP Favorite Posts 高級(jí)技巧(備用)

下面的是一些高級(jí)功能,倡萌在論壇看到的,還未測(cè)試,記錄一下,方便以后使用。

1.調(diào)用文章的收藏次數(shù)

最簡(jiǎn)單的方法在循環(huán)中使用下面的代碼即可直接調(diào)用:

<?php echo wpfp_get_post_meta(get_the_ID()); ?>

如果上面的方法不生效,可以考慮下面的方法:

在主題的 functions.php添加下面的代碼

function wpfp_get_current_count() {
    global $wpdb;
	$current_post = get_the_ID();
    $query = "SELECT post_id, meta_value, post_status FROM $wpdb->postmeta";
    $query .= " LEFT JOIN $wpdb->posts ON post_id=$wpdb->posts.ID";
    $query .= " WHERE post_status='publish' AND meta_key='wpfp_favorites' AND post_id = '".$current_post."'";
    $results = $wpdb->get_results($query);
    if ($results) {
        foreach ($results as $o):
            echo $o->meta_value;
        endforeach;
    }else {echo( '0' );}
}

使用下面的代碼調(diào)用

<?php wpfp_get_current_count(); ?>

2.收藏列表 的另一種調(diào)用方法

如果想通過(guò)直接在主題文件中修改顯示收藏列表,可以使用下面的調(diào)用函數(shù)

<?php wpfp_list_favorite_posts(); ?>

3.獲取某個(gè)用戶的收藏?cái)?shù)量

該插件默認(rèn)使用自帶的 wpfp-page-template.php 文件來(lái)顯示收藏列表,如果你要在列表上方顯示收藏?cái)?shù)量,可以參考下面的代碼:

    if ($favorite_post_ids){
        $user_favorite_count = count($favorite_post_ids);
        echo '<p>您已收藏了 '.$user_favorite_count.' 篇文章</p>';
    }else{
        echo '您目前還沒(méi)有收藏任何文章!';
    }

4.刪除文章后統(tǒng)計(jì)不準(zhǔn)確

網(wǎng)站刪除了一些文章,如果用戶之前收藏過(guò)這些文章,他們的收藏?cái)?shù)據(jù)中仍舊包含這些文章的ID,導(dǎo)致他們的收藏?cái)?shù)量統(tǒng)計(jì)不準(zhǔn)確。

找到插件的 wpfp-page-template.php 文件,按照下圖所示添加代碼:

        /*remove deleted posts cmhello*/
        foreach ($favorite_post_ids as $id) {
            if ( FALSE === get_post_status( $id ) ) {
                $favorite_post_ids = array_diff($favorite_post_ids, array($id));
                $favorite_post_ids = array_values($favorite_post_ids);
                wpfp_update_user_meta($favorite_post_ids);
            }
        }
        $favorite_post_ids = wpfp_get_user_meta();
        /*//remove deleted posts cmhello*/

2016-09-09_103017

聲明:本站所有文章,如無(wú)特殊說(shuō)明或標(biāo)注,均為本站原創(chuàng)發(fā)布。任何個(gè)人或組織,在未征得本站同意時(shí),禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書(shū)籍等各類媒體平臺(tái)。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。

給TA打賞
共{{data.count}}人
人已打賞
歡迎關(guān)注WordPress大學(xué)公眾號(hào) WPDAXUE
用戶交互

WordPress添加仿異次元百度分享工具條

2013-1-26 6:19:00

用戶交互

自動(dòng)同步文章到騰訊、新浪等微博平臺(tái)(支持Windows Live Writer)

2013-2-25 6:29:00

62 條回復(fù) A文章作者 M管理員
  1. goooob

    請(qǐng)問(wèn)怎么實(shí)現(xiàn)翻頁(yè)功能,謝謝啦

    • 網(wǎng)站編輯

      這個(gè)插件的收藏列表,本來(lái)就支持分頁(yè)顯示

  2. Virtual

    為什么我安裝了這款插件之后,打開(kāi)首頁(yè),首頁(yè)就只有一個(gè)導(dǎo)航欄了,這是為什么呢?誰(shuí)能幫我看一下?

?
個(gè)人中心
購(gòu)物車
優(yōu)惠劵
今日簽到
有新私信 私信列表
搜索

眉山市| 若尔盖县| 荆州市| 靖西县| 韶山市| 镇江市| 隆昌县| 扬州市| 平谷区| 云林县| 特克斯县| 宝山区| 射洪县| 晋江市| 邢台县| 洛阳市| 大邑县| 邯郸市| 长春市| 诸城市| 樟树市| 石阡县| 宁陕县| 淳安县| 溧阳市| 遂昌县| 左贡县| 鄯善县| 南皮县| 南通市| 乌海市| 霍城县| 白城市| 时尚| 浦城县| 沁源县| 阿克苏市| 汝南县| 饶河县| 天祝| 荔浦县|