закрыть ссылки от индексации | wordpress

для того, чтобы закрыть ссылки от индексации в wordpress не нужно искать громоздкие плагины — достаточно одного современного

1 установить плагин hide links
2 в редакторе выбрать ссылку и нажать на иконку плагина
закрыть ссылки от индексации

 

из особенностей плагина
+ простой и стабильный
+ добавляет рекомендуемый нынче тег rel=noopener

почему бы просто не использовать rel=nofollow для google и noindex для яндекс?
+ тег noindex (яндекс) и атрибут nofollow (google) не прячут ссылки от поисковиков
+ а только рекомендуют поисковым роботам не индексировать ссылки
+ решение о индексации и учете этих ссылок принимается поисковой системой

seo-ошибки

seo-ошибки

— отсутствие title, h1, meta-description, alt
— отсутствие чпу — ?id=99 вместо /catalog
— медленная загрузка страницы — должно быть до 4 секунд
— некорректный robots.txt
— отсутствие sitemap.xml
— неработающие ссылки — статусы 404
— нет карты сайта на 404-й странице
— неправильно настроенные перенаправления — статусы 301
— слишком много рекламы — должно быть не более 3 рекламных блоков на странице
— скрытые ссылки, невидимые баннеры, клоакинг и др.
— копирование чужих статей
— неинформативные и неактуальные статьи, мало изображений, отсутствие видео, аудио
— нерегулярное обновление сайта
— перенасыщение ключевыми словами
— использование только высокочастных ключевых слов для молодых ресурсов
— отсутствие посадочных страниц для семантических групп
— покупные ссылки
— неудобная навигация на сайте
— отсутствие адаптированной для мобильных устройств версии сайта
— отсутствие сайта в яндекс-справочнике, яндекс/гугл-картах
— отсутствие кнопок *поделиться в соц.сетях*
— дублирование страниц/текстов, мета-тегов на разных страницах
— отсутствие фильтрации товаров
— отсутствие хорошей аналитики — яндекс-метрики или гугл-аналитикс

recaptcha на любой сайт

recaptcha на любой сайт

0 получить два ключа на https://www.google.com/recaptcha/

1 index.html

<form method="post" id="feedback">
    <label>
        <input type="text" name="name" placeholder="Имя" value="" required>
    </label>
    <label>
        <input type="email" name="email" placeholder="Email" value="" required>
    </label>
    <label>
        <input type="text" name="phone" placeholder="Телефон" value="">
    </label>
    <label>
        <textarea name="msg" placeholder="Сообщение" required></textarea>
    </label>
    <div class="g-recaptcha" data-sitekey="здесь ваш не секретный ключ"></div>
    <input type="hidden" name="form_name" value="Форма обратной связи">
    <input type="submit" name="submit" value="Отправить">
</form>

<script>
    $(document).ready(function () {
        $('#feedback').submit(function (event) {
            var $form = $(this);
            $.ajax({
                type: $form.attr('method'),
                url: '/send.php',
                data: $form.serialize(),
                cache: false,
                success: function (data) {
                    if (data === 'sent') {
                        alert('Спасибо, Ваша заявка отправлена!');
                        window.location.href = '/';
                    } else if (data === 'captcha error') {
                        alert('Нажмите на "Я не робот"');
                    } else {
                        alert('Ошибка, обратитесь к администрации сайта!')
                    }
                },
                error: function (xhr, ajaxOptions, thrownError) {
                    console.log('error...', xhr);
                }
            });
            return false;
        });
    });
</script>

2 send.php

<?
$url       = 'https://www.google.com/recaptcha/api/siteverify';
$recaptcha = $_POST['g-recaptcha-response'];
$secret    = 'здесь ваш секретный код с https://www.google.com/recaptcha/';
$ip        = $_SERVER['REMOTE_ADDR'];
$url_data  = $url . '?secret=' . $secret . '&response=' . $recaptcha . '&remoteip=' . $ip;
$curl      = curl_init();
curl_setopt( $curl, CURLOPT_URL, $url_data );
curl_setopt( $curl, CURLOPT_SSL_VERIFYPEER, false );
curl_setopt( $curl, CURLOPT_RETURNTRANSFER, 1 );
$res = curl_exec( $curl );
curl_close( $curl );
$res = json_decode( $res );

if ( $res->success == '1' ) {
	$email   = 'здесь email для уведомлений';
	$subject = $_SERVER['SERVER_NAME'] . ' - ' . htmlspecialchars( $_POST['form_name'] );
	$message = 'Имя: ' . htmlspecialchars( $_POST['name'] ) . '<br>';
	$message .= 'Email: ' . htmlspecialchars( $_POST['email'] ) . '<br>';
	$message .= ! empty( htmlspecialchars( $_POST['phone'] ) ) ? 'Телефон: ' . htmlspecialchars( $_POST['phone'] ) . '<br>' : '';
	$message .= 'Сообщение: ' . htmlspecialchars( $_POST['msg'] ) . '<br>';
	$headers = "From: <noreply@" . $_SERVER['SERVER_NAME'] . ">\nContent-Type: text/html; charset=\"utf-8\"";
	if ( mail( $email, $subject, $message, $headers ) ) {
		echo 'sent';
	} else {
		echo 'not sent';
	}
} else {
	echo 'captcha error';
}