让 bbPress 完全实现匿名化交流,删除必须输入邮箱功能。

让 bbPress 完全实现匿名化交流,删除必须输入邮箱功能。


标签: 

正在查看 2 个帖子:1-2 (共 2 个帖子)
  • 作者
    帖子
  • 小新
    • 文章数量: 354
    @xiaoxin
    楼主

    在WordPress使“空匿名的bbPress”文件夹中的“插件”文件夹,请把已创建此时进入它的“空匿名bbpress.php”文件。任何文件名都可以,但是在这里我们会说“empty-anonymous-bbpress.php”。

    诗语
    管理员
    • 文章数量: 5,866
    @feibisi
    add_action( 'init', array( 'WPSE_Empty_Anonymous_Replies', 'init' ) );
    
    class WPSE_Empty_Anonymous_Replies
    {
            static protected $name  = 'nobody';
            static protected $email = 'nobody@example.com';
    
            static public function init()
            {
                add_filter( 'bbp_filter_anonymous_post_data',
                             array( __CLASS__, 'bbp_filter_anonymous_post_data' ),
                             11, 2 );
                add_filter( 'bbp_pre_anonymous_post_author_name',
                             array( __CLASS__,  'bbp_pre_anonymous_post_author_name' ) );
                add_filter( 'bbp_pre_anonymous_post_author_email',
                             array( __CLASS__, 'bbp_pre_anonymous_post_author_email' ) );
            }
    
            static public function bbp_filter_anonymous_post_data( $retval, $r )
            {
                if( self::$name === $r['bbp_anonymous_name']
                    && self::$email === $r['bbp_anonymous_email'] )
                {
                    // reset the input to skip writing cookies
                    $retval = array();
    
                    // trick to activate the IP flood check
                    $retval['bbp_anonymous_flood_check'] = '1';
                }
                return $retval;
            }
    
            static public function bbp_pre_anonymous_post_author_name( $name )
            {
                remove_filter( current_filter(), array( __CLASS__, __FUNCTION__ ) );
                if( empty( $name ) )
                    $name = self::$name;
    
                return $name;
            }
    
            static public function bbp_pre_anonymous_post_author_email( $email )
            {
                remove_filter( current_filter(), array( __CLASS__, __FUNCTION__ ) );
                if( empty( $email ) )
                    $email = self::$email;
    
                return $email;
            }
    }
正在查看 2 个帖子:1-2 (共 2 个帖子)
  • 哎呀,回复话题必需登录。

未找到对应子版块?请直接在 [疑难杂症] 版块中发帖提问。

收藏纪念品


有奖活动

参与论坛社区问答,有机会获赠文派瓦普(Wapuu.com)手办模型。

话题信息

商业系统