Kutumia Wasikilizaji wa Matukio wa __tcfapi: Mafunzo kwa Wasanidi wa Hati Zinazozingatia Idhini

Kwa Nini Hati Zako Zinapaswa Kusikiliza, Si Kuuliza Mara kwa Mara

Hati yoyote inayotegemea idhini — lebo ya tangazo, kipakiaji cha uchanganuzi, kifungashio cha header bidding — inahitaji kujua mambo mawili: kama CMP tayari ina uamuzi, na uamuzi huo ni upi. Kosa la kawaida ni kusoma kidakuzi wakati wa kupakia ukurasa, au kuuliza CMP kwa kipima muda hadi kitu kitokee. Njia zote mbili huvunjika kwa njia zinazotabirika: muundo wa kidakuzi ni wa ndani wa CMP na unaweza kubadilika, na kuuliza mara kwa mara ama huwaka mapema mno au hupoteza muda kusubiri.

IAB TCF inafafanua kiolesura cha kawaida cha JavaScript kwa kazi hii hasa: kitendakazi cha __tcfapi. Mafunzo haya yanapitia amri unazohitaji kweli, matukio utakayopokea, na hitilafu zinazojitokeza mara nyingi zaidi katika uzalishaji.

Stub na Foleni

CMP ya TCF inatarajiwa kuweka stub ndogo kwenye ukurasa mapema iwezekanavyo, kabla hati kamili ya CMP haijapakiwa. Stub inafafanua window.__tcfapi na kuweka kwenye foleni miito yoyote iliyofanywa kabla CMP haijawa tayari. CMP inapomaliza kupakia, huchakata foleni na kujibu kila mwito.

Hiki ndicho kinachofanya iwe salama kwa hati nyingine kuita __tcfapi mara moja: mradi stub iko kwenye ukurasa kabla yao, miito yao haipotei. Ikiwa hati inatupa hitilafu kwa sababu __tcfapi haijafafanuliwa, stub ama haipo au inapakiwa kuchelewa mno — rekebisha mpangilio wa upakiaji badala ya kuongeza majaribio ya kurudia.

Amri Zinazojali

ping

__tcfapi('ping', 2, callback) hurejesha hali ya msingi bila kusubiri uamuzi wa mtumiaji. Jibu linajumuisha cmpLoaded, cmpStatus kama stub, loading, loaded au error, na displayStatus ya visible, hidden au disabled. Pia huripoti gdprApplies inapojulikana. Itumie kwa uchunguzi na kuamua kama TCF inahusika kabisa kwa mgeni huyu.

addEventListener

__tcfapi('addEventListener', 2, callback) ndiyo amri ambayo miunganisho mingi inapaswa kutumia. Kipigiwa-simu hupokea kitu cha tcData na bendera ya mafanikio, na huitwa tena kila hali ya idhini inapobadilika. Tangu TCF v2.2, hii ndiyo njia inayopendekezwa ya kupata data ya idhini; amri ya zamani ya getTCData iliachwa.

removeEventListener

Kila kitu cha tcData hubeba listenerId. Kipitishe kwa __tcfapi('removeEventListener', 2, callback, listenerId) hati yako isipohitaji masasisho tena — kwa mfano, kipakiaji cha mara moja ambacho tayari kimefanya uamuzi wake.

Kusoma eventStatus

Sehemu muhimu katika tcData ni eventStatus. Kuna thamani tatu:

Kipakiaji cha kawaida husubiri ama tcloaded au useractioncomplete, kisha hukagua madhumuni na wauzaji kinaohitaji. Hupuuza cmpuishown isipokuwa labda kurekodi kwamba bango lilitokea.

Kukagua Madhumuni na Wauzaji

Ndani ya tcData, idhini na maslahi halali hufichuliwa kama vitu vilivyopangwa kwa kitambulisho:

Kagua madhumuni na muuzaji wote wawili. Idhini ya madhumuni bila idhini ya muuzaji, au kinyume chake, haitoshi kwa wauzaji wengi kuchakata data.

Iframe na Miito ya Kuvuka Fremu

Matangazo na wijeti mara nyingi hufanya kazi ndani ya iframe ambazo haziwezi kuona __tcfapi ya ukurasa mzazi. TCF hulitatua hili kwa itifaki ya postMessage: CMP huongeza fremu iitwayo __tcfapiLocator kwenye ukurasa wa juu, na msimbo ndani ya iframe unaweza kuipata, kutuma ujumbe wa __tcfapiCall na kupokea jibu la __tcfapiReturn. SDK nyingi za matangazo tayari hufanya hivi. Ukiandika msimbo wako mwenyewe wa iframe, tekeleza mchoro huohuo badala ya kusoma vidakuzi kuvuka fremu.

Hitilafu za Kawaida na Jinsi ya Kuzibaini

  1. Kuchukua hatua kwa cmpuishown. Hati zinazopakia mara tu kitendakazi cha callback chochote kinapowaka hufanya kazi kabla mtumiaji hajaamua. Chuja kwa eventStatus.
  2. Kuondoa msikilizaji mapema mno. Ukimwondoa baada ya kitendakazi cha callback cha kwanza, utakosa useractioncomplete ya baadaye na hutapakia kamwe.
  3. Kupuuza kuondolewa kwa idhini. Hati za kudumu zinapaswa kuendelea kusikiliza na kusimama au kujisanidi upya idhini inapoondolewa.
  4. Kupuuza gdprApplies. Nje ya maeneo ya TCF, vitu vya madhumuni vinaweza kuwa tupu; kulichukulia hilo kama “hakuna idhini” kunaweza kuzima mapato ambayo unaruhusiwa kuyapata.
  5. Kutokagua bendera ya mafanikio. success inapokuwa false, irekodi; kwa kawaida inaashiria usanidi uliovunjika wa CMP.

Kujaribu Muunganisho Wako

Kwenye koni ya kivinjari, ita __tcfapi('ping', 2, console.log) ili kuthibitisha kwamba CMP ipo, kisha sajili msikilizaji ukiwa na console.log kama kitendakazi cha callback na upitie bango. Unapaswa kuona cmpuishown ikifuatiwa na useractioncomplete katika ziara ya kwanza, na tcloaded baada ya kupakia upya. Rudia kwa kukubali yote, kukataa yote na uteuzi maalum, na uthibitishe kwamba hati yako inafanya kazi ipasavyo katika kila hali.

Mambo Muhimu ya Kukumbuka

← Blogu Soma Zote →