Hallitse evästelaki ExpressionEnginen avulla

Kirjoittaja: Monica Porter
Luomispäivä: 14 Maaliskuu 2021
Päivityspäivä: 17 Saattaa 2024
Anonim
Hallitse evästelaki ExpressionEnginen avulla - Luova
Hallitse evästelaki ExpressionEnginen avulla - Luova

Sisältö

Evästeet ovat herkullisia. Joten on ymmärrettävää, miksi ExpressionEngine haluaa kuluttaa niitä: muistelemalla edellistä vierailua, seuraamalla sijaintiasi, muistamalla ostoskorisi tai kirjautuneena sisään - ne ovat vain käteviä.

Kuitenkin, jos se alkaa murentua (en ojaa tätä sanamerkkiä - tottuu siihen), se on sivustoille, jotka eivät pääse toimeen ilman evästeettömyyttä, ja juokseminen "implisiittisellä suostumuksella" yksinkertaisesti ei älä leikkaa sitä.

Nyt on yleisesti hyväksytty, että sivustot, jotka tarvitsevat evästeitä toimiakseen, eivät tarvitse tätä toimintoa. luultavasti yleisin esimerkki tästä on ostoskori. Joten kaikki on hyvin, mutta entä jos sivustosi käyttää myös kolmansien osapuolten evästeitä, joita tarjoavat Google Analytics, mainokset ja jopa Twitter, Facebook ja Google+ -painikkeet? Ne ovat kiistatta välttämättömiä, ja koska he ovat kolmannet osapuolet, implisiittinen suostumus ei välttämättä riitä.

Tässä on erilaisia ​​ajattelukouluja. Mutta tässä artikkelissa aion väittää, että jos haluamme evästeitä muille asioille, kuten Google Analyticsille, mainosten näyttämiselle, A / B-testaukselle ja lukemattomille muille asioille, joita haluat ehkä tehdä EE: ssä, niin voimme myös sinulla on yksi ainoa etuviesti, joka kattaa kaiken yhdellä kertaa.


Modulaarinen lähestymistapa

ExpressionEngine on yhä modulaarisempi: se on ollut EllisLabin painopiste jo jonkin aikaa. He käyttävät yleensä sitä lähestymistapaa, että jos he eivät pysty rakentamaan uutta ensimmäisen osapuolen ominaisuutta sovellusliittymän kanssa, he lisäävät sen ensin sovellusliittymään.

Tämä lähestymistapa tarkoittaa, että EE: llä on ollut jonkin aikaa API-menetelmä "Set Cookie" - mikä puolestaan ​​tarkoittaa, että valtaosa kolmansien osapuolten lisäosista käyttää sitä (ne, jotka eivät tee sitä väärin! )

Tämän vuoksi EllisLab on pystynyt muuttamaan evästeiden asetustapaa - ja ExpressionEngine 2.5: sta (nyt saatavana ilmaisena päivityksenä nykyisille 2.x-asiakkaille) alkaen, voit ottaa käyttöön ilmaisen "evästeiden suostumusmoduulin", joka hylkää lisäykset pyytää evästeiden asettamista, ellei käyttäjä suostu siihen.

Tekninen asennus

Ensinnäkin varmista, että ExpressionEngine-verkkosivustosi käyttää vähintään versiota 2.5.0; moduuli ei ole yhteensopiva vanhempien versioiden kanssa, koska ytimeen on tehty muutoksia, jotka ovat mahdollistaneet sen.

Kun se on asennettu, älä huoli siitä, että moduulia ei löydy ohjauspaneelista - sitä ei tosiasiallisesti jaeta ExpressionEngine-sovelluksessa. sen sijaan se on saatavana ensimmäisen osapuolen lisäosasivulta.


Lataa tiedostot vain / system / expressionengine / third_party / ja ota uusi moduuli käyttöön hallintapaneelista, Lisäosat> Moduulit.

Se siitä! Olet nyt tehnyt teknisen asennuksen. Suunnittelusta ...

Suunnitteluasennus

Tietenkin evästeen suostumuksen muotoilu vaihtelee sivustokohtaisesti; sekä visuaalisesta että kielellisestä näkökulmasta syyn välittämiseksi käsillä olevalle yleisölle. Esimerkiksi, vaikka valtion verkkosivusto saattaa kulkea muodollista reittiä, lasten TV-ohjelmien verkkosivusto saattaa antaa viestin "Mene nappaamaan vanhempasi ...".

ExpressionEnginen evästeiden suostumusmoduuli käyttää samaa mallimoottoria, jota käytetään muualla verkkosivustollasi, joten toteutus on yksinkertaista ja joustavaa.

Vaikeus on tietysti saada se tuntemaan virhettä. Jos käyttäjän mielestä se on rikki, hän lähtee.


  1. Jos pyydämme suostumusta joka tapauksessa, meillä on hyvä syy käyttää evästeitä. Selitä se käyttäjälle mahdollisimman ytimekkäästi ja linkitä heidät täydelliseen luetteloon evästeistä, joita sivustosi käyttää (lain mukaan).
  2. Vältä punaisia ​​värejä - tämä kannustaa oletukseen, että jokin on vialla
  3. Tee viestistä erottuva - sinä haluta heidän suostumuksensa.
  4. Tee siitä kuitenkin sopiva verkkosivustolle. Älä yritä jäljitellä natiiviselaimen viestiä tai piilottaa sivua kokonaan.

Hihnan käyttö verkkosivuston yläosassa, joka pyytää lupaa, näyttää olevan ensisijainen tapa toteuttaa evästeiden suostumus. BBC, ICO ja Channel 4 käyttävät tätä tekniikkaa; se ei häiritse verkkosivuston syytä (sisältöä), mutta on riittävän näkyvä, jotta ihmiset haluavat napsauttaa sitä - vaikka syynä on vain sen poistaminen!


Tällaisen baarin toteuttaminen on uskomattoman yksinkertaista. Mallissasi, joka todennäköisesti on otsikkosi, tai yksinkertaisesti lisää (ja säädä) seuraava:

{exp: cookie_consent: message} {if cookies_allowed! = "yes"} div id = "cookie-message"> h4> {site_name} käyttää evästeitä parantaaksesi kokemustasi ... / h4> p> Evästeet ovat pieniä tekstitiedostoja, jotka tallennetaan turvallisesti tietokoneellesi. Niiden avulla verkkosivustot voivat tehdä fiksuja asioita, kuten muistaa, jos olet pyytänyt pysyä kirjautuneena tai mitä sinulla on ostoskorissasi. Käytämme myös evästeitä selvittääkseen, miten ihmiset käyttävät tätä verkkosivustoa, jotta voimme tehdä siitä vieläkin paremman tulevaisuudessa. Nämä evästeet eivät sisällä henkilökohtaisia ​​tai arkaluontoisia tietoja, ja niitä käyttävät vain {site_name} ja luotettavat kumppanimme, kuten Facebook ja Google. a href = "{cookies_allowed_link}"> Hyväksy ja sulje tämä viesti / a> / p> / div> {/ if} {/ exp: cookie_consent: message}

Joten hajotetaan se. Ensinnäkin haluamme ladata uuden evästeen suostumusmoduulin. Sen sisällä on kätevä muuttuja {cookies_allowed}, joka on yksinkertainen totuusarvo, joka kertoo meille yksinkertaisesti, onko käyttäjä antanut meille luvan käyttää evästeitä vai ei.


Tämän avulla voimme nopeasti havaita, että käyttäjä ei ole vielä antanut meille lupaa, ja hahmottaa ylimääräistä HTML-koodia. Yksinkertaisesti meillä on peittävä div, joka lisää himmennetyn taustan ja itse viestin.

Lopuksi haluat antaa käyttäjälle mahdollisuuden poistaa evästeet ja kieltää tulevat evästeet. Tätä varten käytämme jälleen trust if -lauseketta, mutta tällä kertaa käännämme sen - joten teemme tosiasiallisesti: "Jos evästeet on hyväksytty, näytetään linkki niiden poistamiseksi käytöstä".

{exp: cookie_consent: message} {if cookies_allowed == 'yes'} a href = "{clear_ee_cookies_link}"> Unohda evästeet ja älä tallenna enää ... / a> {/ if} {/ exp: cookie_consent :viesti}

Ja tämän jälkeen olet valmis evästeiden suostumusmoduulin perustoteuttamiseen.

Puutteet ja niiden poistaminen

Evästeiden suostumusmoduuli toimii vain, jos eväste asetettiin ExpressionEngine-sovellusliittymän avulla. Ulkoiset evästeet, kuten JavaScriptissä asetetut (esimerkiksi Google Analytics), eivät kunnioita käyttäjän päätöstä tässä. Yksi tapa ratkaista tämä on kietoa mainittu JavaScripti tähän:


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

Tällä tavoin se hahmonnetaan vasta, kun käyttäjät antavat ExpressionEnginen (siis sivustosi) luvan. Tarvitset tietysti tapaa poistaa Googlen asettamat evästeet; yksi mahdollinen tapa on käyttää JavaScriptiä "Evästeet tyhjennetään" -järjestelmäviesteissä ... josta puhuen vihaan ExpressionEnginen "Käyttäjäviestit" -järjestelmää.

Mielestäni he ovat luonnostaan ​​ruma ja vievät käyttäjät pois sivustosi yleisestä tyylistä. Valitettavasti moduuli käyttää näitä järjestelmäviestejä kertoa ylpeänä käyttäjälle noin viiden sekunnin ajan "Evästeet on hyväksytty". Vaikka nämä ovat löyhästi muotoiltavissa, ne jäävät ExpressionEnginen mallijärjestelmän ulkopuolelle ja kuten yleensä näyttävät virheilmoituksilta - laajennuksilta, kuten devot-ee.com/add-ons/custom-system-messages mahdollistaa sivuston lisäintegroinnin.

Vaihtoehtoinen temppu, jota olen käyttänyt yhdessä tai kahdessa tämän moduulin rakenteessa, on lähettää jQuery POST -pyyntö URL-osoitteeseen "Hyväksyn" - tällä menetelmällä voit ohittaa järjestelmän näytöt ja päättää näyttää oman, hyvin suunnitellun, kiitos viesti.

Tavoitteenani on saada sivustot pyytämään evästeitä vain silloin, kun ne sitä ensin tarvitsevat. Se on kaksiteräinen miekka, koska Google Analytics on tietysti korvaamaton, joten haluan todella suostumuksen ensimmäisessä sekunnissa heistä, jotka vierailevat sivustolla - mutta minusta tuntuu, että tämä ei välttämättä toimi niin hyvin. Joten ehkä voimme olla siitä hieman älykkäämpiä (olematta liikaa kuin Clippy toimistosta):


  • "Lisää tämä tuote ostoskoriin - hyväksy evästeet napsauttamalla tätä"
  • "Sisäänkirjautumalla sivustolle hyväksyt, että voimme tallentaa evästeitä tietokoneellesi."

Lopuksi, tämä laki on EU: n erityinen - ja silloinkin se eroaa hieman maittain. Viime kädessä haluaisimme nähdä sen, joten moduulin käyttäytyminen muuttuu käyttäjän sijainnin perusteella käyttämällä sisäänrakennettua IP to Nation -moduulia. Tämä ei ole vielä mahdollista. Mutta on myös alkuaikoja.

Johtopäätös

Vaikka voimme valittaa laista, emme todellakaan voi olla apua, jonka EllisLab on antanut meille sen noudattamiseksi. Yrityksen vastuullinen lähestymistapa varmistaa, että CMS: ää voidaan käyttää edelleen EU-maissa ilman hakkerointia tai (mahdollisesti kalliita) kiertotapoja.

Toteutus on myös yksinkertaista. 2,5-asennuksella pitäisi kestää alle puoli tuntia - ja vaikka laki vaatii hieman enemmän kuin vain tätä, se kattaa ongelman suurimman teknisen puolen.

Suosio
25 huippuluokan verkkosivustomallia
Lue Lisää

25 huippuluokan verkkosivustomallia

Vaikka verkko uunnittelijat ja kehittäjät aattavat pahek ua verkko ivu tomallien käyttämi tä ivu to i käynni tämi ek i, älä epätoivo, jo tarvit et ver...
Siirry graafisesta suunnittelusta verkkosuunnitteluun seitsemässä helpossa vaiheessa
Lue Lisää

Siirry graafisesta suunnittelusta verkkosuunnitteluun seitsemässä helpossa vaiheessa

Jo olet ä kettäin valmi tunut kallii ta muotoilukoulu ta tai olet pyrkivä it eoppinut uunnittelija, joka haluaa ukeltaa en in web- uunnittelun jännittävään maailmaan...
Rakenna tyyppipohjainen identiteetti
Lue Lisää

Rakenna tyyppipohjainen identiteetti

Vuonna 2010 ak an Ruhrin alue nimettiin Euroopan kulttuuripääkaupungik i, ja Lavaa pyydettiin uunnittelemaan identiteetti kaikelle Alankomaiden kulttuuritoiminnalle. Pääajatuk ena ...