NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Plausible for Laravel

Udalosti modelov (Trackable)

Trait Trackable posiela udalosti Plausible pri udalostiach životného cyklu Eloquentu. Udalosť modelu priraďte k názvu udalosti v $plausibleEvents a voliteľne zostavte props pre každý model:

use Illuminate\Database\Eloquent\Model;
use RoundlyConsulting\Plausible\Concerns\Trackable;

class Order extends Model
{
    use Trackable;

    /** @var array<string, string> */
    protected array $plausibleEvents = [
        'created' => 'Order Placed',
        'updated' => 'Order Updated',
        'deleted' => 'Order Cancelled',
    ];

    /** @return array<string, mixed> */
    protected function plausibleEventProps(string $event): array
    {
        return ['total' => $this->total, 'plan' => $this->plan];
    }
}

Ako kľúč funguje akákoľvek udalosť Eloquent modelu — created, updated, deleted a ďalšie. Mapa sa číta z predvolenej hodnoty vlastnosti pri bootovaní modelu.

Úprava obsahu udalosti

Prepíšte tieto chránené metódy; prvé dve dostanú názov udalosti Plausible (napríklad Order Placed):

  • plausibleEventProps(string $event) — vlastné props odoslané s udalosťou (predvolene žiadne).
  • plausibleEventUrl(string $event) — URL priradená udalosti; predvolene URL aplikácie, tabuľka a kľúč modelu.
  • plausibleEventSite() — web, kam udalosť ide; predvolene config('plausible.site'), hodnota null udalosť preskočí.
// The URL attributed to the event — defaults to {app.url}/{table}/{key}
protected function plausibleEventUrl(string $event): string
{
    return route('orders.show', $this);
}

// The site the event goes to — defaults to config('plausible.site'); null skips the event
protected function plausibleEventSite(): ?string
{
    return $this->tenant->analytics_domain;
}

Ručné odoslanie udalosti

// Same site, visitor and queue rules as the lifecycle hooks — any event name
$order->dispatchPlausibleEvent('Order Refunded');

Návštevník, web a fronta

Návštevník sa berie z aktuálneho requestu, ak existuje. Bez HTTP requestu — vo fronte či v konzolových príkazoch — sa použijú plausible.tracking.user_agent a plausible.tracking.ip_address. Udalosti sa posielajú len vtedy, keď je web známy, a cez frontu, pokiaľ plausible.tracking.queue nie je false.

Prejavte lásku k open source

Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.

Ďalšie spôsoby podpory vrátane kryptomien

Odoslaním daru súhlasíte s našimi podmienkami prijímania darov.

Chcete to zabudovať do svojho produktu?

Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.