// 防止直接访问
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
// 插件常量
define( 'WPSS_VERSION', '1.0.0' );
define( 'WPSS_PLUGIN_DIR', plugin_dir_path( __FILE__ ) );
define( 'WPSS_PLUGIN_URL', plugin_dir_url( __FILE__ ) );
define( 'WPSS_PLUGIN_BASENAME', plugin_basename( __FILE__ ) );
define( 'WPSS_TABLE_NAME', 'wp_spider_stats' );
// 加载核心文件
require_once WPSS_PLUGIN_DIR . 'includes/class-database.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-detector.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-admin.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-stats.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-settings.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-dashboard-widget.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-behavior.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-license.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-alerts.php';
require_once WPSS_PLUGIN_DIR . 'includes/class-api.php';
/**
* 插件主类
*/
class WP_Spider_Stats {
/**
* 单例实例
*/
private static $instance = null;
/**
* 获取单例实例
*/
public static function get_instance() {
if ( null === self::$instance ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* 构造函数
*/
private function __construct() {
$this->init_hooks();
}
/**
* 初始化钩子
*/
private function init_hooks() {
// 插件激活/停用
register_activation_hook( __FILE__, array( $this, 'activate' ) );
register_deactivation_hook( __FILE__, array( $this, 'deactivate' ) );
register_uninstall_hook( __FILE__, array( 'WP_Spider_Stats', 'uninstall' ) );
// 初始化
add_action( 'plugins_loaded', array( $this, 'load_textdomain' ) );
add_action( 'init', array( $this, 'init' ) );
// 前端请求检测 - 使用 template_redirect 钩子确保在WordPress加载完成后执行
add_action( 'template_redirect', array( $this, 'detect_spider' ) );
// 定时清理任务
add_filter( 'cron_schedules', array( $this, 'add_cron_interval' ) );
add_action( 'wpss_daily_cleanup', array( $this, 'daily_cleanup' ) );
}
/**
* 插件激活
*/
public function activate() {
WPSS_Database::create_table();
WPSS_Database::create_indexes();
// 设置默认选项
$defaults = WPSS_Settings::get_defaults();
foreach ( $defaults as $key => $value ) {
if ( false === get_option( 'wpss_' . $key ) ) {
add_option( 'wpss_' . $key, $value );
}
}
// 安排定时清理任务
if ( ! wp_next_scheduled( 'wpss_daily_cleanup' ) ) {
wp_schedule_event( time(), 'daily', 'wpss_daily_cleanup' );
}
// 记录激活时间
update_option( 'wpss_activated_time', current_time( 'mysql' ) );
}
/**
* 插件停用
*/
public function deactivate() {
wp_clear_scheduled_hook( 'wpss_daily_cleanup' );
}
/**
* 插件卸载
*/
public static function uninstall() {
global $wpdb;
$table_name = $wpdb->prefix . WPSS_TABLE_NAME;
$wpdb->query( "DROP TABLE IF EXISTS {$table_name}" );
// 删除选项
$defaults = WPSS_Settings::get_defaults();
foreach ( $defaults as $key => $value ) {
delete_option( 'wpss_' . $key );
}
delete_option( 'wpss_activated_time' );
delete_option( 'wpss_db_version' );
}
/**
* 加载语言包
*/
public function load_textdomain() {
load_plugin_textdomain(
'wp-spider-stats',
false,
dirname( WPSS_PLUGIN_BASENAME ) . '/languages'
);
}
/**
* 初始化
*/
public function init() {
// 初始化管理后台
if ( is_admin() ) {
WPSS_Admin::get_instance();
WPSS_Dashboard_Widget::get_instance();
WPSS_License::get_instance(); // 新增
WPSS_Alerts::get_instance(); // 新增
}
WPSS_API::get_instance(); // 新增
WPSS_Behavior::get_instance(); // 新增
}
/**
* 检测蜘蛛访问(优化版)
*/
public function detect_spider() {
// 检查是否已检测过本次请求
static $detected = false;
if ( $detected ) {
return;
}
$detected = true;
// 性能优化:如果不是蜘蛛直接返回
if ( ! isset( $_SERVER['HTTP_USER_AGENT'] ) || empty( $_SERVER['HTTP_USER_AGENT'] ) ) {
return;
}
// 检查是否在排除列表中
if ( $this->should_exclude_request() ) {
return;
}
$detector = WPSS_Detector::get_instance();
$spider_info = $detector->detect();
if ( $spider_info ) {
// 检查排除IP
if ( $this->should_exclude_ip( $spider_info['ip_address'] ) ) {
return;
}
// 检查排除URL
if ( $this->should_exclude_url( $spider_info['request_url'] ) ) {
return;
}
$db = WPSS_Database::get_instance();
$db->insert_record( $spider_info );
}
}
/**
* 检查是否应排除此请求
*/
private function should_exclude_request() {
// 排除管理后台访问
if ( is_admin() ) {
return true;
}
// 排除AJAX请求
if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
return true;
}
// 排除REST API请求
if ( defined( 'REST_REQUEST' ) && REST_REQUEST ) {
return true;
}
// 排除CRON任务
if ( defined( 'DOING_CRON' ) && DOING_CRON ) {
return true;
}
// 排除WP-CLI
if ( defined( 'WP_CLI' ) && WP_CLI ) {
return true;
}
return false;
}
/**
* 检查是否应排除此IP
*/
private function should_exclude_ip( $ip ) {
$exclude_ips = get_option( 'wpss_exclude_ips', '' );
if ( empty( $exclude_ips ) ) {
return false;
}
$ips = array_map( 'trim', explode( "\n", $exclude_ips ) );
foreach ( $ips as $exclude_ip ) {
if ( $exclude_ip === $ip ) {
return true;
}
// 支持CIDR表示法
if ( strpos( $exclude_ip, '/' ) !== false && $this->ip_in_cidr( $ip, $exclude_ip ) ) {
return true;
}
}
return false;
}
/**
* 检查IP是否在CIDR范围内
*/
private function ip_in_cidr( $ip, $cidr ) {
list( $subnet, $mask ) = explode( '/', $cidr );
$ip_long = ip2long( $ip );
$subnet_long = ip2long( $subnet );
$mask_long = -1 << ( 32 - $mask );
return ( $ip_long & $mask_long ) === ( $subnet_long & $mask_long );
}
/**
* 检查是否应排除此URL
*/
private function should_exclude_url( $url ) {
$exclude_urls = get_option( 'wpss_exclude_urls', '' );
if ( empty( $exclude_urls ) ) {
return false;
}
$keywords = array_map( 'trim', explode( "\n", $exclude_urls ) );
foreach ( $keywords as $keyword ) {
if ( ! empty( $keyword ) && strpos( $url, $keyword ) !== false ) {
return true;
}
}
return false;
}
/**
* 添加定时任务间隔
*/
public function add_cron_interval( $schedules ) {
$schedules['daily'] = array(
'interval' => 86400,
'display' => __( '每天一次', 'wp-spider-stats' ),
);
return $schedules;
}
/**
* 每日清理过期数据
*/
public function daily_cleanup() {
$retention_days = (int) get_option( 'wpss_retention_days', 90 );
if ( $retention_days > 0 ) {
$db = WPSS_Database::get_instance();
$db->cleanup_old_records( $retention_days );
}
}
}
// 启动插件
add_action('plugins_loaded', function() {
if (class_exists('WP_Spider_Stats')) {
WP_Spider_Stats::get_instance();
}
});
拼多多细分种类店群运营玩法3.0,11月最新玩法,小白也可以操作_复利引擎
- 复利引擎首页
- 创业资讯
拼多多细分种类店群运营玩法3.0,11月最新玩法,小白也可以操作
副业达人
•
•
创业资讯 •
阅读 0
拼多多细分种类店群运营玩法3.0,11月最新玩法,小白也可以操作

拼多多暴力细分种类店群玩法
通过拼多多开店铺将种类细分
来提高店铺浏览度以及产品销量
此为视频教程,教程内软件均为官方软件
可以自行在百度购买
此项目需要有时间,小白也可以操作
适合宝妈,兼职,大学生等人群
设备需求:电脑和手机(手机不限制安卓苹果)



课程下载
此处内容已隐藏,请付费后查看
消息提醒:福州的白女士添加了微信
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:副业达人,转转请注明出处:https://www.chuangxiangniao.com/pay/4665.html
赞 (0)
打赏
微信扫一扫
支付宝扫一扫
相关推荐
-
今天给大家带来的项目就是一个怀旧视频项目,操作可以说是及其简单,但视频可以达到1000收益,流量大,涨粉巨快,很容易引起8090后人的回忆,变现方法也是有很多,然后我也为大家准备了很多资源素材,哪里不懂随时探讨。 课程目录: 1,一个怎样的蓝海项目 2,这样做账号,事半功倍 3,怎么快速制作作品 4…
-
知乎作为一个拥有超过4亿注册人数和8000万日活跃人数的平台,如果不利用它来做私域流量,那将是一个巨大的损失。本课程不赘述常规的养号和设钩子等炒作技巧,而是更加专注于关键词和文章的打磨。希望通过本课程的学习,能对大家的私域流量引流有所帮助,同时也欢迎大家一起交流分享。 课程介绍: 知乎注册人数超…
-
想在抖音这个带货蓝海赛道上实现日入上千的利润吗?本文给你揭示一个利用字帖描字的方法,无需真人出镜,只需要制作练字视频,并关联到小黄车来出售练字贴。通过吸引精准的用户,营造文雅氛围,你将能够获得至少一半以上的利润。特别是在学生放暑假的时期,这个市场红利期更是让你快速进入! 制作的练字视频,然后将其关联…
-
从0-1快速起号,成为运营型主播,掌握主播必备三大技能。帮助你快速复制直播团队,正确认知抖音推流逻辑,说符合平台推流逻辑的话术。拉爆自然流,做懂流量的主播,新规政策下,自然流破圈攻略。 课程目录: 候帝2023-11-06 齐齐2023-11-08 艾林2023-11-10 艾林2023-11-12…
-
课程内容: 1.小红书导流新规则现状 2.详细解读以后不可再用的引流方式 3.新规以后目前还可用的引流方式 4.实操课自媒体平台引流教程
-
课程内容: 1.项目介绍讲解.mp4 2.引流私域方式.mp4 3.变现方式讲解.mp4 4.照片修复操作过程.mp4 5.注意事项讲解.mp4 收益图.jpg
-
星球引流实操揭秘,一天轻松引流几十个创业粉! 前言:想知道如何利用星球实操,一天轻松引流几十个创业粉或精准粉吗?本文将详细教学实操步骤,注意避免使用接码和新号,以免被封号或屏蔽。现在的创业粉市场价值不菲,而其他精准粉也有很高的价值。通过本教程的揭秘,你将掌握一天引流几十个创业粉的技巧。 实操详细教学…
-
外面收费4980的男粉项目,一个作品变现1000 ,新渠道新玩法,一部手机实现月入过万【揭秘】 今天给大家带来的项目是《外面收费4980的男粉项目,一个作品变现1000 ,新渠道新玩法,一部手机实现月入过万》,咱们利用的就是“男人好色”的这一特点,在短视频平台发布美女混剪视频,然后例如虚拟资源进行变…
-
大家好,今天给大家带来的项目是《靠王者荣耀,月入十万》,每天花两小时。多种变现,拉新、账号租赁,账号交易。暑假期间,很多学生(小学、初中、高中、包括大学)已经放假,游戏行业将面领着巨大市场。咱们通过录制游戏中的稀有皮肤,获取学生党的关注,从而进行变现。变现主要通过拉新,和售卖游戏账号。后期积累一定粉…
-
拆解橱窗看车男孩汽车头像制作课程,视频版一条龙实操玩法分享给你 今天拆解一个比较火爆的玩法,就是这种橱窗看车男孩的图片和视频的制作 先看下项目介绍: 很多平台一直有人在做这个小项目,做到好的一个月几千、上万不是问题,一单收费10-20,动动手2分钟就可以轻松搞定一个图片,还有九宫格截屏挑战玩法,特别…
-
小游戏掘金项目,2023最适合摸鱼的副业,挂机就能赚钱,一个号一天赚个30-50 简介:这是一个非常新的项目,也是2023最大蓝海,可以说目前最适合宝妈,上班族,在家待业的小伙伴的蓝海项目,上个月我们有一批内测的小伙伴,效果非常牛,成功率已经超过了90%! 项目原理:小游戏掘金原理很简单就是,商家、…
-
项目介绍: 最新版无限产出定制化专属虚拟数字人,可自行训练产出。主要为视频教程 平台推荐。 ①AI绘画技术训练自己的专属虚拟人形象,免费无限生成,质量上乘。 ②虚拟人静态图形象转动态口播视频,提供无限撸玩法,不需要花一分钱也能用上目前最先进的技术,而且长期有效。 项目特点: 免费无限撸、傻瓜式操作(…
-
这个项目就是在小红书做壁纸项目,在抖音做的话实在太内卷了,咱们直接在抖音搬运爆款壁纸,简单去重后在小红书发布即可,核心原则就是爆过的一定还会再爆。目前小红书上做壁纸号的还比较少,要抓住这个红利期,最高日收益破5000 ,赶紧冲! 课程目录: 01爆一个作品就是4位数收入 02小程序入驻和养号 03个…
-
需要两种素材 1.综艺或者颁奖典礼上的素材片段 2.开车第一视角或者街头的 需要软件剪映 注意:步骤主要分为两步找素材还有剪映里面的剪辑 音乐直接用周杰伦的单曲就可以找一些热门的排行前面的一些歌 下载地址:
-
【命运方舟】外服名【失落的方舟】 应该不用做什么背景介绍了,毕竟最近大家应该在到处都见到了方舟的公测宣传了。玩游戏的都知道国内近些年没有什么游戏作品,玩家们没什么选择的余地。 说点大家大概不太清楚的事情,外服方舟,当时高峰期同时百万玩家在线,号称其中90万玩家是中国搬砖工作室大军。搬砖能力可见一斑。…
-
前言:在互联网时代,越来越多的人开始寻找网络赚钱的机会。然而,很多人对于如何开始还不得要领。今天,我们将向大家揭秘7个热门免费网络赚钱项目,帮助您实现财务自由。无论是写作、设计、翻译、营销推广、视频制作、音乐制作还是编程开发,只要我们抓住机会并付出努力,成功就指日可待! 介绍7个热门免费网络赚钱项目…
-
21天学会微信引流获客销售,掌握高效的微信经营术 前言:微信引流获客销售在当前的互联网时代具有重要意义,然而,许多人对于如何正确使用微信进行营销仍存在困惑。本文将带领读者了解微信运营的底层逻辑、引流增长的技巧以及如何承接流量和管理用户,最终转化为销售和留存复购。通过学习这些微信经营术,帮助读者实现从…
-
知识IP流量井喷营第2期,打造一套倍速吸粉、引流、转化的流量系统 前言:掌握吸粉、引流、转化的流量系统,打造知识IP流量井喷想要在竞争激烈的商业环境中脱颖而出,就必须拥有一套高效的吸粉、引流、转化的流量系统。在知识IP流量井喷营第2期,我们将为您揭秘一套倍速吸粉、引流、转化的流量系统,帮助您打开商业…
-
老干俊2023年投流指南,掌握最新投流思路助力巨量千川投放 在2023年,如何快速起量并建模?如何利用新版千川优化目标实现更好的效果?如何搭建商品卡计划和商城计划?还有全域ROI计划、短视频投流思路、搜索计划和直播投流思路等等。老干俊2023年投流指南为您提供最新的投流思路,助力您的千川投放。点击下…
-
抖音直播写头像姓氏LOGO等保姆级教程,火爆撸音浪教程【揭秘】 头像,姓氏logo,表白视频,奖状,登机牌,签名,真人漫改等直播间搭建实操