Как подружить WordPress с «чужой» страницей?

Как подружить WordPress с «чужой» страницей?

14.05.2015

Просмотров: 1338


Комментариев: 2

Обратите внимание: автор предлагет создание «под ключ» сверхскоростных, хорошо оптимизированных для поисковых систем WEB-сайтов — от сайтов-визиток до интернет-магазинов, а также оперативную техническую поддержку и обслуживание сайтов. Связаться с автором можно по телефону 8 (906) 724-89-01.


Не так давно передо мной встала несложная, на первый взгляд, задачка: «подружить» популярный типовой движок web-сайта с «чужой» страницей. Суть задачи заключалась в том, чтобы подменить главную страницу сайта (согласно пожеланиям заказчика — примечание для тех, кто уже успел подумать чего плохого!) на страницу своей собственной разработки, при этом полностью сохранив прежний функционал всех остальных страниц.

Задачка, однако, оказалась не столь тривиальной, как это могло показаться сначала. После соответствующего и вроде бы вполне корректного оформления файла серверных директив htaccess (при запросе корня сайта — выдаём «чужую» страницу, при любых иных запросах — результаты работы штатной индексной страницы WordPress под названием index.php) индексная страница WordPress вместо показа прежнего функционала стала выдавать 302-й редирект с перенаправлением на «чужую» индексную страницу. Тогда как по всем построенным в htaccess правилам она этого делать ни в коем случае не должна была.

Предложенный руководством вариант — перенос старого сайта на новый субдомен — был мной сразу же отвергнут как нецелесообразный.

Некоторую ясность внесла подсказка в соответствующей теме на официальном форуме технической поддержки WordPress: мне стало ясно, что перенаправление — одна из штатных функций движка, который при обнаружении «чужой» страницы квалифицирует последнюю как ещё один шаблон и автоматически перенаправляет посетителей исключительно на «чужую» страницу. Однако предложенный техподдержкой WordPress способ — создание средствами движка через администраторский интерфейс статической страницы — показался мне чересчур сложным, и я даже не стал разбираться в его реализации: это требовало времени, а время — деньги.

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

Результат расследования поистине ошеломил меня: чтобы подружить «чужую» страницу с движком WordPress, мне понадобилсь — внимание! — найти и закомментировать одну-единственную строку в коде движка.

Делюсь секретом: в папке «wp-includes» необходимо найти файлик под названием «template-loader.php», в нём отыскать строчку «do_action('template_redirect');» и закомментировать её — к примеру, поставив перед ней решётку «#». Ну и само собой, не забудьте правильно настроить htaccess для корректной работы страниц на сервере.

P. S. Нет, я не знаю версию движка WordPress, с которой работал — у меня была конкретная задача, которую нужно было решить, вкупе с уверенностью, что заказчик не станет ни обновлять версию движка, ни менять стандартный шаблон на другие.



Автор сайта


Комментарии

Добавить новый комментарий:

Как вас зовут:

Проверка, не робот ли вы — введите цифры с картинки:  

Прим. автора сайта: премодерация всех комментариев.

22.10.2016 19:34 Комментирует Sylvia:

WP Super Cache подойдёт как для начинающих, так и для более опытных пользователей WordPress, но поскольку он использует файловую систему для кэшировниая, его будет крайне сложно использовать для сайта с двумя или более веб-серверами.

26.11.2016 16:57 Комментирует ealnye-otzyvy.info:

Кэширование объектов и тразнитное кэширование являются достаточно прозрачными для пользователей WordPress, но разработчикам важно хорошо знать и разделять эти два механизма. Плагины для внешнего кэширования объектов чаще всего требуют больше усилий при настройке чем кэширование страниц. При этом на главной странице сайта, в рубрике последние записи все обновления появляются у всех пользователей. Не подскажите ли, что это вообще такое?

Ответ автора сайта: Не подскажу, я не специалист по WordPress. Задачи решаю обычно по мере их поступления и уровню их оплаты.


© «Таксор». Интернет-мастерская М. Ю. Уткина.