Google Görünmez reCAPTCHA rozeti nasıl gizlenir


158

Yeni Google Invisible reCATPTCHA'yı uygularken, varsayılan olarak ekranın sağ alt köşesinde üzerine geldiğinizde açılan küçük bir "reCAPTCHA tarafından korunuyor" rozeti alırsınız.

resim açıklamasını buraya girin

Bunu saklamak istiyorum.

Yanıtlar:


219

Google şimdi den, Rozet gizlemek için izin verir SSS :

ReCAPTCHA v3 rozetini gizlemek istiyorum. Neye izin verilir?

You are allowed to hide the badge as long as you include the reCAPTCHA
branding visibly in the user flow. Please include the following text:

This site is protected by reCAPTCHA and the Google
    <a href="https://policies.google.com/privacy">Privacy Policy</a> and
    <a href="https://policies.google.com/terms">Terms of Service</a> apply.

Örneğin:

resim açıklamasını buraya girin

Böylece aşağıdaki CSS'yi kullanarak gizleyebilirsiniz:

.grecaptcha-badge { 
    visibility: hidden;
}

resim açıklamasını buraya girindisplay: none;Spam kontrolünü devre dışı bırakmak için göründüğü gibi kullanmayın (teşekkürler @Zade)


24
Size ne yapmanız gerektiğini söylememeliyim;) Sadece diğer kullanıcıları onu kaldırmanın yasadışı olabileceği konusunda uyarıyorum.
Yann39

16
bu tamamen kabul edilemez, çünkü cep telefonları gibi küçük ekranlarda bu rozet web sayfasının önemli bir alanını kaplar.
Don Dilanga

12
Kabul edin veya farklı bir hizmet seçin. Google, ücretsiz hizmetleri için marka bilinci oluşturmanızı gösterme hakkına sahiptir . Rozeti, developers.google.com/recaptcha/docs/invisible#render_param formuyla aynı hizada olacak şekilde yeniden konumlandırabilirsiniz .
Alexander Otavka

1
Bu captcha v3'ü yalnızca kişiler form sayfamda kullanıyorum. Bu rozetin göstermesini istediğim tek sayfa bu. Sitemin başka bir yerinde geçerli değil. Mümkün?
Andrew Truckle

4
@ Yann39 - lütfen cevabınızı güncelleyin. Gizlemek ve örneğin sadece iletişim sayfasına eklemek iyidir: developers.google.com/recaptcha/docs/faq
Sol

172

Tüm yaklaşımları test ettim ve:

UYARI: display: none Spam kontrolünü devre dışı bırakır!

visibility: hiddenve opacity: 0spam denetimini devre dışı bırakmayın.

Kullanılacak kod:

.grecaptcha-badge { 
    visibility: hidden;
}

Rozet simgesini gizlediğinizde Google , şunu ekleyerek hizmetinize formunuzda referans vermenizi ister :

<small>This site is protected by reCAPTCHA and the Google 
    <a href="https://policies.google.com/privacy">Privacy Policy</a> and
    <a href="https://policies.google.com/terms">Terms of Service</a> apply.
</small>

Örnek sonuç


6
Bu cevabın daha yüksek olması gerekiyor! Kısa ve öz bir çözüm için gerekli tüm bilgileri içerir.
Björn Larsson

3
Tam olarak ne aradığım ve bu harika çalışıyor. Ayrıca, izin verildiğini kanıtlamak isteyen herkes için lütfen bu sayfayı kontrol edin (bu SO iş parçacığını daha önce görmediyseniz) developers.google.com/recaptcha/docs/faq
Jake

@Jake'den bahsettiğiniz için teşekkürler. Bunu cevabıma ekledim.
Helenesh

Herkes bir css kesmek yerine rozeti gizlemek için belgelenmiş bir yol buldu mu? Google, markalarını göstermek için alternatif bir yol sunuyor, ancak rozetlerini gizlemek için desteklenen bir yöntem bulamıyorum.
Collin Price

38

data-badgeÖzelliği şu değere ayarlayın:inline

<button type="submit" data-sitekey="your_site_key" data-callback="onSubmit" data-badge="inline" />

Ve aşağıdaki CSS'yi ekleyin

.grecaptcha-badge {
    display: none;
}

7
Dikkatli ol; spam kontrolünü devre dışı bırakıyor gibi görünüyor.
Zade

3
Bu, spam denetimini gerçekten devre dışı bırakıyor mu? Eğer öyleyse, neden tüm upvotes?
Charlie Schliesser

1
@Zade yerine kullanın opacity: 0veya visibility: hidden? Ayrıca u istatistik nerede bir bağlantı var mı?
ctf0

4
Kullanıcı sözleşmesi, @ Yann39'un yukarıda söylediği gibi kullanıcıları bilgilendirmeniz gerektiğini söylüyor.
Mihail Minkov

1
@Helenesh ayrı bir yanıta değer mi?
Anupam

14

Google artık "reCAPTCHA markasını kullanıcı akışına görünür bir şekilde dahil ettiğiniz sürece rozeti gizlemenize izin verildi" diyor. bağlantı


2
Sadece v3 için geçerlidir! v2 hala rozetin gösterilmesini gerektirir. :(
ADTC

13

Rozetin gizlenmesi TOU'ya göre gerçekten yasal olmadığından ve mevcut yerleşim seçenekleri kullanıcı arayüzümü ve / veya UX'imi kırdığı için, sabit konumlandırmayı taklit eden ancak bunun yerine satır içinde oluşturulmuş aşağıdaki özelleştirmeyi buldum:

Katlanabilir "görünmez" captcha

Rozet konteynerinize biraz CSS uygulamanız yeterlidir:

.badge-container {
  display: flex;
  justify-content: flex-end;
  overflow: hidden;
  width: 70px;
  height: 60px;
  margin: 0 auto;
  box-shadow: 0 0 4px #ddd;
  transition: linear 100ms width;
}
.badge-container:hover {
    width: 256px;
}

Bence bu yasal olarak zorlayabildiğiniz kadar.


1
Güzel. transform: scale(0.6)Veopacity: 0.6
squarecandy

Mavi şeridi soldan sağa doğru açabiliyor musunuz? Ayrıca renk düzenini uyarlamak?
Vaishal Patel

Teoride @VaishalPatel, evet, ancak iki eksisi var: birincisi, yerel rozet tasarımına müdahale Google tarafından cesaretini kırıyor ve ikincisi, değişikliklerinizde mevcut tasarım hakkında ne kadar fazla varsayım olursa çözümünüz o kadar kırılgan hale geliyor - Google'ı unutmayın rozet stillerini ve düzenini istedikleri zaman değiştirmekte serbesttir.
krukid

1
@krukid Varsayılan stilleri satır içi ile gittim.
Vaishal Patel

9

Rozeti iletişim sayfam hariç tüm sayfalarda gizlemeye karar verdim (Wordpress kullanarak):

/* Hides the reCAPTCHA on every page */
.grecaptcha-badge {
    visibility: hidden !important;
}

/* Shows the reCAPTCHA on the Contact page */
/* Obviously change the page number to your own */
.page-id-17 .grecaptcha-badge {
    visibility: visible !important;
}

Ben bir web geliştiricisi değilim, bu yüzden yanlış bir şey varsa lütfen beni düzeltin.

EDIT: Görüntü yerine görünürlük kullanmak üzere güncellendi.


bu işe yarar ancak page-id- # web sitenize özgü olduğundan, bunu kullanan herkesin kimliği, görüntüyü gerçekleştirmek istediği sayfaya uyacak şekilde ayarlaması gerekir. || Bu görüntüyü yaparken raporlar gördüm: hiçbiri; ayrıca denetimi devre dışı bırakacaktır ancak şu anda bundan emin değilim.
Michael Tunnell

Dikkatli! Bu, spam denetimini devre dışı bırakır. Daha fazla bilgi için cevabımı kontrol et
Helenesh

Michael & Helenesh
Leon

4

Matthew Dowell'in direğinin, kısa flaşı önleyen, ancak iletişim formu 7 formu görünür olduğunda görüntülenen hafif bir çeşidi:

div.grecaptcha-badge{
    width:0 !important;
}

div.grecaptcha-badge.show{
    width:256px !important; 
}

Daha sonra alt temamdaki header.php dosyasına aşağıdakileri ekledim:

<script>
jQuery( window ).load(function () { 
    if( jQuery( '.wpcf7' ).length ){ 
        jQuery( '.grecaptcha-badge' ).addClass( 'show' );
    }
});
</script>

3

Benim çözümüm rozeti gizlemek, ardından kullanıcı bir form girişine odaklandığında görüntülemek ve böylece Google'ın Şartlar ve Koşullarına bağlı kalmaktı.

Not: Düzenlediğim reCAPTCHA, bir WordPress eklentisi tarafından oluşturulmuştu, bu nedenle reCAPTCHA'yı <div class="inv-recaptcha-holder"> ... </div>kendinizle sarmanız gerekebilir .

CSS

.inv-recaptcha-holder {
  visibility: hidden;
  opacity: 0;
  transition: linear opacity 1s;
}

.inv-recaptcha-holder.show {
  visibility: visible;
  opacity: 1;
  transition: linear opacity 1s;
}

jQuery

$(document).ready(function () {
  $('form input, form textarea').on( 'focus', function() {
    $('.inv-recaptcha-holder').addClass( 'show' );
  });
});

Açıkçası, jQuery seçicisini gerekirse belirli formları hedefleyecek şekilde değiştirebilirsiniz.


3

Wordpress'teki İletişim Formu 7 kullanıcıları için bu yöntem benim için çalışıyor: v3 Recaptcha'yı Contact 7 Forms dışındaki tüm sayfalarda gizliyorum.

Ancak bu yöntem, metin giriş form öğeleri içeren tüm sayfaları tanımlayabilen benzersiz bir sınıf seçici kullandığınız herhangi bir sitede çalışmalıdır.

İlk olarak, CSS'de döşemeyi daraltabilecek bir hedef stil kuralı ekledim:

CSS

 div.grecaptcha-badge.hide{
    width:0 !important;
}

Sonra pencere yüklendikten sonra tetiklemek için başlığımda JQuery komut dosyası ekledim, böylece 'grecaptcha-badge' sınıf seçici JQuery için kullanılabilir ve mevcut CSS stilini uygulamak için 'hide' sınıfını ekleyebilirsiniz.

$(window).load(function () { 
    if(!($('.wpcf7').length)){ 
      $('.grecaptcha-badge').addClass( 'hide' );
       }
});

Döşemem hala yarım saniye boyunca her sayfada yanıp sönecek, ancak şimdiye kadar bulduğum en iyi geçici çözüm, umarım uyacaktır. İyileştirme önerileri takdir edildi.


2

bu spam kontrolünü devre dışı bırakmaz

div.g-recaptcha > div.grecaptcha-badge {
    width:0 !important;
}

2

İletişim Formu 7 güncellemesini ve en son sürümünü (sürüm 5.1.x) kullanıyorsanız, Google reCAPTCHA v3'ü kullanmanız için yüklemeniz, kurmanız gerekir.

varsayılan olarak, ekranın sağ altındaki her sayfada Google reCAPTCHA logosunu görürsünüz. Bu değerlendirmemize göre kullanıcılar için kötü bir deneyim yaratıyor. Ve web siteniz, blog biraz yavaşlayacaktır (PageSpeed ​​Score ile yansıtın), web siteniz tarafından bu rozeti görüntülemek için Google'dan ek 1 JavaScript kitaplığı yüklemeniz gerekecektir.

Aşağıdaki adımları izleyerek Google reCAPTCHA v3'ü CF7'den gizleyebilirsiniz (yalnızca gerektiğinde gösterin):

İlk olarak, functions.phptemanızın dosyasını açarsınız (Dosya Yöneticisi veya FTP İstemcisi'ni kullanarak). Bu dosya bulun: /wp-content/themes/your-theme/ve aşağıdaki snippet'i ekleyin (her sayfada reCAPTCHA kutusunu kaldırmak için bu kodu kullanıyoruz):

    remove_action( 'wp_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts' );

Daha sonra, bu snippet'i Google reCAPTCHA'yı (iletişim sayfası, giriş, kayıt sayfası…) görüntülemesini istediğiniz sayfaya ekleyeceksiniz:

if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
    add_action( 'wp_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts', 10, 0 );
}

OIW Blog'a bakın - Google reCAPTCHA Logosunu WordPress'deki İletişim Formu 7'den Kaldırma (reCAPTCHA rozetini gizle)


2

Evet, yapabilirsin . reCaptcha v3 rozetini gizlemek için css veya javascript kullanabilirsiniz .

  1. CSS Yolu , reCaptcha grubunu gizlemek için display: noneveya visibility: hiddentuşunu kullanır . Kolay ve hızlı.
.grecaptcha-badge {
    display:none !important;
}
  1. Javascript Yolu
var el = document.querySelector('.grecaptcha-badge');
el.style.display = 'none';

Rozeti gizlemek, Google politikasına göre geçerlidir ve burada SSS ile cevaplanmıştır . Google'ın gizlilik politikasını ve kullanım şartlarını aşağıda gösterildiği gibi göstermeniz önerilir.

google politikası ve kullanım şartları


1
'querySelect' değil, 'querySelector'.
Keisuke Nagakawa

1
@ 永川 圭介 yazım hatası yaptığınız için teşekkürler.
Kiran Maniya

1

Bunun hakkında bir sonraki yorum gördüm

Kendi CSS'nizi uygulamak istiyorsanız rozetin satır içine yerleştirilmesi de yararlıdır. Ancak, bir API anahtarına kaydolduğunuzda Google'ın Şartlar ve koşullarını göstermeyi kabul ettiğinizi unutmayın; bu yüzden lütfen gizlemeyin. Ve rozetin CSS ile tamamen ortadan kalkması mümkün olsa da, bunu önermiyoruz.


0

Not: rozeti gizlemeyi seçerseniz, lütfen
.grecaptcha-badge { visibility: hidden; }

ReCAPTCHA markasını kullanıcı akışına görünür bir şekilde dahil ettiğiniz sürece rozeti gizlemenize izin verilir. Lütfen aşağıdaki metni ekleyin:

Bu site reCAPTCHA ve Google tarafından korunmaktadır
<a href="https://policies.google.com/privacy">Privacy Policy</a> and <a href="https://policies.google.com/terms">Terms of Service</a> apply.

burada daha fazla ayrıntı reCaptacha


-1

Recaptcha iletişim formu 7 ve Recaptcha v3 çözümü.

body:not(.page-id-20) .grecaptcha-badge {
    display: none;
}

Birden Fazla İletişim Formu Sayfası?

body:not(.page-id-12):not(.page-id-43) .grecaptcha-badge {
    display: none;
}

Daha fazla iletişim formu sayfanız varsa daha fazla "not" ekleyebilirsiniz.

body:not(.page-id-45):not(.page-id-78):not(.page-id-98) .grecaptcha-badge {
    display: none;
}

Vücut bölümünüzün aşağıdaki gibi olacağından emin olun:

<body>

Aşağıdaki gibi görünecek şekilde değiştirin:

 <body <?php body_class(); ?>>

Lütfen diğer yanıtlar, hiçbiri spam kontrolünü devre dışı bırakmaz.
Helenesh

@Helenesh Spam kontrolü nedir ve CSS stili eklemeyle nasıl ilişkilidir?
Berkant Ipek
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.