Як приховати значок невидимого reCAPTCHA Google


158

Впроваджуючи новий невидимий Google ReCATPTCHA, за замовчуванням ви отримуєте невеликий "захищений reCAPTCHA" значок в правій нижній частині екрана, який вискакує, коли ви перевертаєте його.

введіть тут опис зображення

Я хотів би це приховати.

Відповіді:


219

Тепер 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.

Наприклад:

введіть тут опис зображення

Тож ви можете просто приховати його за допомогою наступного CSS:

.grecaptcha-badge { 
    visibility: hidden;
}

введіть тут опис зображенняНе використовуйте, display: none;як видається, щоб відключити перевірку спаму (спасибі @Zade)


24
Я б не припускав розповідати, що робити;) Я просто попереджую інших користувачів, що їх видалення може бути незаконним.
Yann39

16
це абсолютно неприпустимо, оскільки на маленьких екранах, подібних до мобільних, цей значок охоплює значну область веб-сторінки.
Дон Діланга

12
Прийміть це або виберіть іншу послугу. Google має право вимагати від вас показувати брендинг для їх безкоштовного обслуговування. Ви можете навіть змінити позначку, щоб вона відповідала формі developers.google.com/recaptcha/docs/invisible#render_param .
Олександр Отавка

1
Ну, я використовую лише цю captcha v3 на своїй сторінці форми контактів. Тож це єдина сторінка, на якій я хочу показати цей знак. Це не застосовується в інших місцях мого сайту. Можливо?
Andrew Andrewle

4
@ Yann39 - будь ласка, оновіть свою відповідь. Добре приховати його і, наприклад, додати його лише на сторінку контактів: developers.google.com/recaptcha/docs/faq
Sol

172

Я перевірив усі підходи та:

ПОПЕРЕДЖЕННЯ: 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>

Приклад результату


6
Ця відповідь повинна бути вище! Він містить всю необхідну інформацію для рішення в стислій формі.
Бьорн Ларссон

3
Саме те, що я шукав, і це чудово працює. Також для тих, хто шукає доказ того, що це дозволено, перевірте цю сторінку (якщо ви її ще не бачили в цій темі SO) developers.google.com/recaptcha/docs/faq
Джейк

Дякуємо, що згадали про це @Jake. Я додав це до своєї відповіді.
Геленеш

Хтось знайшов документований спосіб приховування значка, а не хакету css? Google пропонує альтернативний спосіб показати їх брендинг, але я не можу знайти підтримуваний метод приховування їхнього значка.
Ціна Колліна

38

Встановіть data-badgeатрибут наinline

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

І додайте наступний CSS

.grecaptcha-badge {
    display: none;
}

7
Будь обережний; це з'являється, щоб вимкнути перевірку спаму.
Зад

3
Це дійсно відключає перевірку спаму? Якщо так, то чому всі оновлення?
Чарлі Шліссер

1
@Zade можливо замість цього використовувати opacity: 0або visibility: hidden? також у вас є посилання на те, де це про те, що це?
ctf0

4
Угода користувача говорить, що ви повинні повідомити користувачів, як сказано вище @ Yann39.
Михайло Міньков

1
@Helenesh варто окремої відповіді?
Анупам

14

Google тепер говорить: "Вам дозволяється приховувати значок, якщо ви чітко включаєте брендування reCAPTCHA в користувальницький потік". Посилання


2
Застосовується лише для v3! v2 все ще вимагає показувати значок. :(
ADTC

13

Оскільки приховування значка насправді не легітимне згідно з TOU, а існуючі параметри розміщення порушували мій інтерфейс та / або UX, я придумав таке налаштування, яке імітує фіксоване позиціонування, але замість цього виводиться в рядок:

Складана "невидима" капча

Вам просто потрібно застосувати деякі CSS до контейнера значків:

.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;
}

Я думаю, що це настільки, наскільки ви можете законно її підштовхнути.


1
Приємно. Я підштовхнув його ще далі (не фактично приховуючи це повністю), використовуючи transform: scale(0.6)іopacity: 0.6
squarecandy

Чи можете ви мати синій банер праворуч, ніж ліворуч? Також адаптувати кольорову гаму цього?
Вайшал Патель

@VaishalPatel теоретично, так, але є два мінуси: по-перше, підробка дизайну значків відволікає Google, по-друге, чим більше припущень щодо існуючого дизайну ви вносите в свої зміни, тим більш крихким стає ваше рішення - майте на увазі Google може вільно змінювати стилі та макет значків, коли їм здається, що це подобається.
крукід

1
@krukid Я пішов зі своїм стилем за замовчуванням.
Вайшал Патель

9

Я вирішив приховати значок на всіх сторінках, крім моєї сторінки контактів (за допомогою Wordpress):

/* 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;
}

Я не веб-розробник, тому, будь ласка, виправте мене, якщо щось не так.

EDIT: Оновлено, щоб використовувати видимість замість відображення.


це буде працювати, але page-id- # є специфічним для вашого веб-сайту, тому будь-хто, хто використовує це, повинен буде налаштувати ідентифікатор, щоб відповідати тій сторінці, на якій він хоче виконати показ. || Я бачив повідомлення про те, що це відображення: жодне; також відключить перевірку, але я в цьому не впевнений.
Майкл Туннелл

Обережно! Це вимикає перевірку спаму. Перевірте мою відповідь для отримання додаткової інформації
Хеленеш

Оновлено на основі вищезазначених коментарів Michael & Helenesh
Леона

4

Невеликий варіант поста Меттью Доуелла, який уникає короткого спалаху, але відображається щоразу, коли видно контактну форму 7 форми:

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

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

Потім я додав у header.php до теми своєї дитини таке:

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

3

Моє рішення полягало в тому, щоб приховати значок, а потім відобразити його, коли користувач зосередиться на введенні форми - таким чином, все одно дотримуючись T & C Google.

Примітка . ReCAPTCHA, яку я налаштовував, був створений плагіном WordPress, тому вам може знадобитися обернути reCAPTCHA<div class="inv-recaptcha-holder"> ... </div> собою.

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' );
  });
});

Очевидно, ви можете змінити селектор jQuery для націлювання на конкретні форми, якщо це необхідно.


3

Для користувачів Контактної форми 7 на Wordpress цей метод працює для мене: я приховую v3 Recaptcha на всіх сторінках, окрім тих, що мають форми 7 Contact Contact.

Але цей метод повинен працювати на будь-якому сайті, де ви використовуєте унікальний селектор класів, який може ідентифікувати всі сторінки з елементами форми введення тексту.

По-перше, я додав у CSS правило цільового стилю, яке може згортати плитку:

CSS

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

Тоді я додав сценарій JQuery у свій заголовок, щоб запуститись після завантаження вікна, щоб селектор класів 'grecaptcha-badge' був доступний JQuery, і можна додати клас 'сховати', щоб застосувати наявний стиль CSS.

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

Моя плитка все ще блиматиме на кожній сторінці протягом півсекунди, але це найкращий спосіб пошуку, який я знайшов поки що, я сподіваюсь, що вона виконає. Пропозиції щодо вдосконалення високо оцінені.


2

це не відключає перевірку спаму

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

2

Якщо ви використовуєте оновлення Контактної форми 7 та останню версію (версія 5.1.x), вам потрібно буде встановити, встановити Google reCAPTCHA v3 для використання.

за замовчуванням ви отримуєте логотип reCAPTCHA Google, який відображається на кожній сторінці в нижній правій частині екрана. Це, за нашою оцінкою, створює поганий досвід для користувачів. І ваш веб-сайт, блог трохи сповільниться (відображається результатом PageSpeed ​​Score), для вашого веб-сайту доведеться завантажити додаткову 1 бібліотеку JavaScript від Google, щоб відобразити цей знак.

Ви можете сховати Google reCAPTCHA v3 від CF7 (показувати його лише за необхідності), виконавши наступні кроки:

Спочатку ви відкриваєте functions.phpфайл своєї теми (за допомогою File Manager або FTP Client). Цей файл знайдіть у: /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 - Як видалити логотип Google reCAPTCHA з Контактної форми 7 у WordPress (Сховати значок reCAPTCHA)


2

Так, ви можете це зробити . ви можете використовувати css або javascript, щоб приховати значок reCaptcha v3.

  1. CSS Way використовує display: noneабо visibility: hiddenприховує пакет reCaptcha. Це легко і швидко.
.grecaptcha-badge {
    display:none !important;
}
  1. Шлях Javascript
var el = document.querySelector('.grecaptcha-badge');
el.style.display = 'none';

Приховування значка є дійсним, відповідно до політики Google і відповіді тут на faq . Рекомендується відобразити в Google політику конфіденційності та умови використання, як показано нижче.

політика Google та умови використання


1
'не querySelect', але 'querySelector'.
Кейсуке Нагакава

1
@ 永川 圭介 дякую за повернення до друкарської помилки.
Кіран Манія

1

Я побачив наступний коментар з цього приводу

Також корисно розмістити значок в рядку, якщо ви хочете застосувати до нього свій власний CSS. Але пам’ятайте, що ви погодилися показувати Загальні положення та умови Google під час реєстрації ключа API, тому не приховуйте цього, будь ласка. І хоча за допомогою CSS можливо зробити значок повністю зникнути, ми б не рекомендували його.


0

Примітка. Якщо ви хочете приховати значок, будь ласка, використовуйте
.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


-1

Контактна форма 7 Recaptcha та рішення Recaptcha v3.

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(); ?>>

Будь ласка, інші відповіді, показ жодної не відключає перевірку спаму.
Геленеш

@Helenesh що таке перевірка спаму та як це пов’язано із додаванням стилю CSS?
Беркант Іпек
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.