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.
Kapcsolattartó API
Szekció neve “Kapcsolattartó API”<?php
$contactApi = FluentCrmApi('contacts');Kapcsolattartó lekérése
Szekció neve “Kapcsolattartó lekérése”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();Adatok elérése
Szekció neve “Adatok elérése”<?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áiAdatok módosítása
Szekció neve “Adatok módosítása”<?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', '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ő leveletif ($contact->status === 'pending') { $contact->sendDoubleOptinEmail();}Kapcsolattartók szűrése
Szekció neve “Kapcsolattartók szűrése”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();Listák és címkék
Szekció neve “Listák és címkék”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: