keithbrink/affiliates-spark

Laravel Spark的联盟包,允许您跟踪联盟的推荐并支付佣金

1.2.4 2020-08-10 06:28 UTC

README

Laravel Spark提供的联盟包,允许您跟踪联盟的推荐并支付佣金。

安装

1.*版本支持Cashier 10+ / Laravel 6+。要使用旧版本,请使用0.*版本之一。

要获取最新版本,只需使用Composer引入项目。

$ composer require keithbrink/affiliates-spark

配置

  1. 在您的User模型中,添加Affiliate特质
use KeithBrink\AffiliatesSpark\Traits\Affiliate as AffiliateTrait;

class User extends SparkUser {
    use AffiliateTrait;
    ...
}
  1. 在您的SparkServiceProvider中,添加以下函数以处理将联盟ID添加到数据库中
Spark::createUsersWith('KeithBrink\AffiliatesSpark\Interactions\SaveAffiliateOnRegistration@createUser');
Spark::createTeamsWith('KeithBrink\AffiliatesSpark\Interactions\SaveAffiliateOnRegistration@createTeam');

或者,如果您想添加额外的数据到用户注册,可以直接使用交互

use KeithBrink\AffiliatesSpark\Interactions\SaveAffiliateOnRegistration;
...
Spark::createUsersWith(function ($request) {
    $extra_data = [
        ...
    ];

    $interaction = new SaveAffiliateOnRegistration;
    return $interaction->createUser($request, $extra_data);
});
  1. 在菜单下拉菜单中添加联盟链接。编辑\resources\views\vendor\spark\nav\user.blade.php,在开发者菜单项(第65行)下添加以下代码
@if (Auth::user()->isAffiliate())
    @include('affiliates-spark::nav.affiliate-menu-item')
@endif
  1. 在Kiosk菜单中添加管理联盟的链接。编辑您的\resources\views\vendor\spark\kiosk.blade.php,在度量链接项(第30行)下添加以下代码
<!-- Affiliates Link -->
@include('affiliates-spark::nav.affiliate-menu-item-kiosk')

并在同一文件下的选项卡卡片中添加以下代码

<!-- Affiliates Tab -->
@include('affiliates-spark::nav.affiliate-tab-item-kiosk')
  1. 使用命令发布包javascript:php artisan vendor:publish --provider="KeithBrink\AffiliatesSpark\AffiliatesSparkServiceProvider" --tag=javascript。然后,在您的/resources/js/app.js中引入包javascript
require('./affiliates-spark/bootstrap');

请记住使用npm run dev编译资源。

  1. 使用命令发布包视图:php artisan vendor:publish --provider="KeithBrink\AffiliatesSpark\AffiliatesSparkServiceProvider" --tag=views。您应该在/resources/views/vendor/affiliates-spark/affiliates/instructions.blade.php中为您的联盟输入说明。

  2. 使用命令运行包迁移:php artisan migrate --package "keithbrink/affiliates-spark"

可选配置

  1. 如果您希望客户在订阅页面上看到他们从联盟收到的折扣,在您的resources/views/vendor/spark/settings/subscription/subscription-notice.blade.php文件中,在@else语句(第9行)之后添加
@include('affiliates-spark::subscription.affiliate-discount')

用法

  1. 在您希望为发送人员到任何页面进行联盟信用的地方添加脚本:<script async="" src="/a-s/aff.js"></script>。您也可以通过使src URL绝对而不是相对,将该脚本添加到同一顶级域的不同子域。

许可证

SegmentSpark遵循MIT许可证(MIT)