# reCAPTCHA kézi blokkolása és wpDiscuz

> A reCAPTCHA blokkolásának ellenőrzése, a helyőrző átalakítása CSS-sel, szűrővel vagy HTML-mezővel, valamint a wpDiscuz hozzászólás-űrlap beállítása.

A Google reCAPTCHA csak a látogató hozzájárulása után tölthető be. Mivel a hibás reCAPTCHA megakadályozhatja, hogy a látogató elküldje az űrlapot, érdemes minden megvalósítást ellenőrizni. Ha nem szeretnél reCAPTCHA-t használni, adatvédelmi szempontból barátságosabb megoldás például a honeypot (rejtett csapdamező).

Ha nem blokkolod a reCAPTCHA-t, azt a dokumentumaidban és a beállításaidban is ennek megfelelően kell kezelned. Ha blokkolod, kövesd az alábbi lépéseket.

## A Complianz beállítása

A varázsló kérdezi meg, hogy a reCAPTCHA-t hozzájárulás előtt (és a hozzájárulás visszavonása után) blokkolni akarod-e.

1. Nyisd meg a **Complianz → Wizard → Consent → Services** lépést.
2. A „Does your website use third-party services?” kérdésre válaszolj igennel.
3. A harmadik féltől származó szolgáltatások listájában jelöld be a **Google reCAPTCHA** négyzetet.
4. A megjelenő „Do you want to block reCAPTCHA before consent, and when consent is revoked?” kérdésre válaszolj igennel.

![A varázsló Services lépése a harmadik féltől származó szolgáltatásokra vonatkozó kérdésekkel](./kepek/blokkolas-helyorzok-varazslo-hozzajarulas.webp)

*A varázsló Services lépése a harmadik féltől származó szolgáltatásokra vonatkozó kérdésekkel* (https://minta-bolt.hu/wp-admin/admin.php?page=complianz)

A képen a lépés első kérdései látszanak; a „Does your website use third-party services?” kérdés igenre állítása után jelenik meg a szolgáltatások listája.

Az űrlapbővítményekhez (Contact Form 7, WPForms, Fluent Forms, Ninja Forms, HappyForms, Forminator) külön fejezet tartozik: [reCAPTCHA és hozzájárulás űrlapbővítményekben](https://hub.hellowp.io/hu/plugins/complianz-gdpr-premium/blokkolas-helyorzok-recaptcha-urlapok/).

## A helyőrző ellenőrzése és szerkesztése

Ha a reCAPTCHA blokkolva van, az űrlapon a reCAPTCHA helyén egy helyőrző jelenik meg, amely kéri a látogatót, hogy fogadja el a sütiket. Nézd meg a frontenden, hogy jól néz-e ki. Ha nem, két módszer közül választhatsz.

### 1. A helyőrző formázása CSS-sel

Ha a helyőrző látszik, és hajlandó vagy egyéni CSS-t használni a témádban, a következő osztályokat célozd:

```css
.cmplz-blocked-content-container .cmplz-blocked-content-notice {
  /* az egyéni szabályaid */
}
```

### 2. A helyőrző kicserélése saját HTML-mezőre

A beépített helyőrzőt eltávolíthatod, és helyette egy HTML-mezőt tehetsz az űrlapba. A helyőrző törléséhez tedd az alábbi szűrőt egy MU-pluginba vagy a téma `functions.php` fájljába (a `functions.php`-ban az első sor, a `<?php` ne ismétlődjön):

```php
<?php
add_filter( 'cmplz_placeholder_markers', 'my_unset_recaptcha_placeholders', 100 );
function my_unset_recaptcha_placeholders( $tags ) {
    unset( $tags['google-recaptcha'] );
    return $tags;
}
```

Ugyanez CSS-sel is megoldható:

```css
.cmplz-blocked-content-container.recaptcha-invisible,
.cmplz-blocked-content-container.g-recaptcha {
  display: none;
}
```

Ezután vegyél fel egy HTML-mezőt az űrlap utolsó mezőjeként, és másold bele a helyőrzőt. Szolgáltatásonkénti hozzájáruláshoz:

```html
<div data-service="google-recaptcha" data-category="marketing" class="cmplz-blocked-content-container cmplz-blocked-content-notice cmplz-accept-service" style="text-align: left; cursor: pointer;">
Click here to accept reCaptcha cookies before sending the form.
</div>
```

Kategóriánkénti hozzájáruláshoz a `cmplz-accept-service` osztály helyett `cmplz-accept-marketing` kell. A szöveg átírható. Ha egy sütiszabályzatra mutató hivatkozást is szeretnél a helyőrzőbe, az a szöveg után egy külön `div` lehet; ha nem kell, hagyd el. Előfordulhat, hogy egyéni CSS kell ahhoz, hogy a szöveg úgy jelenjen meg, ahogy szeretnéd.

Az eredmény egy HTML-helyőrző, amely szépen illeszkedik az űrlapba.

## wpDiscuz

A wpDiscuz hozzászólás-űrlapján a reCAPTCHA v2 (az ingyenes, beépített változat) blokkolásához három dolgot kell elvégezni: a Complianz beállítását, egy helyőrzőt az űrlapon, és CSS-t, amely a helyőrzőt formázza és a frontenden megjelenő hibaüzenetet elrejti. A wpDiscuz az űrlap betöltésekor ellenőrzi a reCAPTCHA-t, és ha az blokkolva van, hibát jelez. Ennek a hibának nem szabad látszania a látogatónak, és kell egy kattintható helyőrző, hogy a látogató engedélyezhesse a reCAPTCHA-t, mielőtt hozzászól.

### A Complianz ellenőrzése

A **Complianz → Wizard → Consent** részben nézd meg, hogy a harmadik féltől származó szolgáltatások között ott van-e a reCAPTCHA, és hogy a blokkolásra vonatkozó kérdésre igen a válasz.

### Helyőrző a wpDiscuz űrlapban

1. Nyisd meg a **wpDiscuz → Forms** oldalt, kattints az **Edit** gombra az űrlapnál, és görgess a mezők áttekintéséhez.
2. Add hozzá egy **HTML** elemet a **GOOGLE RECAPTCHA** mező fölé (a példában ennek a neve „RECAPTCHA PRIVACY”), és nyisd meg szerkesztésre.
3. Az **HTML code** mezőbe illeszd be a helyőrzőt:

```html
<div data-service="google-recaptcha" data-category="marketing" class="cmplz-blocked-content-container cmplz-blocked-content-notice cmplz-accept-service" style="text-align: left; cursor: pointer;">
Click here to accept reCaptcha cookies before sending the form.
</div>
```

A kategóriánkénti változatnál a `cmplz-accept-service` helyett `cmplz-accept-marketing` az osztály.

### A helyőrző formázása és a hibaüzenet elrejtése

```css
/* Helyőrző */
.cmplz-blocked-content-container {
  background: #f9f9f9;
  border: 1px solid #4A91E3;
  color: #000;
  height: 74px;
  width: 300px;
  font-size: 12px;
  padding: 10px;
}

/* A frontenden megjelenő hiba elrejtése */
.wpdiscuz-message-error {
  display: none;
}
.cmplz-google-recaptcha .wpdiscuz-message-error,
.cmplz-marketing .wpdiscuz-message-error {
  display: unset !important;
}
```

A színeket, méreteket tetszés szerint módosíthatod. A lényeg a hibaüzenet kezelése: hozzájárulás előtt rejtve van, hozzájárulás után (amikor a `cmplz-google-recaptcha` vagy `cmplz-marketing` osztály megjelenik) újra működik.

## Elementor natív űrlap

A varázsló az integrációk ellenőrzésekor rákérdez a Complianz által még nem észlelt szolgáltatásokra. Ha az űrlapjaidban használsz reCAPTCHA-t (kapcsolat, bejelentkezés, regisztráció), és nincs előre bejelölve, jelöld be. Bekapcsolva (a varázslóban, vagy később az **Integrations** menüben) a Complianz hozzájárulásig blokkolja a reCAPTCHA-t, és helyőrzőt tesz a helyére.

A reCAPTCHA változatai (V2 jelölőnégyzettel vagy láthatatlanul, V3 háttérbeli botellenőrzés) mind API-kulcsot kérnek, és a bővítmények eltérően valósítják meg őket, ezért az általános helyőrző nem mindig illik tökéletesen.

### A helyőrző ellenőrzése

A helyőrzőnek akkor kell megjelennie, ha a látogató csak a funkcionális sütiket engedélyezte, de többet nem. Gyorsan ellenőrizheted inkognitóablakban. Ha a helyőrző rendben van, nincs teendőd.

### Másik helyőrző az Elementor natív űrlaphoz

Az Elementor natív űrlapjánál előfordul, hogy a helyőrző hibásan jelenik meg. Ilyenkor az előző szakasz „A helyőrző kicserélése saját HTML-mezőre” lépéseit kövesd.
