Տիրապետեք cookie- ի օրենքին ExpressionEngine- ի միջոցով

Հեղինակ: Monica Porter
Ստեղծման Ամսաթիվը: 14 Մարտ 2021
Թարմացման Ամսաթիվը: 17 Մայիս 2024
Anonim
Տիրապետեք cookie- ի օրենքին ExpressionEngine- ի միջոցով - Ստեղծագործական
Տիրապետեք cookie- ի օրենքին ExpressionEngine- ի միջոցով - Ստեղծագործական

Բովանդակություն

Թխվածքաբլիթները համեղ են: Այսպիսով, հասկանալի է, թե ինչու է ExpressionEngine- ը սիրում դրանք սպառել. Ձեր վերջին այցը հիշելուց, ձեր գտնվելու վայրը հետեւելը, ձեր զամբյուղը հիշելը կամ մուտք գործելը `դրանք պարզապես հարմար են:

Այնուամենայնիվ, որտեղ այն սկսում է քանդվել (ես բառախաղի այս հետքը չեմ քանդում - ընտելացիր դրան), նախատեսված է այն կայքերի համար, որոնք չեն կարողանում յոլա գնալ առանց cookie- ի պակաս գործարկելու, և «ենթադրյալ համաձայնության» հիմունքներով աշխատելը պարզապես չի չեմ կտրել այն

Այժմ բավականին լայնորեն ընդունված է, որ կայքերը, որոնց բլիթները գործելու համար անհրաժեշտ են, այդ ֆունկցիոնալության համար օպտիմ անելու կարիք չունեն. Դրա հավանաբար ամենատարածված օրինակը զամբյուղն է: Այսպիսով, ամեն ինչ լավ է, բայց ի՞նչ կլինի, եթե ձեր կայքը օգտագործում է նաև Google Analytics- ի, գովազդի և նույնիսկ Twitter, Facebook և Google+ կոճակների կողմից սպասարկվող երրորդ կողմի քուքիներ: Դրանք, անկասկած, ոչ էական են, և քանի որ դրանք երրորդ կողմ են, ենթադրյալ համաձայնությունը կարող է բավարար չլինել:

Ահա, որտեղ կլինեն տարբեր մտավոր դպրոցներ: Բայց այս հոդվածի համար ես կներկայացնեմ այն ​​փաստարկը, որ եթե մենք ուզում ենք բլիթներ այլ բաների համար, ինչպիսիք են Google Analytics- ը, գովազդներ մատուցելը, A / B փորձարկումն ու անթիվ այլ բաներ, որոնք դուք կցանկանաք անել EE- ում, ապա մենք կարող ենք նաև ունենա մեկ առջևի հաղորդագրություն, որն ամբողջությամբ ծածկում է միանգամից:


Մոդուլային մոտեցում

ExpressionEngine- ը գնալով մոդուլային է. Այն որոշ ժամանակ ուշադրության կենտրոնում է EllisLab- ի համար: Նրանք, ընդհանուր առմամբ, ընդունում են այն մոտեցումը, որ եթե նրանք չկարողանան API- ի միջոցով կառուցել առաջին կողմի նոր առանձնահատկությունը, ապա նախ այն կավելացնեն API- ին:

Այս մոտեցումը նշանակում է, որ որոշ ժամանակ EE- ն API- ում ունեցել է «Set Cookie» մեթոդ, ինչը, իր հերթին, նշանակում է, որ երրորդ կողմի հավելումների ճնշող մեծամասնությունն օգտագործում է այն (նրանք, ովքեր սխալ չեն անում): )

Դրա պատճառով EllisLab- ը կարողացավ փոփոխել թխուկների տեղադրման եղանակը. Եվ ExpressionEngine 2.5 – ի դրությամբ (այժմ հասանելի է որպես անվճար արդիականացում գոյություն ունեցող 2.x հաճախորդների համար) կարող եք միացնել անվճար «Թխուկների համաձայնության մոդուլ» -ը, որը մերժում է թխուկներ տեղադրելու վերաբերյալ հայցերը, եթե օգտագործողը չի համաձայնում:

Տեխնիկական տեղադրում

Առաջին հերթին համոզվեք, որ ձեր ExpressionEngine կայքը օգտագործում է առնվազն 2.5.0 տարբերակը: մոդուլը համատեղելի չէ հին տարբերակների հետ, քանի որ այն հնարավոր է դարձրել առանցքում:

Տեղադրելուց հետո մի անհանգստացեք, որ ձեր կառավարման վահանակում չեք կարող գտնել մոդուլը. Այն իրականում չի տարածվում ExpressionEngine- ում; փոխարենը այն հասանելի է առաջին կողմի հավելումների էջից:


Պարզապես ֆայլերը ներբեռնեք այնտեղ / system / expressengine / third_party / և ձեր կառավարման վահանակից միացրեք ձեր նոր մոդուլը, Լրացուցիչներ> Մոդուլներ.

Վերջ Այժմ դուք կատարել եք տեխնիկական տեղադրումը: Դիզայնի վրա

Դիզայնի տեղադրում

Իհարկե, cookie- ի համաձայնության դիզայնը տարբերվելու է կայքի առ կայության հիման վրա. և՛ տեսողական, և՛ լեզվական տեսանկյունից ՝ պատճառը փոխանցելու հանդիսատեսին: Օրինակ, չնայած որ պետական ​​կայքը կարող է պաշտոնական երթուղի անցնել, մանկական հեռուստաներկայացման կայքը կարող է հաղորդագրություն տարածել հետևյալ կերպ. «Գնա բռնիր ծնողներիդ…»:

ExpressionEngine- ի cookie- ի համաձայնության մոդուլն ընդունում է նույն գայթակղիչ շարժիչը, որն օգտագործվում է ձեր մնացած կայքի համար, այնպես որ իրականացումը պարզ է և ճկուն:

Դժվարությունն, իհարկե, ստիպում է, որ այն սխալ չզգա: Եթե ​​օգտագործողը կարծում է, որ դա կոտրված է, նա պատրաստվում է հեռանալ:


  1. Եթե, միևնույն է, համաձայնություն ենք խնդրում, մենք բլիթներ օգտագործելու հիմնավոր պատճառ ունենք: Դա բացատրեք օգտագործողին հնարավորինս հակիրճ և կապեք դրանք ձեր կայքի կողմից օգտագործվող քուքիների ամբողջական ցուցակի հետ (ինչպես օրենքն է թելադրում):
  2. Խուսափեք կարմիր գույներից. Սա խթանում է ենթադրությունը, որ ինչ-որ բան այն չէ
  3. Հաղորդագրությունն առանձնացրեք ՝ դուք ցանկանալ նրանց համաձայնությունը:
  4. Այնուամենայնիվ, պատրաստեք այն համապատասխանել կայքին: Մի փորձեք ընդօրինակել դիտարկչի բնածին հաղորդագրությունը կամ ամբողջությամբ թաքցնել էջը:

Թխվածքաբլիթի համաձայնությունը կյանքի կոչելու գերադասելի ձևը կարծես կայքի վերևում գտնվող ժապավեն ունենալն է, որը թույլտվություն է խնդրում: BBC- ն, ICO- ն և 4-րդ ալիքը բոլորը օգտագործում են այս տեխնիկան: այն չի շեղում կայքում գտնվելու պատճառից (բովանդակությունը), բայց բավական կարևոր է, որպեսզի մարդիկ ցանկանան սեղմել այն, նույնիսկ եթե պատճառը պարզապես անհետացնելն է:


Նման բարի իրականացումը անհավատալիորեն պարզ է: Ձեր ձևանմուշի մեջ, որը, ամենայն հավանականությամբ, կդառնա ձեր վերնագիրը կամ պարզապես կավելացնի (և կսրբի) հետևյալը.

{exp: cookie_consent: message} {if cookies_allowed! = "yes"} div id = "cookie-message"> h4> {site_name} օգտագործում է թխուկներ ՝ ձեր փորձը բարելավելու համար ... / h4> p> Տեղեկանիշները փոքր տեքստային ֆայլեր են, որոնք անվտանգ պահվում են ձեր համակարգչում: Դրանք թույլ են տալիս կայքերին կատարել խելացի բաներ, ինչպիսիք են հիշել `արդյոք դուք խնդրել եք մուտք գործել համակարգ, կամ ինչ ունեք ձեր զամբյուղում: Մենք նաև օգտագործում ենք բլիթներ ՝ պարզելու համար, թե ինչպես են մարդիկ օգտագործում այս կայքը, որպեսզի հետագայում այն ​​ավելի լավ դարձնենք: Այս քուքիները չեն պարունակում որևէ անձնական կամ զգայուն տեղեկատվություն և օգտագործվում են միայն {site_name} - ի և մեր վստահելի գործընկերների կողմից, ինչպիսիք են Facebook- ը և Google- ը: a href = "{cookies_allowed_link}"> Ընդունել և փակել այս հաղորդագրությունը / a> / p> / div> {/ if} {/ exp: cookie_consent: message}

Ուրեմն եկեք քանդենք դա: Նախևառաջ, մենք ցանկանում ենք բեռնել cookie- ի համաձայնության նոր մոդուլը: Դրա շրջանակներում կա հարմար փոփոխական {թխուկների_թույլատրված}, որը պարզ Boolean- է ասում է մեզ, շատ պարզ ՝ արդյո՞ք օգտվողը մեզ թույլ է տվել թխուկներ օգտագործելու թույլտվություն, թե ոչ:


Օգտագործելով սա ՝ մենք կարող ենք արագորեն հայտնաբերել, որ օգտագործողը դեռ մեզ թույլտվություն չի տվել և մի քանի լրացուցիչ HTML է մատուցում: Պարզապես, մենք ունենք ծածկույթի div, որն ավելացնում է խամրած ֆոնը և դրա մեջ հենց հաղորդագրությունը:

Վերջապես, դուք ցանկանում եք օգտվողին հնարավորություն տալ ջնջել բլիթները և հրաժարվել ապագա պահվող բլիթներից: Դրա համար մենք կրկին օգտագործում ենք վստահության if- հայտարարությունը, բայց այս անգամ հակադարձում ենք դրան, այնպես որ մենք արդյունավետորեն անում ենք. «Եթե բլիթներն ընդունվել են, եկեք ցույց տանք դրանց անջատելու հղումը»:

{exp: cookie_consent: message} {if cookies_allowed == 'yes'} a href = "{clear_ee_cookies_link}"> Մոռացեք իմ բլիթները և այլևս մի պահեք ... / a> {/ if} {/ exp: cookie_consent : հաղորդագրություն}

Եվ դրանով դուք ավարտում եք Cookie համաձայնության մոդուլի հիմնական ներդրումը:

Թերություններ և դրանց հաղթահարում

Cookie համաձայնության մոդուլը գործում է միայն այն դեպքում, եթե cookie- ն սահմանվել է ExpressionEngine API- ի միջոցով: Արտաքին քուքիները, ինչպիսիք են JavaScript- ում դրված (օրինակ ՝ Google Analytics), չեն հարգում օգտագործողի որոշումն այստեղ: Սա լուծելու միջոցներից մեկը `մեջը JavaScript- ը փաթաթելն է.


{exp: cookie_consent: message} {if cookies_allowed == 'yes'} {/ if} {/ exp: cookie_consent: message}

Այսպիսով, այն կտա միայն այն ժամանակ, երբ օգտվողները թույլ կտան ExpressionEngine- ին (այդպիսով ՝ ձեր կայքին) թույլտվություն: Իհարկե, ձեզ դեռ պետք է Google- ի կողմից սահմանված քուքիները հեռացնելու միջոց. Պոտենցիալ տարբերակներից մեկն այն է, որ գործարկվի JavaScript- ը «Քուքիները մաքրվում են» համակարգի հաղորդագրությունների վրա, որոնց մասին խոսելիս ես ատում եմ ExpressionEngine «Օգտագործող հաղորդագրություններ» համակարգը:

Կարծում եմ, որ դրանք ինքնին տգեղ են և օգտվողներին դուրս են բերում ձեր կայքի ընդհանուր ոճից: Դժբախտաբար, մոդուլն օգտագործում է այս համակարգի հաղորդագրությունները ՝ մոտ հինգ վայրկյան շարունակ հպարտորեն օգտագործողին ասելու «Թխուկներն ընդունվել են»: Չնայած դրանք սահուն կերպով հարդարվում են, դրանք դուրս են գալիս ExpressionEngine- ի գայթակղիչ համակարգից և, որպես կանոն, կարծես սխալ հաղորդագրություններ լինեն - լրացումներ, ինչպիսիք են devot-ee.com/add-ons/custom-system-messages հնարավորություն կտա կայքի հետագա ինտեգրումը:

Այլընտրանքային հնարք, որը ես օգտագործել եմ այս մոդուլի միջոցով մեկ կամ երկու կառուցվածքների վրա, jQuery POST հարցում ուղարկելն է «Ընդունում եմ» URL- ին. Այս մեթոդի միջոցով կարող ես շրջանցել համակարգի էկրանները և ընտրել ՝ ցուցադրելու քո սեփական ՝ լավ մշակված, շնորհակալություն: հաղորդագրություն

Իմ վերջնական նպատակն է կայքերն այնպես անել, որ բլիթները պահանջեն միայն այն ժամանակ, երբ առաջին հերթին դա նրանց պետք է: Դա երկսայրի սուր է, քանի որ Google Analytics- ը, իհարկե, անգնահատելի է, ուստի ես իսկապես ուզում եմ, որ այդ համաձայնությունը կայանա նրանց առաջին վայրկյանին, բայց ես զգում եմ, որ դա կարող է այդքան էլ լավ չաշխատել: Այսպիսով, գուցե մենք կարող ենք մի փոքր ավելի խելացի լինել դրա մասին (առանց շատ նման լինելով Office- ի Clippy- ին):


  • «Այս ապրանքը ձեր զամբյուղին ավելացնելու համար կտտացրեք այստեղ ՝ թխուկներ ընդունելու համար»
  • «Մուտք գործելով կայք ՝ դուք համաձայն եք, որ կարող ենք բլիթներ պահել ձեր համակարգչում»

Վերջապես, այս օրենքը հատուկ է ԵՄ-ին, և նույնիսկ այդ դեպքում այն ​​փոքր-ինչ տարբերվում է երկրից երկիր: Ի վերջո, մենք կցանկանայինք դա տեսնել, այնպես որ մոդուլի վարքը փոխվում է օգտագործողի գտնվելու վայրի հիման վրա `օգտագործելով ներկառուցված« IP- ն ազգին »մոդուլը: Դա դեռ հնարավոր չէ Բայց դա նաև վաղ օրեր է:

Եզրակացություն

Չնայած մենք կարող ենք բողոքել օրենքից, բայց իրականում չենք կարող այն օգնության մասին, որը EllisLab- ը մեզ տվել է ՝ դրան համապատասխանելու համար: Ընկերության կողմից ձեռնարկված պատասխանատու մոտեցումը ապահովում է, որ CMS- ը կարող է շարունակվել օգտագործվել ԵՄ երկրներում `առանց հակերների կամ (պոտենցիալ թանկ) լուծումների:

Իրականացումը նույնպես պարզ է: 2.5 տեղադրումը պետք է տևի կես ժամից պակաս, և չնայած օրենքը պահանջում է ընդամենը մի փոքր ավելին, քան դա, այն իրոք ընդգրկում է խնդրի ամենամեծ տեխնիկական կողմը:

Թարմ Հրապարակումներ
Adobe- ը գովում է Blink- ի և զննարկչի բազմազանության մասին
Կարդալ Ավելին

Adobe- ը գովում է Blink- ի և զննարկչի բազմազանության մասին

Adobe Web Platform- ի թիմի ինժեներական տնօրեն Վենսան Հարդին ասել է, որ կարծում է, որ Google- ի Blink նախագիծը կշահի համացանցը, չնայած այն մտավախություններին, որ դա կարող է տրոհել:«Փոփոխվող վեբ պլ...
Վեբ ստանդարտների նախագիծը փակելու համար
Կարդալ Ավելին

Վեբ ստանդարտների նախագիծը փակելու համար

Web tandard Project (Wa P) կայքը հայտարարել է, որ իր աշխատանքն ավարտված է: Մոտ ապագայում կկազմվի կայքի և որոշ այլ ռեսուրսների մշտական, ստատիկ արխիվ ՝ այն որպես ռեսուրս և գրառում պահպանելու համար:Կայքո...
Adobe Fresco ձեռնարկ. Ստեղծեք դիմանկար նկարչական հավելվածում
Կարդալ Ավելին

Adobe Fresco ձեռնարկ. Ստեղծեք դիմանկար նկարչական հավելվածում

Adobe Fre co- ի այս ձեռնարկի համար ես կստեղծեմ կենսունակ և հուզիչ դիմանկար ՝ ցույց տալով, թե ինչպես կարող են տարբեր տեխնիկա և հյուսվածքներ օգտագործվել հավելվածում ՝ ձեր արվեստին կյանք և իրատեսություն ...