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

Weby, ciele a zdieľané odkazy

Analytiku môžete zriaďovať z kódu — užitočné pre multi-tenant produkty, kde má každý zákazník vlastný web v Plausible. Všetky tri API zdieľajú limit požiadaviek oblasti sites.

Weby

Sites API je funkcia plánu Enterprise a vyžaduje kľúč Sites API — kľúč Stats API tam bude odmietnutý (pozri API kľúče v Konfigurácii).

use RoundlyConsulting\Plausible\Facades\Plausible;
use RoundlyConsulting\Plausible\Requests\Sites\CreateSiteRequest;
use RoundlyConsulting\Plausible\Requests\Sites\UpdateSiteRequest;

$site = Plausible::sites()->create(CreateSiteRequest::make(
    domain: 'my.domain.tld',
    timezone: 'Europe/Bratislava',                   // default 'Etc/UTC'
));                                                  // -> SiteResult

$site  = Plausible::sites()->get('my.domain.tld');   // -> SiteResult
$site->domain;                                       // 'my.domain.tld'
$site->timezone;                                     // 'Europe/Bratislava'
$site->data;                                         // the full payload

$sites = Plausible::sites()->list();                 // -> list<SiteResult>

Plausible::sites()->update(UpdateSiteRequest::make(
    site: 'my.domain.tld',                           // the current domain
    domain: 'new.domain.tld',                        // optional: new domain
    timezone: 'Europe/Prague',                       // optional: new timezone
));                                                  // -> SiteResult

$deleted = Plausible::sites()->delete('my.domain.tld');   // -> bool

create(), get(), list() a update() vracajú typované objekty SiteResult; delete() vráti true, pokiaľ Plausible neodpovie deleted: false, a neúspešná požiadavka vyhodí výnimku. list() prechádza kurzorovým stránkovaním Plausible (meta.after, 100 na stranu) a vráti všetky weby. Identifikátory webov a cieľov sa v ceste požiadavky URL-kódujú, takže hodnota s / alebo ? sa nedostane k inému endpointu.

Ciele

Ciele sú súčasťou Sites API — funkcie plánu Enterprise, ktorá vyžaduje kľúč Sites API. CreateGoalRequest::event() vytvorí cieľ pre vlastnú udalosť, ::page() cieľ pre zobrazenie stránky a list() prejde všetky strany:

use RoundlyConsulting\Plausible\Requests\Sites\CreateGoalRequest;

$goal = Plausible::goals()->create(CreateGoalRequest::event('my-site.com', 'Signup'));  // -> GoalResult
Plausible::goals()->create(CreateGoalRequest::page('my-site.com', '/checkout'));

$goal->id;          // 42
$goal->goalType;    // 'event' or 'page'
$goal->eventName;   // 'Signup'
$goal->pagePath;    // null for event goals

$goals = Plausible::goals()->list('my-site.com');         // -> list<GoalResult>, every page
Plausible::goals()->delete('my-site.com', $goal->id);     // -> bool

Zdieľané odkazy

Aj zdieľané odkazy patria do Sites API. create() nájde existujúci odkaz alebo vytvorí nový — ak odkaz s daným názvom už existuje, Plausible vráti ten — a endpoint berie iba web a názov, takže ochrana heslom nie je k dispozícii:

use RoundlyConsulting\Plausible\Requests\Sites\CreateSharedLinkRequest;

// Find-or-create: Plausible returns the existing link when one with that name exists
$link = Plausible::sharedLinks()->create('my-site.com', 'Public dashboard');  // -> SharedLinkResult
$link->name; // 'Public dashboard'
$link->url;  // shareable dashboard URL

// Or pass an explicit request object
Plausible::sharedLinks()->createFrom(CreateSharedLinkRequest::make('my-site.com', 'Board'));

Životný cyklus zákazníka

Spolu to znamená, že analytika je pripravená od prvého dňa zákazníka a zmizne, keď odíde:

// Provision analytics when a tenant signs up …
Plausible::sites()->create(CreateSiteRequest::make(domain: $tenant->domain, timezone: $tenant->timezone));
Plausible::goals()->create(CreateGoalRequest::event($tenant->domain, 'Signup'));
$dashboard = Plausible::sharedLinks()->create($tenant->domain, 'Customer dashboard')->url;

// … and tear it down when they leave
Plausible::sites()->delete($tenant->domain);

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.