जवाबों:
Google अब FAQ से बैज को छिपाने की अनुमति देता है :
मैं reCAPTCHA v3 बैज को छिपाना चाहूंगा। क्या अनुमति है?
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.
उदाहरण के लिए:
तो आप बस निम्नलिखित सीएसएस का उपयोग करके इसे छिपा सकते हैं:
.grecaptcha-badge {
visibility: hidden;
}
display: none;
स्पैम चेकिंग को डिसेबल करने के लिए इसका उपयोग न करें (धन्यवाद @Zade)
मैंने सभी दृष्टिकोणों का परीक्षण किया है और:
चेतावनी:
display: none
स्पैम की जाँच को अक्षम करें!
visibility: hidden
और opacity: 0
स्पैम चेकिंग को अक्षम न करें।
उपयोग करने के लिए कोड:
.grecaptcha-badge {
visibility: hidden;
}
जब आप बैज आइकन छिपाते हैं, तो Google चाहता है कि आप इसे जोड़कर उनकी सेवा का संदर्भ लें:
<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>
data-badge
करने के लिए विशेषता सेट करेंinline
<button type="submit" data-sitekey="your_site_key" data-callback="onSubmit" data-badge="inline" />
और निम्नलिखित सीएसएस जोड़ें
.grecaptcha-badge {
display: none;
}
opacity: 0
या visibility: hidden
? यू भी एक लिंक है जहाँ यह आँकड़े है कि?
चूंकि बैज को छिपाना टीओयू के अनुसार वास्तव में वैध नहीं है, और मौजूदा प्लेसमेंट विकल्प मेरे यूआई और / या यूएक्स को तोड़ रहे थे, मैं निम्नलिखित अनुकूलन के साथ आया हूं जो निश्चित स्थिति की नकल करता है, लेकिन इसके बजाय इनलाइन प्रदान किया गया है:
आपको बस अपने बैज कंटेनर पर कुछ सीएसएस लागू करने की आवश्यकता है:
.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;
}
मुझे लगता है कि जहां तक आप कानूनी तौर पर इसे धक्का दे सकते हैं।
transform: scale(0.6)
औरopacity: 0.6
मैंने अपने संपर्क पृष्ठ (वर्डप्रेस का उपयोग करके) को छोड़कर सभी पृष्ठों पर बैज छिपाने का निर्णय लिया:
/* 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;
}
मैं एक वेब डेवलपर नहीं हूँ इसलिए अगर कुछ गड़बड़ है तो कृपया मुझे सही करें।
संपादित करें: प्रदर्शन के बजाय दृश्यता का उपयोग करने के लिए अद्यतन किया गया।
मैथ्यू डॉवेल की पोस्ट का एक छोटा संस्करण, जो संक्षिप्त फ़्लैश से बचा जाता है, लेकिन जब भी संपर्क फ़ॉर्म 7 फ़ॉर्म दिखाई देता है, तो यह प्रदर्शित होता है:
div.grecaptcha-badge{
width:0 !important;
}
div.grecaptcha-badge.show{
width:256px !important;
}
फिर मैंने अपने बाल विषय में शीर्ष लेख में जोड़ा।
<script>
jQuery( window ).load(function () {
if( jQuery( '.wpcf7' ).length ){
jQuery( '.grecaptcha-badge' ).addClass( 'show' );
}
});
</script>
मेरा समाधान बैज को छिपाना था, फिर इसे प्रदर्शित करें जब उपयोगकर्ता एक फार्म इनपुट पर ध्यान केंद्रित करता है - इस प्रकार अभी भी Google के टी और सी एस का पालन कर रहा है।
नोट: जिस reCAPTCHA को मैं ट्विक कर रहा था वह एक वर्डप्रेस प्लगइन द्वारा उत्पन्न किया गया था, इसलिए आपको reCAPTCHA को एक के साथ लपेटना पड़ सकता है<div class="inv-recaptcha-holder"> ... </div>
अपने ।
सीएसएस
.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' );
});
});
जाहिर है कि यदि आवश्यक हो तो आप विशिष्ट रूपों को लक्षित करने के लिए jQuery के चयनकर्ता को बदल सकते हैं।
Wordpress पर Contact Form 7 के उपयोगकर्ताओं के लिए यह तरीका मेरे लिए काम कर रहा है: मैं v7 Recaptcha को सभी पेजों पर छुपाता हूँ, केवल संपर्क 7 फ़ॉर्म वाले लोगों को छोड़कर।
लेकिन इस विधि को किसी भी साइट पर काम करना चाहिए जहां आप एक अद्वितीय वर्ग चयनकर्ता का उपयोग कर रहे हैं जो पाठ इनपुट फॉर्म तत्वों के साथ सभी पृष्ठों की पहचान कर सकता है।
सबसे पहले, मैंने CSS में एक लक्ष्य शैली नियम जोड़ा, जो टाइल को ढहा सकता है:
सीएसएस
div.grecaptcha-badge.hide{
width:0 !important;
}
फिर मैंने अपने हेडर में JQuery की स्क्रिप्ट जोड़ी, विंडो लोड होने के बाद ट्रिगर करने के लिए इसलिए 'grecaptcha-badge' वर्ग चयनकर्ता JQuery के लिए उपलब्ध है, और उपलब्ध CSS स्टाइल को लागू करने के लिए 'Hide' क्लास को जोड़ सकता है।
$(window).load(function () {
if(!($('.wpcf7').length)){
$('.grecaptcha-badge').addClass( 'hide' );
}
});
मेरी टाइल अभी भी हर पेज पर आधे से एक सेकंड के लिए फ्लैश करेगी, लेकिन यह अब तक का सबसे अच्छा वर्कअराउंड है जिसे मैं उम्मीद करता हूं कि मैं इसका पालन करूंगा। सुधार के सुझाव की सराहना की।
यदि आप संपर्क फ़ॉर्म 7 अपडेट और नवीनतम संस्करण (संस्करण 5.1.x) का उपयोग कर रहे हैं, तो आपको उपयोग करने के लिए Google reCAPTCHA v3 को स्थापित करना होगा।
डिफ़ॉल्ट रूप से आपको स्क्रीन के नीचे दाईं ओर प्रत्येक पृष्ठ पर Google reCAPTCHA लोगो दिखाई देता है। यह हमारे आकलन के अनुसार उपयोगकर्ताओं के लिए एक बुरा अनुभव पैदा कर रहा है। और आपकी वेबसाइट, ब्लॉग थोड़ा धीमा हो जाएगा (पेजस्पिड स्कोर से दर्शाएं), आपकी वेबसाइट द्वारा इस बैज को प्रदर्शित करने के लिए Google से अतिरिक्त 1 जावास्क्रिप्ट लाइब्रेरी लोड करना होगा।
आप इन चरणों का पालन करके Google reCAPTCHA v3 को CF7 से छिपा सकते हैं (केवल जब आवश्यक हो तो इसे दिखाएं):
सबसे पहले, आप functions.php
अपने विषय की फ़ाइल खोलें (फ़ाइल प्रबंधक या एफ़टीपी क्लाइंट का उपयोग करके)। इस फ़ाइल का पता लगाया गया है /wp-content/themes/your-theme/
और निम्नलिखित स्निपेट जोड़ें (हम प्रत्येक पृष्ठ पर reCAPTCHA बॉक्स को हटाने के लिए इस कोड का उपयोग कर रहे हैं):
remove_action( 'wp_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts' );
इसके बाद, आप इस स्निपेट को उस पृष्ठ में जोड़ देंगे, जिसे आप Google reCAPTCHA (संपर्क पृष्ठ, लॉगिन, रजिस्टर पृष्ठ…) प्रदर्शित करना चाहते हैं:
if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
add_action( 'wp_enqueue_scripts', 'wpcf7_recaptcha_enqueue_scripts', 10, 0 );
}
OIW ब्लॉग पर देखें - वर्डप्रेस 7 में संपर्क फ़ॉर्म 7 से Google reCAPTCHA लोगो को कैसे निकालें (छिपाएं reCAPTCHA बैज)
हां, आप कर सकते हैं । आप या तो css या javascript का उपयोग reCaptcha v3 बैज को छिपाने के लिए कर सकते हैं ।
display: none
या visibility: hidden
reCaptcha बैच को छिपाने के लिए। यह आसान और त्वरित है।.grecaptcha-badge {
display:none !important;
}
var el = document.querySelector('.grecaptcha-badge');
el.style.display = 'none';
Google नीति के अनुसार बैज को छिपाना वैध है और यहां पर जवाब दिया गया है । यह गोपनीयता नीति और Google से उपयोग की शर्तों को दिखाने के लिए अनुशंसित है जैसा कि नीचे दिखाया गया है।
मैंने इसके बारे में अगली टिप्पणी देखी
यदि आप अपना खुद का CSS इसमें लगाना चाहते हैं तो बैज इनलाइन लगाना भी सहायक है। लेकिन याद रखें कि जब आप API कुंजी के लिए पंजीकृत होते हैं तो Google के नियम और शर्तों को दिखाने के लिए सहमत होते हैं - इसलिए इसे छिपाएं नहीं, कृपया। और जब यह सीएसएस के साथ बिल्ला को पूरी तरह से गायब करना संभव है, तो हम इसकी सिफारिश नहीं करेंगे।
नोट: यदि आप बैज छिपाने के लिए चुनते हैं, तो कृपया उपयोग करें
.grecaptcha-badge { visibility: hidden; }
जब तक आप reCAPTCHA ब्रांडिंग को उपयोगकर्ता प्रवाह में शामिल करते हैं, तब तक आपको बैज को छिपाने की अनुमति है। कृपया निम्नलिखित पाठ शामिल करें:
यह साइट reCAPTCHA और Google द्वारा संरक्षित है
<a href="https://policies.google.com/privacy">Privacy Policy</a> and
<a href="https://policies.google.com/terms">Terms of Service</a> apply.
यहाँ अधिक विवरण reCaptacha
रिकैप्टा संपर्क फ़ॉर्म 7 और रिकैप्टाचा वी 3 समाधान।
body:not(.page-id-20) .grecaptcha-badge {
display: none;
}
एक संपर्क फ़ॉर्म पृष्ठ से अधिक?
body:not(.page-id-12):not(.page-id-43) .grecaptcha-badge {
display: none;
}
यदि आपके पास अधिक संपर्क फ़ॉर्म पृष्ठ हैं, तो आप अधिक "नोट" जोड़ सकते हैं।
body:not(.page-id-45):not(.page-id-78):not(.page-id-98) .grecaptcha-badge {
display: none;
}
सुनिश्चित करें कि आपका शरीर अनुभाग इस तरह होगा:
<body>
इसे बदलें ताकि यह इस तरह दिखे:
<body <?php body_class(); ?>>