webmid / laravel-ads-sdk
Laravel Ads SDK,用于Google Ads、Bing Ads和Facebook Ads API
Requires
- php: >=7
- facebook/php-business-sdk: ^13.0
- googleads/googleads-php-lib: ^49.0
- microsoft/bingads: ^13.0.14
Requires (Dev)
- php-coveralls/php-coveralls: ^2.0
- phpunit/phpunit: 6.*
This package is auto-updated.
Last update: 2024-09-20 10:45:37 UTC
README
加入Discord – 用于支持、更新和协作。
针对 Google Ads、Bing Ads 和 Facebook Ads API。
这是一个将每个广告源连接到您的Laravel应用程序的包装器。此SDK提供比官方SDK更干净、更一致的平台集成,从而使得在项目中实现更为简单。您不需要学习如何与每个API进行通信和理解响应。
安装
使用Composer安装软件包。
运行composer require webmid/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营销API
管理
报告
自定义
我们意识到我们无法添加每个端点,因此为了帮助提高您的开发体验,我们已使服务类可宏化。宏是一种向类中添加新自定义方法的方式。这样,您就可以利用该包中现有的所有auth以及所有其他好处。
通常,您应该从您应用程序的某个服务提供商的启动方法中调用此方法,例如 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 频道并/或提交pull请求。
许可证
Laravel Ads SDK(本包)是开源软件,根据MIT许可证授权。使用风险自担。Laravel Ads SDK是一个帮助您管理账户的工具,不保证此处列出的功能将按描述工作。如果您发现任何错误,请随时提交问题。本包与Laravel LLC或Laravel框架团队无关。