Update plugin.py

master
zxc 4 months ago
parent 74c83abfde
commit 59810b588d

@ -1,18 +1,25 @@
from djangoblog.plugin_manage.base_plugin import BasePlugin
from djangoblog.plugin_manage.base_plugin import BasePlugin
from djangoblog.plugin_manage import hooks
class ViewCountPlugin(BasePlugin):
PLUGIN_NAME = '文章浏览次数统计'
PLUGIN_DESCRIPTION = '统计文章的浏览次数'
PLUGIN_VERSION = '0.1.0'
PLUGIN_AUTHOR = 'liangliangyy'
# 插件元信息定义
PLUGIN_NAME = '文章浏览次数统计' # 插件名称,用于管理界面展示
PLUGIN_DESCRIPTION = '统计文章的浏览次数' # 插件功能描述
PLUGIN_VERSION = '0.1.0' # 插件版本号
PLUGIN_AUTHOR = 'liangliangyy' # 插件作者
# 注册钩子:将统计逻辑绑定到文章内容获取后的钩子
def register_hooks(self):
# 当系统触发'after_article_body_get'钩子文章内容加载完成后执行record_view方法
hooks.register('after_article_body_get', self.record_view)
# 核心功能:记录文章浏览次数
def record_view(self, article, *args, **kwargs):
# 调用文章对象的viewed()方法,实现浏览次数+1的逻辑
# 注viewed()方法需在Article模型中预先定义通常包含计数器自增和保存操作
article.viewed()
plugin = ViewCountPlugin()
# 实例化插件:自动触发钩子注册,使插件生效
plugin = ViewCountPlugin()
Loading…
Cancel
Save