Typecho 新浪登陆插件 Sinauth

简介: 花了点时间弄了一个插件。代码地址:https://github.com/web3d/plugins/tree/master/SinauthTypecho的扩展机制还是比较完善的,可以自行增加Action、Route、扩展现有Widget功能、后台插件配置界面等。

花了点时间弄了一个插件。

代码地址:https://github.com/web3d/plugins/tree/master/Sinauth

Typecho的扩展机制还是比较完善的,可以自行增加Action、Route、扩展现有Widget功能、后台插件配置界面等。

偷懒,使用的是SAE中封装的sdk访问新浪开放平台数据。

插件放到/root_path/usr/plugins/Sinauth 目录下:

Plugin.php
AuthorizeAction.php

Plugin.php用于插件初始化,AuthorizeAction.php用于扩展功能。

<?php
class Sinauth_Plugin implements Typecho_Plugin_Interface
{
    /**
     * 激活插件方法,如果激活失败,直接抛出异常
     * 
     * @access public
     * @return void
     * @throws Typecho_Plugin_Exception
     */
    public static function activate()
    {
        Typecho_Plugin::factory('Widget_User')->___sinauthAuthorizeIcon = array('Sinauth_Plugin', 'authorizeIcon');
        
        Helper::addAction('sinauthAuthorize', 'Sinauth_AuthorizeAction');
        Helper::addRoute('sinauthAuthorize', '/sinauthAuthorize/', 'Sinauth_AuthorizeAction', 'action');
        Helper::addRoute('sinauthCallback', '/sinauthCallback/', 'Sinauth_AuthorizeAction', 'callback');
        
        return _t($meg.'。请进行<a href="options-plugin.php?config='.self::$pluginName.'">初始化设置</a>');
    }
    
    public static function install()
    {
       //db创建
    }

    /**
     * 获取插件配置面板
     * 
     * @access public
     * @param Typecho_Widget_Helper_Form $form 配置面板
     * @return void
     */
    public static function config(Typecho_Widget_Helper_Form $form)
    {
        $client_id = new Typecho_Widget_Helper_Form_Element_Text('client_id', NULL,'', _t('App Key'),'请在微博开放平台查看http://open.weibo.com');
        $form->addInput($client_id);
        
        $client_secret = new Typecho_Widget_Helper_Form_Element_Text('client_secret', NULL,'', _t('App Secret'),'请在微博开放平台查看http://open.weibo.com');
        $form->addInput($client_secret);
        
        $callback_url = new Typecho_Widget_Helper_Form_Element_Text('callback_url', NULL,'http://', _t('回调地址'),'请与微博开放平台中设置一致');
        $form->addInput($callback_url);
        
    }
}
class Sinauth_AuthorizeAction extends Typecho_Widget implements Widget_Interface_Do
{
    public function action(){
        
    }

    public function callback(){
        
    }
}

在需要放入口的地方,加上

<?php $this->user->sinauthAuthorizeIcon(); ?>
目录
相关文章
|
8月前
|
关系型数据库 MySQL PHP
PHP注册、登陆、6套主页-带Thinkphp目录解析-【白嫖项目】
PHP注册、登陆、6套主页-带Thinkphp目录解析-【白嫖项目】 CSDN 转过来的,所以格式与内容有些许错误请见谅
|
9月前
如何在WordPress上配置WooCommerce
如果您尝试将WooCommerce与WordPress一起使用,那么在设置它时需要了解一些事项。如果您正在寻找一种简单的方法来设置您的在线商店并且仍然拥有博客功能,这是一个好主意。以下是您可以使用这两个平台开始建立此在线商店的一些最佳方法,而无需雇用某人为您处理所有事情。
|
前端开发
Typecho打赏功能
最近逛了好多博客,发现大家的文章底下都有一个共同特点 文章页面底下都有一个打赏(要饭)的按钮 回到我的博客一看发现没有,这可不得行 于是我也整了一个,顺便分享给大家
76 0
Typecho打赏功能
|
自然语言处理 前端开发 JavaScript
5个最佳WordPress广告插件
5个最佳WordPress广告插件
324 0
|
数据库 数据库管理
搭建 Zblog 博客系统-4
搭建 Zblog 博客系统-4
103 0
搭建 Zblog 博客系统-4
|
Serverless
搭建 Zblog 博客系统-5
搭建 Zblog 博客系统-5
100 0
搭建 Zblog 博客系统-5
搭建 Zblog 博客系统-3
搭建 Zblog 博客系统-3
96 0
搭建 Zblog 博客系统-3
|
Serverless
搭建 Zblog 博客系统-2
搭建 Zblog 博客系统-2
106 0
搭建 Zblog 博客系统-2
|
机器学习/深度学习 存储 人工智能
搭建 Zblog 博客系统-1
搭建 Zblog 博客系统-1
470 0
适合个人建站的免费开源网站主题汇总(hexo&jekyll&hugo&wordpress&typecho)
适合个人建站的免费开源网站主题汇总(hexo&jekyll&hugo&wordpress&typecho)
1066 0