Files
pear-admin-flask/plugins/siteStats/__init__.py
T
bwstudio 0ffc103e46 feat(plugins): 4 个业务插件代码 + 前台公开页面改造
plugins/navManager:导航 CRUD + 导航分类 CRUD(独立 blueprint)
plugins/friendManager:友情链接 CRUD
plugins/aboutManager:关于本站 CRUD
plugins/siteStats:访问统计主页 + JSON 接口 + /site/* GET 埋点 + nav 卡片点击埋点

applications/view/public/nav.py:导航聚合页 / 分类详情 / JSON 接口,支持 visit_count 注入
applications/view/public/about.py:关于本站公开页
applications/view/public/friend.py:友情链接公开页

templates/public/base.html:响应式首页(搜索框 / 分类抽屉 / 5 主题切换 / footer 隐私小字)
templates/public/index.html / category.html:卡片右下角访问次数
templates/public/about.html / friend.html:关于 + 友链前台页

docs/plugins-development.md:插件开发完整指南(生命周期 + 4 个示例 + FAQ + framework 迁移)

scripts/:探针与端到端验证脚本(probe_*/verify_*/test_*)
2026-09-06 18:18:06 +08:00

23 lines
559 B
Python

"""
访问统计插件入口
- event_init:在 app 上注册 /system/stats/* 蓝图
- event_finish:挂 before_request 埋点
"""
from flask import Flask
from .view.stat import bp, site_bp, record_visit
def event_init(app: Flask):
app.register_blueprint(bp)
app.register_blueprint(site_bp)
print(" * siteStats: registered /system/stats/* and /site/nav/*click blueprints")
def event_finish(app: Flask):
@app.before_request
def _stat_record():
record_visit()
print(" * siteStats: registered /site/* before_request hook")