calderawp/laravel-wp-user 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

calderawp/laravel-wp-user

Composer 安装命令:

composer require calderawp/laravel-wp-user

包简介

Use WordPress for authentication, user managment in laravel app

README 文档

README

Use a WordPress site as the authentication provider for a Laravel app.

Also can act as a WordPress REST API client.

Goals and Status

  • Authenticate as a WordPress user from Laravel - done.
  • Provide an API client for querying the WordPress REST API from Laravel - done.
  • Provide a WordPress based middleware. - Next step

Usage

Setting Up WordPress

This library could use other authentication systems but only JWT is implimented.

Add WordPress Login To Your App

  • Config

    • Publish config and set url for WordPress site or use WPUSERWPURL in your .env
    • URL must include /wp-json/ (or whatever) you use WITH trailing slash.
  • Add a login route, for example

Route::post('/wp-login', function( \calderawp\WPUser\JWTAuthenticator $authenticator, \Illuminate\Http\Request $request ){
	if( $request->has( 'username' ) && $request->has( 'password' ) ){
		if( $authenticator->login( $request->input( 'username'), $request->input( 'password' ) ) ){
			$user = \calderawp\WPUser\Model\Model::fromAuth( $authenticator );
		}

		//return an error;
	}
});

NOTES:

  • This uses a User Model from the package. No migration is provided to save.
  • You could save the WP User in database, with token.

Example To Authenticate User

    //SUPER IMPORTANT to use a trialing slash after wp-json
    $wpApiUrl = 'https://roysivan.com/wp-json/';
    $authClient = \calderawp\WPUser\Factory::jwtAuthenticator( $wpApiUrl, [ 
        //args to pass to constructor of GuzzleHttp\Client
     ] );
     
    //BTW- in local testing, might want to set verify false
    // $authClient = \calderawp\WPUser\Factory::jwtAuthenticator( $wpApiUrl, [ 'verify' => false ] );


    //authenticate
    if( $authClient->login( 'josh', '12345' ) ){
        $api = \calderawp\WPUser\Factory::jwtAuthenitcated( $wpApiUrl, $authClient->getUser(), 
            [ 
                //args to pass to constructor of GuzzleHttp\Client
             ] 
        );
        $me = $api->me();
    }

License

Copyright 2017 CalderaWP LLC. Licensed under the terms of the GNU GPL V2+. Please share with your neighbor.

calderawp/laravel-wp-user 适用场景与选型建议

calderawp/laravel-wp-user 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 151 次下载、GitHub Stars 达 19, 最近一次更新时间为 2017 年 06 月 23 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 calderawp/laravel-wp-user 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 calderawp/laravel-wp-user 我们能提供哪些服务?
定制开发 / 二次开发

基于 calderawp/laravel-wp-user 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 151
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 19
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 19
  • Watchers: 4
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: GPLv2
  • 更新时间: 2017-06-23