shopifyapiphp开发,Shopify插件开发基础篇-获取店铺信息今天我们讲⼀下 Shopify 插件应⽤开发最基础的部分获取店铺信息。
第⼀步,在开始撸码之前,我们先要获取应⽤的 API 秘钥
第⼆步,撸码这件事我⼀贯的原则是不重复造轮⼦,⼯具在⽆明显缺陷情况下,⼀定使⽤第三⽅⼯具。所以我们当然⽤第三⽅的⼯具。
composer require osiset/laravel-shopify
第三步,安装完第三⽅⼯具后,配置相应的 API 秘钥,开始撸码。
⾸先,我们要建⽴数据库的表,在 Laravel-Shopify 这个轮⼦中,只需要发布相应资源,再执⾏数据库迁移即可。
php artisan vendor:publish --tag=shopify-migrations
php artisan migrate
然后,我们需要将⽤户模型跟Shopify关联起来,只需要 implements IShopModel 即可。
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Osiset\ShopifyApp\Contracts\ShopModel as IShopModel;
use Osiset\ShopifyApp\Traits\ShopModel;
class User extends Authenticatable implements IShopModel
{
use Notifiable;
use ShopModel;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'email', 'password',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
}
我们添加路由
Route::group([
'middleware' => 'auth.shopify',
], function ($router) {
$router->get('/dashboard', [Controller::class, 'dashboard'])->name('delivery.dashboard');
});
路由这⾥划重点
这⾥的 Dashboard 相当于⼀个商家插进应⽤后台主页,Wordpress 中的仪表盘。我们也需要将 xxx.bepei/dashboard 和xxx.bepei/authenticate 设置到应⽤后台。前者是后台主页,后者是商家安装插件时的授权跳转页⾯。
xxx.bepei/authenticate 这个是 Laravel-Shopify 这个轮⼦⾃带的,不需要我们写⼊路由中。
所以路由设置好以后,我们需要到 Shopify 后台设置插件对应的URL,如下图。
最后,就可以来编写逻辑部分了。
我的 Dashboard 部分直接对应的是 Controller 控制器中 dashboard函数。namespace App\Http\Controllers;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Support\Facades\Auth;
use Osiset\BasicShopifyAPI\BasicShopifyAPI;
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
public function dashboard()
{
$shop = Auth::user();
$domain = $shop->getDomain()->toNative();
/** @var BasicShopifyAPI $shopApi */
$shopApi = $shop->api();//
$shopInfo = $shopApi->rest('GET', '/admin/shop.json')['body']['shop']; dump("Shop Domain is :".$domain);
dump(" My Wechat ID is : aboutax");
dump($shop->toArray());
dump($shopInfo);
}中文版php开发工具
}
⾄此开发部分就结束了。
我们来看⼀下效果
从应⽤后台进⼊对应的开发测试店铺。
测试店铺中选择应⽤,可以看到我们已经设置好的应⽤,点击名字就能看到对应效果
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论