由于现在Wordpress广泛的实用,很多wp开发的站点不仅仅用于个人站长实用,随着国内移动支付的流行,打赏功能就被普遍的实用,有的wp开发的网站流量很大,就开放成了一个平台,为了鼓励注册用户原创文章,很多注册用户或者沾沾更希望打赏的作者可以是注册用户,而不仅仅是网站的管理员。
今天给大家一个简单使用的方法,当然可以按照传统的开发方法:
用户注册后可以自己上传二维码,然后前台对应每篇原作者显示注册用户的打赏码。
不过这种方法也有一个小问题,常常是用户传的图片可能不规范,为了让用户图片规范,可能又要把上传图片的能能更优化,这又增加了这个打赏功能的复杂度,对于我们这些很忙碌的人是没有时间去折腾的,好了,闲话少说,上我们自己的简约版方法吧:
首先你的网站已经有了打赏功能,就是那种只是给站长打赏的功能,网上有很多免费的插件,自己去下载安装。
然后修改打赏那块代码如下:
<?php if( (is_single() && _hui('post_rewards_s')) && ( _hui('post_rewards_alipay') || _hui('post_rewards_wechat') ) ){ ?>
<div class="rewards-popover-mask" data-event="rewards-close"></div>
<div class="rewards-popover">
<h3><?php echo _hui('post_rewards_title') ?></h3>
<?php if( _hui('post_rewards_alipay') ){ ?>
<div class="rewards-popover-item">
<h4>支付宝扫一扫打赏</h4>
<?php
$current_user = wp_get_current_user();
if ( 0 == $current_user->ID ) {
echo '<img src="'._hui('post_rewards_alipay').'">';
} else {
$url = 'http://blog.500tb.com/alipay-'.$current_user->ID.'.jpg';
if ( check_remote_file_exists($url) ) {
echo '<img src="'.$url.'">';
} else {
echo '<img src="http://blog.500tb.com/alipay-define.jpg">';
}
}
?>
</div>
<?php } ?>
<?php if( _hui('post_rewards_wechat') ){ ?>
<div class="rewards-popover-item">
<h4>微信扫一扫打赏</h4>
<?php
$current_user = wp_get_current_user();
if ( 0 == $current_user->ID ) {
echo '<img src="'._hui('post_rewards_wechat').'">';
} else {
$url = 'http://blog.500tb.com/weixinpay-'.$current_user->ID.'.jpg';
if ( check_remote_file_exists($url) ) {
echo '<img src="'.$url.'">';
} else {
echo '<img src="http://blog.500tb.com/weixinpay-define.jpg">';
}
unset($ch);
}
?>
</div>
<?php } ?>
<span class="rewards-popover-close" data-event="rewards-close"><i class="glyphicon glyphicon-remove"></i></span>
</div>
<?php } ?>
<?php
function check_remote_file_exists($url) {
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
$result = curl_exec($curl);
$found = false;
if ($result !== false) {
$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($statusCode == 200) {
$found = true;
}
}
curl_close($curl);
return $found;
}
?>
具体不累述了,其实逻辑很简单,就是对用户进行判断,然后根据用户是否登录,登录后用户的ID来显示不同的图片,对于图片的来源,我们暂时通过注册用户联系网站客服提交,然后网站客服审核通过后放在指定的位置。
当然这种超简单的方法只是对于流量不大的网站使用可以,用户注册量大的网站还是老老实实地去二次开发吧。
真实案例演示:http://blog.500tb.com