你好,我看到评作文上usercard里有粉丝数显示,我模赞和仿威望的方法输出没有用...不知道你是怎么实现的。谢谢!

在动态盒子里加了这一句 'fans_count':result.fans_count,
在aw_template.js里加了 '<span>' + _t('粉丝') + ': <em class="aw-text-color-oragne">{{fans_count}}</em></span>&nbsp;&nbsp;' 
已邀请:

Alu - Wecenter、Discuz 二次开发联系QQ:13505491(www.cncal.cn)

赞同来自: zhengqiang kala gxylsea seeyou zhihuilun MartiaHiblite更多 »

优化的修改方法,不需要重复查询数据库:
需要修改三个文件:
static\js目录下:
functions.js修改注明: 'agree_count': result.agree_count,下面添加:'fans_count': result.fans_count,

//动态插入盒子
$('#aw-ajax-box').html(Hogan.compile(AW_TEMPLATE.userCard).render(
{
'verified' : verified,
'verified_enterprise' : verified_enterprise,
'uid': result.uid,
'avatar_file': result.avatar_file,
'user_name': result.user_name,
'reputation': result.reputation,
'agree_count': result.agree_count,
'fans_count': result.fans_count,
'signature': result.signature,
'url' : result.url,
'category_enable' : result.category_enable,
'focus': focus,
'focusTxt': focusTxt
}));

aw_template.js文件对应着下面改:

'<p class="aw-user-center-follow-meta">'+
'<span>' + _t('威望') + ': <em class="aw-text-color-green">{{reputation}}</em></span>'+
'<span>' + _t('赞同') + ': <em class="aw-text-color-oragne">{{agree_count}}</em></span>'+
'<span>' + _t('粉丝') + ': <em class="aw-text-color-oragne">{{fans_count}}</em></span>'+
'</p>'+

\app\people目录下
ajax.php文件'agree_count' => $user_info['agree_count'],下行增加:'fans_count' => $user_info['fans_count'],

H::ajax_json_output(array(
'reputation' => $user_info['reputation'],
'agree_count' => $user_info['agree_count'],
'thanks_count' => $user_info['thanks_count'],
'fans_count' => $user_info['fans_count'],
'type' => 'people',
'uid' => $user_info['uid'],
'user_name' => $user_info['user_name'],
'avatar_file' => get_avatar_url($user_info['uid'], 'mid'),
'signature' => $user_info['signature'],
'focus' => ($user_follow_check ? true : false),
'is_me' => (($this->user_id == $user_info['uid']) ? true : false),
'url' => get_js_url('/people/' . $user_info['url_token']),
'category_enable' => ((get_setting('category_enable') == 'Y') ? 1 : 0),
'verified' => $user_info['verified']
));

bfjjcg - www.pingmeibang.com

赞同来自: Jaffe zhengqiang Jeefy jamiewq

这个问题研究了很久的,业务不熟害死人啊,调试了两晚上才搞定,直接在js加入是不会生效的,需要在程序里面先调用出来数据。
(PS题外话:官方能不能别把函数的注释删除了,从2.1beta2开始用文件对比的方法升级的,看见好多注释被干掉了,嘿嘿@zhengqiang


一:app/people/ajax.php 里面

大楷106行的位置或者搜索“H::ajax_json_output(array(” 找到代码
在之前添加如下代码

$fensi= $this->model('account')->fensi($user_info['uid']);

在紧接着的下面找到“'verified' => $user_info['verified'],” 回车换行添加一句
'fen' => $fensi,
注:查询单个用户被关注的数量,model里面我自定义了一个函数 fensi。



二:models/account.php 里面 添加fensi函数

在最后一个}前面添加如下代码

public function fensi($uid)
{
$qid = $this->query_row("SELECT count(*) as zong FROM `aws_user_follow` WHERE `friend_uid`='".$uid."'");
return $qid["zong"];
}




三:static/js/aw_template.js 的usercard模板

找到 “'<span>' + _t('赞同') + ': <em class="aw-text-color-oragne">{{agree_count}}</em></span>“
回车添加
'<span>' + _t('粉丝') + ': <em class="aw-text-color-oragne">{{fen}}</em></span> &nbsp;'+
即可。


友情提醒:改代码有风险,改之前请复制一个改名备份。。。。。

zhengqiang - WeCenter 产品经理

直接把读一下评作文里面的js就知道了啊:),js代码是可以通过源码查询的。

该问题目前已经被锁定, 无法添加新回复