vanquyet94 / laravel-ads-sdk
用于Google Ads、Bing Ads和Facebook Ads API的Laravel Ads SDK
Requires
- php: >=7
- facebook/php-business-sdk: ^13.0
- googleads/googleads-php-lib: ^49.0
- microsoft/bingads: ^13.0.13
Requires (Dev)
- php-coveralls/php-coveralls: ^2.0
- phpunit/phpunit: 6.*
This package is auto-updated.
Last update: 2024-09-29 06:02:25 UTC
README
加入Discord – 用于支持、更新和协作。
针对Google Ads、Bing Ads和Facebook Ads API。
这是一个将每个广告源连接到您的Laravel应用的包装器。此SDK比官方SDK提供更干净、更一致的跨多个广告平台的集成,最终使项目中的实现变得更加容易。您不需要学习如何与每个API进行通信和理解其响应。
安装
使用Composer安装包。
运行composer require tmarois/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和客户端密钥才能继续。 了解更多信息
按照命令行中的步骤来生成refresh token。
运行php artisan laravelads:token:generate --service=GoogleAds
遇到麻烦? 了解更多信息
👉 对于BingAds
您需要您的开发令牌、客户端ID和客户端密钥才能继续。 了解更多信息
按照命令行中的步骤来生成refresh token。
运行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框架团队无关。