Tovább a tartalomhoz

PHP API: kapcsolattartók, listák és címkék

Kapcsolattartók keresése, létrehozása, módosítása és szűrése PHP-ból, valamint a listák és címkék elérése.

A FluentCRM PHP API-jával a saját bővítményed vagy sablonod kódjából is kezelheted a kapcsolattartókat, listákat és címkéket. Az API-t a FluentCrmApi() függvény adja.

<?php
$contactApi = FluentCrmApi('contacts');

A getContact() e-mail-címet vagy kapcsolattartó-azonosítót fogad. Fontos: ez az azonosító nem a WordPress-felhasználó azonosítója.

<?php
// E-mail-cím vagy kapcsolattartó-azonosító alapján
$contact = $contactApi->getContact($emailOrContactId);
// Csak azonosító alapján
$contact = $contactApi->getContact($contactId);
// Csak e-mail-cím alapján
$contact = $contactApi->getContact($emailAddress);
// WordPress-felhasználó azonosítója alapján
$contact = $contactApi->getContactByUserRef($userId);
// A bejelentkezett felhasználó kapcsolattartója
$contact = $contactApi->getCurrentContact();
<?php
$firstName = $contact->first_name;
$lastName = $contact->last_name;
$email = $contact->email;
$tags = $contact->tags()->get(); // a kapcsolattartó címkéi
$lists = $contact->lists()->get(); // a kapcsolattartó listái
<?php
// Alapmezők
$contact->first_name = 'Új keresztnév';
$contact->last_name = 'Vezetéknév';
$contact->save();
// Címkék hozzáadása és eltávolítása
$contact->attachTags([1, 2, 3]);
$contact->detachTags([1, 2, 3]);
// Listák hozzáadása és eltávolítása
$contact->attachLists([2, 3]);
$contact->detachLists([2, 3]);

Létrehozás vagy frissítés egy hívással

Szekció neve “Létrehozás vagy frissítés egy hívással”

A createOrUpdate() új kapcsolattartót hoz létre, vagy a meglévőt frissíti. Az email mező kötelező.

<?php
$contactApi = FluentCrmApi('contacts');
$data = [
'first_name' => 'János',
'last_name' => 'Minta',
'email' => '[email protected]', // kötelező
'status' => 'pending',
'tags' => [1, 2, 3], // címkeazonosítók
'lists' => [4], // listaazonosítók
];
$contact = $contactApi->createOrUpdate($data);
// Függő (pending) állapotnál elküldheted a megerősítő levelet
if ($contact->status === 'pending') {
$contact->sendDoubleOptinEmail();
}

A szűréshez a getInstance() lekérdezést ad vissza. A végén a get() helyett használhatsz paginate()-et is.

<?php
// Feliratkozott kapcsolattartók
$subscribed = $contactApi->getInstance()
->where('status', 'subscribed')
->get();
// Függő és leiratkozott kapcsolattartók
$contacts = $contactApi->getInstance()
->whereIn('status', ['unsubscribed', 'pending'])
->get();
// Címkeazonosítók alapján
$tagContacts = $contactApi->getInstance()->filterByTags([1, 2])->get();
// Listaazonosítók alapján
$listContacts = $contactApi->getInstance()->filterByLists([1, 2])->get();
// Keresés szövegre
$found = $contactApi->getInstance()->searchBy('keresett szöveg')->get();

A FluentCRM-ben a lista és a címke is a kapcsolattartók csoportosítására szolgál.

<?php
$listApi = FluentCrmApi('lists');
$allLists = $listApi->all(); // az összes lista
$list = $listApi->find(1); // egy lista azonosító alapján
$listId = $list->id;
$listTitle = $list->title;
$listSlug = $list->slug;

A címkék ugyanígy érhetők el:

<?php
$tagApi = FluentCrmApi('tags');
$allTags = $tagApi->all(); // az összes címke
$tag = $tagApi->find(1); // egy címke azonosító alapján
$tagId = $tag->id;
$tagTitle = $tag->title;
$tagSlug = $tag->slug;

Címkék ellenőrzése egy kapcsolattartón

Szekció neve “Címkék ellenőrzése egy kapcsolattartón”

A hasAnyTagId() megmondja, hogy a kapcsolattartónak van-e legalább egy címkéje a megadottak közül:

<?php
$contactApi = FluentCrmApi('contacts');
// A bejelentkezett felhasználó kapcsolattartója
$contact = $contactApi->getCurrentContact();
$targetTagIds = [1, 2, 3];
$isInTags = ($contact && $contact->hasAnyTagId($targetTagIds));

Készült:

Tiszteletben tartjuk a magánszférádat

Sütiket használunk a böngészési élmény javítására és a forgalom elemzésére. Az analitika csak akkor indul, ha engeded. Adatvédelmi irányelvek, Sütitájékoztató.

Sütibeállítások