目前的想法是用插件 hook Contents.php 的 allow 函数,判断 'comment' == $permission 且用户未登录时返回 false
试着写了如下代码,但不生效(依然可以评论,无论是否登录):
<?php
class nocomments_Plugin implements Typecho_Plugin_Interface {
public static function activate()
{
Typecho_Plugin::factory('var/Widget/Base/Contents.php')->allow = array('nocomments_Plugin', 'ContentsHook');
}
public static function deactivate(){}
public static function config(Typecho_Widget_Helper_Form $form){}
public static function personalConfig(Typecho_Widget_Helper_Form $form){}
public static function ContentsHook($permissions)
{
return false;
}
}求大神指点
添加检测用户是否登录:<?php if($this->user->hasLogin()): ?>