21407787
「广告位代码」插件使用说明
「广告位代码」插件可以让你在网站的多处地方插入广告联盟代码、图片代码等HTML代码而不用修改文件,省去系统升级时的麻烦
这里给大家一些示例代码,方便你知道怎么填写
居中代码
<div class="text-center">可以把这里的文字替换成图片等内容代码</div>
边栏公众号二维码代码
<div class="aw-mod">
<div class="mod-head">
<h3>关注官方公众号</h3>
</div>
<div class="mod-body clearfix">
<div style="margin: 10px 2px;">
<img src="https://s1.ax1x.com/2020/04/25/JsCU3Q.jpg" alt="关注官方公众号" class="img-thumbnail">
</div>
</div>
</div>
首页顶部底部通栏banner代码
<div class="aw-container-wrap">
<div class="container">
<div class="row">
<div class="col-sm-12">
<a href="https://curl.qcloud.com/YOzs6XQK">
<img src="https://z3.ax1x.com/2021/04/09/cUFbLD.jpg" width="100%">
</a>
</div>
</div>
</div>
</div>
手机版关注二维码代码
<div class="text-center" style="margin: 10px 2px;">
<img src="https://z3.ax1x.com/2021/04/09/cNWh6g.jpg" width="100%">
</div>
收起阅读 »
WeCenter邮件设置要怎么设置
WeCenter系统的邮件设置要怎么填?
QQ邮箱填写示例
发送方式:通过SOCKET链 连接 SMTP服务器发送
邮件编码:UTF-8
主 SMTP 服务器:smtp.qq.com
使用安全链接(SSL)连接主服务器:是
主 SMTP 端口:465
主 SMTP 帐户:QQ号@qq.com
主 SMTP 密码:这里不是QQ密码,而是进入QQ邮箱后台获取的授权码
QQ邮箱授权码
登录QQ邮箱->设置->账户
拉到底部就会看到 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务
1.我们要先开启: POP3/SMTP服务
2.获取授权码:这个授权码是用来代替QQ密码的
QQ邮箱失败原因
很多人使用QQ邮箱作为wecenter程序的发信邮箱,但是一直失败的原因,其实就是因为这2个原因:
1、端口号填错了:QQ邮箱发信是改为了使用安全链接(SSL),所以端口号要填465
2、SMTP 密码填错了:为了安全,QQ邮箱改用了授权码代替QQ密码,所以不能填QQ密码,而是要生成一个授权码
3、没有开启POP3/SMTP服务
如果你的QQ邮箱设置不成功,请着重检查这3个设置!!!
收起阅读 »「关注公众号才能注册」插件的功能介绍
功能介绍
「关注公众号才能注册」插件,可以限制必须关注公众号才能注册网站新账号,可以有效减少机器人注册并且给公众号引流。
Tips:该插件需要搭配「关注公众号才能发帖」插件一起才能使用
安装说明
将插件上传到 网站根目录/plugins/ 后,到系统后台安装启用即可。
如果你的程序是在3.6.2之前的版本。那么插件的部分功能需要修改以下文件才能生效
打开网站文件 app/m/account.php ,找到register_action,
在大约84行的位置,「本站目前关闭注册」的上方,添加以下代码:
//注册页面前置钩子
run_hook('register_hook',['data'=>$_GET,'action'=>'before','platform'=>'mobile']);
//↑↑↑在本站目前关闭注册上方↑↑↑
if (get_setting('register_type') == 'close')
{
H::redirect_msg(AWS_APP::lang()->_t('本站目前关闭注册'));
}
插件下载
「关注公众号才能注册」插件下载 http://wecenter.junxiaochen.com/store/26
收起阅读 »WeCenter在php7环境下,公众号功能无反应、出错解决方案
出错原因
出现这个问题是由于mcrypt_decrypt、等函数已自 PHP 7.1.0 起废弃,并将自 PHP 7.2.0 起移除。
但是由于wecenter3.6.1以及之前的版本还在使用mcrypt_decrypt等函数,所以会导致在php7.2 + 的环境下,wecenter公众号功能会出现错误,导致无法使用公众号回复功能。
解决方案
用openssl_decrypt替换mcrypt_decrypt等函数
打开system/Services/Weixin/Prpcrypt.php,
找到encrypt函数,替换为
/**
* 对明文进行加密
* @param string $text 需要加密的明文
* @return string 加密后的密文
*/
public function encrypt($text, $appid)
{
try {
//获得16位随机字符串,填充到明文之前
$random = $this->getRandomStr();
$text = $random . pack("N", strlen($text)) . $text . $appid;
$iv = substr($this->key, 0, 16);
//使用自定义的填充方式对明文进行补位填充
$pkc_encoder = new Services_Weixin_PKCS7Encoder;
$text = $pkc_encoder->encode($text);
$encrypted = openssl_encrypt($text, 'AES-256-CBC', $this->key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, $this->hexToStr($iv));
//使用BASE64对加密后的字符串进行编码
return array(Services_Weixin_ErrorCode::$OK, base64_encode($encrypted));
} catch (Exception $e) {
//print $e;
return array(Services_Weixin_ErrorCode::$EncryptAESError, null);
}
}
找到decrypt函数,替换为
/**
* 对密文进行解密
* @param string $encrypted 需要解密的密文
* @return string 解密得到的明文
*/
public function decrypt($encrypted, $appid)
{
try {
//使用BASE64对需要解密的字符串进行解码
$ciphertext_dec = base64_decode($encrypted);
$iv = substr($this->key, 0, 16);
//解密
$decrypted = openssl_decrypt($ciphertext_dec, 'AES-256-CBC', $this->key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, $this->hexToStr($iv));
} catch (Exception $e) {
return array(Services_Weixin_ErrorCode::$DecryptAESError, null);
}
try {
//去除补位字符
$pkc_encoder = new Services_Weixin_PKCS7Encoder;
$result = $pkc_encoder->decode($decrypted);
//去除16位随机字符串,网络字节序和AppId
if (strlen($result) < 16)
return "";
$content = substr($result, 16, strlen($result));
$len_list = unpack("N", substr($content, 0, 4));
$xml_len = $len_list[1];
$xml_content = substr($content, 4, $xml_len);
$from_appid = substr($content, $xml_len + 4);
if (!$appid)
$appid = $from_appid;
} catch (Exception $e) {
//print $e;
return array(Services_Weixin_ErrorCode::$IllegalBuffer, null);
}
if ($from_appid != $appid)
return array(Services_Weixin_ErrorCode::$ValidateAppidError, null);
return array(0, $xml_content, $appid);
}
同时在下方增加一个自定义函数hexToStr
public function hexToStr($hex)
{
$string='';
for ($i=0; $i < strlen($hex)-1; $i+=2)
{
$string .= chr(hexdec($hex[$i].$hex[$i+1]));
}
return $string;
}
下载修改后的文件
这里给大家整理好了修改后的文件,
可以下载后覆盖到自己网站system/Services/Weixin/Prpcrypt.php即可在php7环境下使用WeCenter的公众号功能了
收起阅读 »
「附件积分下载」使用说明
「附件积分下载」使用说明
功能说明
「附件积分下载」优化问答和文章的附件下载功能,可以设置下载附件需要扣除系统积分。
每个模块(问题、回答、文章)的下载积分都可以单独设置扣除的分数。
同时还可以设置附件被下载时,奖励附件上传者积分
版本要求
需要将wecenter版本更新到3.6.1以后,否则部分功能可能不能实现。
如果你不想升级到3.6.1,可以咨询我如何修改文件。
找到 app/question/main.php 大约392行,
TPL::output('question/index');
在这行代码的上面添加钩子代码:
// 问题底部钩子
run_hook('question_detail_hook',['data'=>$_GET,'action'=>'bottom','question_info'=>$question_info,'platform'=>'web']);
注意事项
使用「附件积分下载」插件,
需要先在后台开启系统的积分功能,并设置好积分奖励策略!!!
然后在插件里,配置好下载附件需要扣除的积分。
疑难解答
全部下载不会扣分
请进行以下2项的检查:
1、网站版本是否是在3.6.1以后的版本?否则请更新
2、是否在插件设置里,设置了下载扣0分?
3、插件设置里,下载扣分是要填写负数的!
只有问题附件不会扣分
问题附件默认是设置了不需要积分下载的,如果你需要开启,可以在插件设置里自己调整
插件下载
「附件积分下载」插件下载 http://wecenter.junxiaochen.com/store/18
收起阅读 »「关注公众号才能发帖」插件使用教程
wecenter微信绑定检测插件使用教程
功能说明
限制必须使用微信绑定UID后才能发帖,可以有效减少机器人发垃圾广告
支持单个功能的权限开关,单独限制发问题、修改问题、发文章、修改文章、发布问题回答的权限设置。
同时还增加了配套「关注公众号才能发帖」使用的插件:
所有「关注公众号」系列的插件均支持全部主体注册的公众号使用,也包括个人主体公众号,有无认证也均可使用。
注意事项
在3.6.0以及更旧的版本,做完以上的设置,微信关注检测的功能并还不能立刻生效,因为还缺少一个插件钩子,所以我们需要自己手动修改网站文件加上它。
打开网站 app/weixin/api.php 文件,在倒数第三行上面,加上一句代码,如:
/*君笑尘自定义添加 微信公众号接口后置钩子*/
run_hook('weixin_api',['action'=>'after','input_message'=>$input_message,'account_info'=>$account_info]);
该钩子已在3.6.1以及后面的版本内置在主程序了,无需手动添加。
使用教程
1.填写接口信息
打开公众号后台->开发设置,填写接口信息,如:
2.设置公众平台信息
打开网站后台->全局设置->开放平台->设置微信公众平台的信息
3.安装插件
把 wc_wechat_bind 文件夹上传到网站根目录的 plugins 里,并打开网站后台打开->插件扩展->安装插件
4.设置二维码
根据提示设置公众号二维码即可
插件下载
插件下载安装地址:关注公众号才能发帖
收起阅读 »wecenter插件使用教程
wecenter插件使用教程
wecenter的插件目前都是 wc_ ** 开头的文件夹,把这个文件夹放在网站根目录plugins里面,然后打开后台,插件拓展,会看到顶部有个新插件安装提示,点击进去就会出现新插件,就可以安装了