mkiyak / laravel-ads-sdk
Laravel 广告 SDK,用于 Google Ads、Bing Ads 和 Facebook Ads API
Requires
- facebook/php-business-sdk: ^12.0
Requires (Dev)
This package is auto-updated.
Last update: 2024-09-19 20:53:51 UTC
README
加入 Discord – 用于支持、更新和协作。
适用于 Google Ads、Bing Ads 和 Facebook Ads API。
这是一个包装器,可以将每个广告源连接到您的 Laravel 应用程序中。此 SDK 提供了比官方 SDK 更干净、更一致的跨多个广告平台的集成,从而在项目中实现起来更容易。您不需要学习如何与每个 API 通信和理解其响应。
安装
使用 Composer 安装软件包。
运行 composer require mkiyak/laravel-ads-sdk
配置
-
运行
php artisan vendor:publish --tag=laravel-ads-sdk
-
将以下内容复制到您的
.env
文件中,并使用您的凭据更新(如果您没有凭据,请继续到下一步)。
ADWORDS_DEVELOPER_TOKEN=""
ADWORDS_OAUTH2_CLIENT_ID=""
ADWORDS_OAUTH2_CLIENT_SECRET=""
ADWORDS_OAUTH2_REFRESH_TOKEN=""
BING_DEVELOPER_TOKEN=""
BING_CLIENT_ID=""
BING_CLIENT_SECRET=""
BING_REFRESH_TOKEN=""
FB_APP_ID=""
FB_APP_SECRET=""
FB_ACCESS_TOKEN=""
FB_REFRESH_TOKEN=""
身份验证
👉 对于 GoogleAds
您需要您的开发者令牌、客户端 ID 和客户端密钥才能继续。 了解更多信息
按照命令行中的步骤生成 刷新令牌。
运行 php artisan laravelads:token:generate --service=GoogleAds
遇到麻烦? 了解更多信息
👉 对于 BingAds
您需要您的开发者令牌、客户端 ID 和客户端密钥才能继续。 了解更多信息
按照命令行中的步骤生成 刷新令牌。
运行 php artisan laravelads:token:generate --service=BingAds
遇到麻烦? 了解更多信息
👉 对于 FacebookAds
您需要您的应用 ID、应用密钥和访问令牌。 了解更多信息
注意:对于 Facebook,您不需要生成刷新令牌,一旦您有了访问令牌,只要您已给自己正确地提供了访问、权限、范围到营销 API 和广告账户,API 就应该可以连接。
🚀 使用
访问 GoogleAds
、BingAds
或 FacebookAds
使用以下方式
// The namespace to the Facade for laravel Ads SDK use LaravelAds; // calling Google Ads and including the Account ID $googleAds = LaravelAds::googleAds()->with('ACCOUNT_ID'); // calling Bing Ads and including the Account ID $bingAds = LaravelAds::bingAds()->with('ACCOUNT_ID'); // calling Facebook Ads and including the Account ID $facebookAds = LaravelAds::facebookAds()->with('ACCOUNT_ID');
Google Ads
这使用的是 googleads-php-lib SDK,用于 Google Ads API
注意 – 您需要 请求 Google Ads API 访问权限。
管理
报告
Bing Ads
本文件使用BingAds-PHP-SDK来调用Bing Ads API
注意 – 您需要请求Bing Ads API访问权限。
管理
报告
Facebook广告
本文件使用facebook-php-business-sdk来调用Facebook Marketing API
管理
报告
定制
我们意识到无法添加每个端点,因此为了帮助改善您的开发体验,我们已经使服务类可宏化。宏是一种向类添加新自定义方法的方式。这样,您就能够利用现有的认证以及本软件包带来的所有其他好处。
通常,您应该从应用程序服务提供商的启动方法中调用此方法,例如App\Providers\AppServiceProvider
服务提供商
public function boot() { LaravelAds\Services\BingAds\Service::macro('addUetTags', function($tags){ $serviceCall = $this->call(ServiceClientType::CampaignManagementVersion13); try { $request = new AddUetTagsRequest(); $request->UetTags = $tags; $serverResponse = $serviceCall->GetService()->AddUetTags($request); return $serverResponse; } catch (\Exception $e) { print $serviceCall->GetService()->__getLastRequest()."\n"; print $serviceCall->GetService()->__getLastResponse()."\n"; } }); LaravelAds\Services\GoogleAds\Service::macro('dd', function(){ dd($this); }); }
然后在您的控制器或作业中调用
$bingAds = LaravelAds::bingAds()->addUetTags([ [ 'Name' => 'Extensible!', 'Description' => 'No PR Needed!', ] ]); $bingAds = LaravelAds::googleAds()->dd();
贡献
我们正在积极寻找新的贡献者。
如果您想做出贡献,请加入Discord频道并/或提交拉取请求。
许可
Laravel Ads SDK(本软件包)是开源软件,遵循MIT许可证。风险自负。Laravel Ads SDK是帮助您管理账户的工具,不保证列出的功能将按描述工作。如果您发现任何错误,请随时提交问题。本软件包与Laravel LLC或Laravel框架团队无关。