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

Dotazy Stats v2

Zjednotený endpoint /api/v2/query sprístupňuje dimenzie, radenie, stránkovanie a bohatšie metriky. Ovládate ho tým istým builderom cez dimensions(), orderBy(), include(), poľové filter() a terminál run():

use RoundlyConsulting\Plausible\Enums\Dimension;
use RoundlyConsulting\Plausible\Enums\Metric;

$result = Plausible::stats()
    ->for('my-site.com')
    ->metrics(Metric::Visitors, Metric::BounceRate)
    ->dimensions(Dimension::EventPage)
    ->filter(['is', 'visit:browser', ['Chrome']])
    ->orderBy(['visitors', 'desc'])
    ->include(['imports' => true])
    ->between(now()->subDays(7), now())
    ->perPage(10)
    ->page(2)                                      // pagination: limit 10, offset 10
    ->run();                                       // -> QueryResult

foreach ($result->rows() as $row) {
    $row->dimension(0);   // e.g. "/pricing"
    $row->metric(0);      // visitors
    $row->metric(1);      // bounce_rate
}

$result->meta();          // the response's meta block
$result->query();         // the query as Plausible ran it
$result->collect();       // Collection<int, QueryRow>
$result->response();      // the raw Response

Každý QueryRow drží pozičné hodnoty: metric($i) zodpovedá poradiu v metrics(), dimension($i) poradiu v dimensions(). perPage() a page() sa premietnu do stránkovania požiadavky ako limit a offset.

Časové úseky

Vo v2 delíte údaje v čase dimenziou time:* (TimeHour, TimeDay, TimeWeek, TimeMonth) namiesto interval():

// Bucket by day with a time:* dimension instead of interval()
$daily = Plausible::stats()
    ->for('my-site.com')
    ->metrics(Metric::Visitors)
    ->dimensions(Dimension::TimeDay)
    ->last30Days()
    ->run();

Rozsahy dátumov

run() posiela pomenované obdobia ako relatívny date_range a rozsah z between() alebo since() ako ISO dátumy [start, end] — since() rozsah uzavrie dneškom. Samotné Period::Custom bez dátumov prejde na 30d.

Explicitný QueryRequest

Požiadavku si môžete zostaviť aj sami a zavolať runQuery():

use RoundlyConsulting\Plausible\Enums\Dimension;
use RoundlyConsulting\Plausible\Enums\Metric;
use RoundlyConsulting\Plausible\Requests\Stats\QueryRequest;

$result = Plausible::stats()->runQuery(QueryRequest::make(
    site: 'my-site.com',
    metrics: [Metric::Visitors, Metric::Pageviews],
    dateRange: ['2026-01-01', '2026-01-31'],       // or '30d' / Period::ThirtyDays
    dimensions: [Dimension::VisitCountry],
    orderBy: [['visitors', 'desc']],
    limit: 25,
));                                                // -> QueryResult

Stats v2 je dostupné na Plausible Cloud a v novších self-hosted verziách. Staršie self-hosted inštancie môžu ponúkať iba endpointy v1.

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.