Удалить #more из ссылки на WordPress пятый метод

Удалить #more из ссылок Вордпресс миниатюра

Как помнится, мы уже говорили на эту тему ранее в другом посте. В тот момент возникла неприятная ситуация, при которой в ссылках на записи WordPress на главной странице сайта появлялся странный хвост #more с добавлением ID поста. Выглядел он следующим образом – «https://site.ru/post/#more-759».
При этом нужно было убрать либо тег more совсем, либо этот странный хвост. Однако удалить данный тег целиком, это не самый лучший выход. Тем более, что он именно он создает ссылку на полный запись, а на главной странице с его помощью выводится анонс статьи.

Следовательно, полное удаление не приведет к положительному результату. Остается искать способ удаления хвоста, к чему мы и перешли.

Ранее мы разобрались, что для удаления данного хвоста в ссылках WordPress существует четыре метода.

Первый метод

Мы должны были добавить вот этот код в файл functions.php:

Убрать #more из ссылки WordPress первый метод

Файл «functions.php», как правило, находится по данному адресу: «Wordpress/public_html/wp-content/themes/тема сайта/functions.php». После этого во время перехода на раздел «Читать далее» открылась бы полная запись с нормальной ссылкой без хвоста #more-759.

Второй метод

Так же требовалось добавление уже другого кода в этот же файл – «functions.php». Теперь код выглядит следующим образом:

Убрать #more из ссылки WordPress второй метод


Как вытекало из инструкции результат в обоих случаях будет одинаковый, и хвост исчезнет.

Третий метод

В этом варианте потребовалось загрузить плагин Remove More и решить проблему с его помощью. Так как я не люблю редактировать файл «functions.php» и не желаю работать со сторонним плагином, эти три варианты меня не устраивали. Поэтому для меня оставалось решить вопрос с помощью четвертого способа.

Четвертый метод

Данный и последний способ подразумевал удаление куска кода в файле в файле «post-template.php», который находился  в папке «wp-includes». Учитывая, что это был более разумный вариант я принял его, как лучший метод среди предложенных.
Требовалось удалить кусок кода в виде «#more-{$_post->ID}». Сама функция выполняет генерацию полной записи WordPress и выглядит примерно вот так:

Убрать #more из ссылки WordPress четвертый метод

Здесь требовалось удалить выделенную часть кода и не в коем случае не трогать слеш и кавычку. В общем, я открыл папку» wp-includes», нашел файл «post-template.php» и для быстрого поиска данной функции в файле применил комбинацию клавищ «Ctrl+F».

Таким образом, я удалил этот кусок кода в файле, и все стало на свое место. Теперь ссылки на пост в любом случае были нормальные без хвоста #more-759. Просто важно не забывать, что после каждого обновления WordPress, данная процедура со всеми четырьмя методами решения должно выполняться заново.
Теперь мне оставалось только радоваться и продолжать развивать свой сайт. Но, не тут-то было…

Недавно возникло новое обстоятельство, что заставляет нас вернуться к данной проблеме с хвостом в ссылках на записи Вордпресс. Дело в том, для некоторых шаблонов WordPress ни один из указанных четырех методов не работает. В этом я убедился лично на своем сайте, о чем и рассказываю ниже в тексте.

Спустя несколько дней после решения проблемы, я в сети случайно встретил шаблон basic и он меня впечатлил. После этого я решил изменить шаблон на сайте. Самое интересное начинается здесь, потерпите. После смены шаблона на сайте снова возникла проблема с хвостом «#more» и я вновь удалил данный кусок кода в файле «post-template.php». И что вы думаете? Нулевой результат. Честное слово, я готов был перестать работать с этим сайтом!

Но, из-за красивого шаблона, я передумал и начал снова искать решение проблемы. Применил и первый, и второй и третий метод – тщетно! Тег «#more-759», прямо как Кощей Бессмертный, красовался и издевался надо мной с каждым разом после того, как я попытался решить проблему, используя приведенные методы. Понимаете, даже плагин Remove More отыскал в Интернете, но он тоже не помог, проблема не решена:.

Проблема с #more не исчезла

За время поиска в сети я встретил сайт, где обсуждается данная проблема с тегом «#more-759». В комментариях пользователи жаловались на то, что «ни один вариант из существующих четырех не рабочий, следовательно, решения проблемы не существует»

После этого думал, что не возможно решить проблему и оставил все так. Ладно с этой ссылкой, пусть будет с хвостом. Тем более в обсуждениях пользователи писали, что это на продвижение сайта не влияет. Я вроде бы тоже согласился с этим мнением, но при каждом удобном случае искал в сети, как удалить из ссылок «#more» на сайте WordPress.

Пятый метод

Однажды удача просто улыбнулась мне, и я узнал о решении проблемы в оставленном сообщении на тематическом форуме. Через день уже проблема была решена следующим образом. Оказывается в шаблоне basic существует файл  «html-blocks.php», в котором есть функция  «basic_the_more_link». Её код выглядит следующим образом:

Убрать #more из ссылки WordPress пятый метод

Теперь требовалось здесь удалить кусок кода «?>#more-<?php the_ID();»,то есть, часть кода, который я выделил жирным. После удаления куска кода функция обрела такой вид:

После пятого метода проблема с #more решена

В общем, удалил я данную часть кода и хвост «#more» пропал! Только опять же, после обновления шаблона придется все повторить, но это не беда! На этом все, всем удачи! И если у Вас возникнут проблемы с шаблоном basic и другими аналогичными шаблонами с удалением «#more» из ссылок WordPress, решить ее получиться с помощью пятого метода.