Многострадальный WordPress иногда способен заставить задуматься. Например, вносить изменения в тему напрямую неправильно (за исключением тех случаев, когда она самописная и за обновления отвечаете лично), рекомендуется вносить правки посредством дочерней темы. Соответственно, если в дочерней теме создать файлы index.php, header.php и тому подобное, то они не будут обновляться вместе с родительской. Соответственно, за актуальностью кода придется следить самому. А ведь метатеги вносятся в раздел <head> </head>, соответственно, многие прибегают к редактированию файла header.php. Вариант не самый правильный, да и не всегда это возможно, некоторые темы могут быть сделаны нестандартно и содержание файла будет выглядеть так.
Нужна помощь? Не проблема, напишите мне на почту: admin@workinnet.ru
Вносим метатеги в шапку
В WordPress файл functions.php дает широкие возможности внесения изменений в тему, достаточно использовать правильные хуки и можно подключить многие вещи. Теперь поэтапно вносим нужные метатеги. Например, верификацию от Search Console Google и Яндекс.Вебмастер.
Если дочерней темы нет, то подключите ее и настройте. В противном случае с обновлением могут слететь все пользовательские коды, уверен, вам это не нужно. В дочерней теме создайте файл functions.php и внесите туда такой код:
add_action( 'wp_head', 'bashka_meta' ); function bashka_meta() { ?> <meta name="google-site-verification" content="dannye_ukazaniye_konsolyu" /> <meta name="dannye_ukazaniye_webmasterom" content=""> <?php }
Готово, я только что подключил метатеги в раздел <head> посредством файла функций.
Теперь стоит поэтапно расписать, как это работает. Я желаю, чтобы вы поняли, а не тупо скопировали, уверен, вы желаете того же.
Начнем с хуков:
add_action( 'wp_head', 'bashka_meta' );
Функция add_action отвечает за создание действия. В данном случае, за дальнейшее выполнение функции bashka_meta(). Хук wp_head отвечает за место, где действие будет выполняться, то бишь в разделе <head> </head>. И сама функция. Придумывайте изощренное название, чтобы вероятность того, что где-то встретится другая функция с таким же названием, была предельно мала. В случае, если попадется функция с аналогичным названием, произойдет конфликт и сайт не сможет работать до его устранения. Я назвал baschka_meta, маловероятно, что где-то такое попадется.
Далее идет строка:
function bashka_meta() { ?>
Мы создали действие, которое запускает выполнение функции, но теперь необходимо задать код самой функции, фактически, указать, что должно быть сделано. Именно за это отвечает function. ?> — данное сочетание знаков закрывает выполнение блока PHP, если этого не сделать, то случится конфликт.
Далее следует такой блок кода:
<meta name="google-site-verification" content="dannye_ukazaniye_konsolyu" /> <meta name="dannye_ukazaniye_webmasterom" content="">
<meta name> — HTML-тег, пришлось закрыть блок PHP именно для того, чтобы выполнялся обычный html. Как видите, я указал только два метатега. Можно указать любое количество. Ровно столько, сколько вам необходимо.
И теперь завершение. Так как функция у нас на php и ее требуется завершить, добавляем эти строки:
<?php }
<?php — данное сочетание снова открывает блок PHP и запускает выполнение кода. Скобочка завершает выполнение функции. Все, код будет полностью работоспособен.

Все просто
Даже очень. Конечно, я рекомендую все эти функции выносить в отдельный плагин, но это заслуживает отдельной темы. На самом деле, создать свой плагин довольно просто и вы не будете зависеть от темы. Со сменой не пропадет никакой пользовательский код. Впрочем, можете использовать functions.php, он способен выполнить нужную задачу.
Если материалы с данного сайта были полезны, и вы желаете поддержать блог, то можете воспользоваться формой по ссылке: Донат на поддержку блога
Ну ты красава 2дня бился над проблемой содержащей, в том числе и вставку мета на отдельную страницу. Всё не росло. а тут эта статья с подробным распилом чё по чём. Особо обновило мозх сначала закрытие пхп, а потом открытие. Поначалу не мог понять. Теперь вижу, что некоторые ранее писаные коды в functions.php не работают именно поэтому
Спасибо за отклик. Рад, что сумел помочь, как-нибудь расширю статью и объясню, как добавлять meta на отдельные страницы.
Как добавить только на главную?
Заключите в:
Например:
Очень актуально с новой версией 5.9, всю голову сломал, а оказалось все так просто, спасибо огромное!