1.优化代码高亮,真正意义上的代码高亮
2.优化评论,添加评论验证码,过滤国外垃圾机器人留言
3.优化导航语法,点击空白正常
4.优化弹窗,打赏代码残留问题
5.后台设置优化
6.修复哔哩哔哩视频不能全屏问题
7.增加游客回复可见功能
8.做了模板兔的兼容
下载地址:
蓝奏网盘
{此版本抢先版,作者自己测试没有bug,由于没有内测人员,就先发布抢先版,使用有bug请及时在下方留言}
/*增加入一条积分动态*/
function ashuwp_add_points_activity( $args=array() ){
global $wpdb;
$defaults = array(
'user_id' => '',
'action' => '',
'points' => '',
'description' => '',
'date' => ''
);
$args = wp_parse_args( $args, $defaults );
//判断用户id是否合法
$user = get_user_by('ID', $args['user_id']);
if(!$user){
$msg = array(
'state' => 'error',
'msg' => 'User Error',
);
return $msg;
}
//仅增加和减少两种操作。
if( !in_array( $args['action'], array( 'add', 'reduce' ) )){
$msg = array(
'state' => 'error',
'msg' => 'Operate Error',
);
return $msg;
}
//检测积分异动数是否合法
if( !is_int($args['points']) ){
$msg = array(
'state' => 'error',
'msg' => 'Points Error',
);
return $msg;
}
//处理描述
$args['description'] = sanitize_text_field($args['description']);
//处理异动数,和计算余额
$old_points = (int)ashuwp_get_user_points($args['user_id']);
if($args['action']=='add'){
$balance = $old_points+$args['points'];
$change = $args['points'];
if($balance!=$old_points){
//将新余额更新到用户积分表。
$update = ashuwp_update_user_points($args['user_id'],$balance);
}
}
if($args['action']=='reduce'){
$balance = $old_points-$args['points'];
$change = -$args['points']; //若是减少,数据库中保存为负数。
if($balance!=$old_points){
$update = ashuwp_update_user_points($args['user_id'],$balance);
}
}
if( ($balance!=$old_points) && $update['state'] != 'succeed' ){
$msg = array(
'state' => 'error',
'msg' => $update['msg'],
);
return $msg;
}
$table_name = $wpdb->prefix . 'points_activity';
//插入数据
$args['date'] = date( "Y-m-d H:i:s", time());
$sql = "insert into $table_name ( user_id, points, description, balance, date ) values( '{$args['user_id']}', '{$change}', '{$args['description']}', '{$balance}', '{$args['date']}' )";
$result = $wpdb->query($sql);
if($result){
$msg = array(
'state' => 'succeed',
'msg' => 'succeed!',
);
return $msg;
}else{
//若动态插入失败,将用户积分表回滚。
ashuwp_update_user_points($args['user_id'],$old_points);
$msg = array(
'state' => 'error',
'msg' => 'Insert Error',
);
return $msg;
}
}
/*从积分动态表中获取数据,后台页面中需要。
* 需支持条件查询方便后台管理。
*/
function ashuwp_get_points_activity( $args=array() ){
global $wpdb;
$defaults = array(
'user_id' => '',
'per_page' => '50',
'paged' => '1',
'action' => ''
);
$args = wp_parse_args( $args, $defaults );
//处理页码
$page = (int)$args['paged'];
$per_page = (int)$args['per_page'];
if(!$page){
$page = 1;
}
if(!$per_page){
$per_page = 50;
}
$begin = $per_page*($page-1);
$end = $per_page*$page;
$table_name = $wpdb->prefix . 'points_activity';
$sql = "select * from $table_name where 1=1 ";
//查询用户id
if($args['user_id']!=''){
$user_id = (int)$args['user_id'];
$sql .= "and user_id='{$user_id}' ";
}
//查询操作种类
if( in_array( $args['action'], array( 'add', 'reduce', 'remain' ) ) ){
if($args['action']=='add'){
$sql .= "and points>0 ";
}
if($args['action']=='reduce'){
$sql .= "and points<0 ";
}
if($args['action']=='remain'){
$sql .= "and points=0 ";
}
}
$sql .= "order by id desc limit $begin,$end";
$results = $wpdb->get_results($sql,'ARRAY_A');
return $results;
}
/*统计积分动态的记录数
* 加入统计条件方便后台管理
*/
function ashuwp_count_points_activity( $args=array() ){
global $wpdb;
$defaults = array(
'user_id' => '',
'action' => ''
);
$args = wp_parse_args( $args, $defaults );
$table_name = $wpdb->prefix . 'points_activity';
$sql = "select count(*) from $table_name where 1=1 ";
//统计用户
if($args['user_id']!=''){
$user_id = (int)$args['user_id'];
$sql .= "and user_id='{$user_id}' ";
}
//统计操作
if( in_array( $args['action'], array( 'add', 'reduce', 'remain' ) ) ){
if($args['action']=='add'){
$sql .= "and points>0 ";
}
if($args['action']=='reduce'){
$sql .= "and points<0 ";
}
if($args['action']=='remain'){
$sql .= "and points=0 ";
}
}
$results = $wpdb->get_var($sql);
return $results;
}
- THE END -
最后修改:2022年8月4日
非特殊说明,本博所有文章均为博主原创。
如若转载,请注明出处:https://aj0.cn/zhuti/432.html
fookier
大佬
qinmeng
😀 😀 😀
ssss
好厉害啊
128
哇哦
128
哇哦 😀
疯狂的观点
希望可以添加一个首页随机文章幻灯片的选项
DFGHJ
牛批
yajlt
NB,试试看好用不。
huqiang
以前的有问题
姜半夏
学习
姜半夏
@姜半夏: 下载文件,win10自带安全软件显示特洛伊木马,……
admin博主
@姜半夏: 什么文件,,360 火绒都不报 这玩意咋报 100%无毒
Zero
感谢分享
533
谢谢
饭特稀
谢谢大佬
翌冰之
谢谢大佬
Gary
你好,导航栏的搜索框还是没有加上去吗在这个主题里
admin博主
@Gary: 加了
yajlt
正在使用当中,现在发现一个问题,Elementor在启用后编缉文章会报错。另外想咨询一下,如果我想让文章使用其它字体,要在什么地方设置呢?
admin博主
@yajlt: 不支持Elementor 改字体https://m.php.cn/article/475166.html可以看看这个文章
x
大佬
x
大佬
x
大佬nb
不随。
大佬厉害,建议底部放个赞赏
kdmy
大佬牛逼
大佬看我
你好,请问一下。怎么编辑九宫格页面呢。模板设置成了九宫格,但是只能编辑第一个格子的内容,找不到在哪里添加第二个格子