當(dāng)前位置:首頁(yè)>WordPress建站>用戶交互>WordPress 添加前端站內(nèi)信 Cartpauj PM

WordPress 添加前端站內(nèi)信 Cartpauj PM

2014-04-29:該插件長(zhǎng)期不更新,已有另外一個(gè)作者將該插件升級(jí),并且改名為 Front End PM ,具體請(qǐng)看 WordPress 前端站內(nèi)信插件 Front End PM

倡萌之前推薦過(guò)《WordPress 站內(nèi)信插件:Private Messages For WordPress》該插件功能還是比較齊全的,如果是在WP后臺(tái)使用的話,還相當(dāng)不錯(cuò),但是如果想在前端使用,就沒(méi)那么簡(jiǎn)單了,雖然作者提供了一個(gè)簡(jiǎn)單的模板,但是倡萌測(cè)試發(fā)現(xiàn),前端使用真的存在很多問(wèn)題。而且該插件已將近一年沒(méi)有更新了,沒(méi)有后續(xù)支持的插件,也是個(gè)麻煩事。

所以倡萌今天要推薦一個(gè)專門在前端使用的站內(nèi)信插件:Cartpauj PM,該插件后臺(tái)只有簡(jiǎn)單的設(shè)置選項(xiàng),所有功能都是在前臺(tái)使用。

主要特色:

  • 支持管理員設(shè)置用戶的信箱容量;
  • 支持管理員給所有用戶發(fā)送公告;
  • 有新信息時(shí)可以郵件通知;
  • 支持用戶自己設(shè)置是否接收信息、是否郵件通知;
  • 對(duì)話式的信息回復(fù),信息交流一目了然;
  • 采用所見(jiàn)即所得的BBcode(UBB)編輯器;
  • 羅列所用用戶,方便一鍵點(diǎn)擊發(fā)布信息

有待提高:

  • 前端效果實(shí)在不是一般差;
  • 收件人使用的是用戶名 username,而不是顯示名display_name(一般網(wǎng)站都只顯示用戶的顯示名),所以發(fā)站內(nèi)信需要知道對(duì)方的用戶名;
  • 目前不支持上傳附件(作者計(jì)劃實(shí)現(xiàn))
  • 要是可以添加后臺(tái)使用就完美了

已知問(wèn)題:

信息的發(fā)送時(shí)間默認(rèn)使用的是 格林尼治標(biāo)準(zhǔn)時(shí)間(GMT),和國(guó)內(nèi)時(shí)間相差 8 小時(shí)。要修復(fù)這個(gè)問(wèn)題,打開(kāi) pm-class.php 找到

current_time(‘mysql’, $gmt = 1) 將 $gmt = 1 改為 $gmt = 0  (似乎共有3處)。

默認(rèn)前端顯示效果:

cartpauj-pm-wpdaxue_com

對(duì)話式的信息流(已經(jīng)過(guò)倡萌美化):

cartpauj-pm-0-wpdaxue_com

具體效果,請(qǐng)登錄 WordPress大學(xué) 查看站內(nèi)信。

在后臺(tái)插件安裝界面搜索 Cartpauj PM 即可在線安裝,或者下載 Cartpauj PM

分享一些有用的調(diào)用代碼:

1.調(diào)用最新公告

將代碼添加到主題的 functions.php 或插件文件:

/**
 * 調(diào)用cartpauj_pm的公告
 */
function getLastAnnouncement(){
	global $wpdb; 
	// message_read = 12 表明這條是公告
	$results = $wpdb->get_results($wpdb->prepare("SELECT * FROM ". $wpdb->prefix ."cartpauj_pm_messages WHERE message_read = 12 ORDER BY id DESC LIMIT 0 , 1" , '' ));
	return $results;
}
function the_getLastAnnouncement(){
	$announcements = getLastAnnouncement();
	foreach ($announcements as $announcement)
	{
		$announce .= "<b>".$announcement->message_title."</b>: "; // 顯示公告標(biāo)題
		$announce .=" <small>(".$announcement->date.")</small>"; //顯示公告日期
		$announce .= $announcement->message_contents; // 顯示公告內(nèi)容
	}
	return $announce;
}

然后在需要顯示的地方使用下面的代碼調(diào)用:

<?php if(function_exists('the_getLastAnnouncement')) echo the_getLastAnnouncement(); ?>

2.調(diào)用當(dāng)前用戶未讀站內(nèi)信數(shù)量

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

/**
 * 獲取未讀站內(nèi)信數(shù)量
 */
function unread_messages_number(){
	//如果用戶已登錄并且啟用了 cartpauj PM 插件
	if(is_user_logged_in() && class_exists("cartpaujPM")){
		global $cartpaujPMS;
		$numNew = $cartpaujPMS->getNewMsgs();
		// 如有未讀信息就顯示提示內(nèi)容
		if($numNew) echo "您有". $numNew ."條未讀信息"; 
	}
}

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

<?php if(function_exists('unread_messages_number')) unread_messages_number(); ?>
聲明:本站所有文章,如無(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
后臺(tái)定制用戶交互

WordPress 后臺(tái)用戶列表顯示用戶最后一次登錄的時(shí)間

2013-8-30 9:36:33

用戶交互

WordPress 統(tǒng)計(jì)每天登錄的用戶數(shù)量

2013-9-5 9:40:22

23 條回復(fù) A文章作者 M管理員
  1. 豬頭

    倡萌大哥 怎么設(shè)置和你一樣的樣式啊,默認(rèn)的好難看哦

  2. 這個(gè)東東升級(jí)成fep后,調(diào)用未讀取消息的函數(shù)要改嗎??

  3. Qa123

    這個(gè)插件,用戶發(fā)送信息給管理員后,我管理員打不開(kāi)收信頁(yè)面了,但是用戶可以。

    • 網(wǎng)站編輯

      不知道你是不是改了什么代碼導(dǎo)致的,我一直沒(méi)發(fā)現(xiàn)這樣的情況

    • 網(wǎng)站編輯

      憂傷憂傷、、、 ?? ??

    • Qa123

      嗨,我找到問(wèn)題了。

      插件用的表是innode,而PHP報(bào)錯(cuò)是查詢不到表

  4. 就是界面有點(diǎn)丑

  5. doghap

    謝謝博主的分享!

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

米林县| 滦南县| 福州市| 抚州市| 水城县| 临澧县| 澎湖县| 合川市| 衡东县| 新乡县| 巴东县| 惠来县| 阿勒泰市| 军事| 宜兰县| 家居| 南郑县| 洛扎县| 营山县| 简阳市| 平顶山市| 商河县| 瓦房店市| 土默特右旗| 城市| 湘乡市| 襄汾县| 高台县| 龙山县| 建瓯市| 台南市| 米易县| 诸城市| 张北县| 绥江县| 灵宝市| 太原市| 南丹县| 滁州市| 日喀则市| 金湖县|