Поддержка Проблемы и решения Как создать кастомную страницу c роутером?

  • Привет.
    Как сделать, что при переходе по ссылке сайт.com/tovari/123456 срабатывал мой скрипт tovari.php + передавался параметр tovar_id=123456 и чтобы в браузер выводилась обычная страница текущей темы wp со стандартным футером, хедером и тд., а контент по середине страницы чтобы выводился из моего кастомного скрипта tovari.php.
    Я искал и пробовал на stackoverflow парочку, но не работало, вот пример https://wordpress.stackexchange.com/questions/26388/how-to-create-custom-url-routes

Просмотр 7 ответов — с 1 по 7 (всего 7)
  • создать свой шаблон кастомной страницы и использовать его в настройках страницы

    не то, нужно именно чтобы wp отдавал мне полный контроль в рамках этого url …/trains/123456…, от самого же wp требуется только вывод темы — футер, хедер и менюшки, а сам контент и пагинацию его делаю я, вручную. Потомучто товары генерируются налету, а не хранятся жестко в базе как посты.

    • Ответ изменён 3 года, 7 месяцев назад пользователем kacan57824.
    Модератор Yuri

    (@yube)

    До WP5.5 был баг с подстраницами. Наконец-то его исправили. В результате трюки с его использованием больше не работают.

    Можно попробовать по-хамски 🙂 перехватить хук init, выцепить на нем 123456 и убрать охвостье из REQUEST_URI. Остальное традиционно: индивидуальный шаблон страницы и свой обработчик выцепленного ранее 123456 вместо Цикла.

    Модератор Yuri

    (@yube)

    не то,

    Именно то. Создается страница, для нее индивидуальный шаблон, в котором Цикл заменяется на свои поделки.

    Я создал страницу с содержимым [POHAPE]print_r($_SERVER)[/POHAPE] — добавил кое-что в functions.php по статье одной, чтобы код php работал в страницах кастомных. Задал url — tovari, потом ввожу в браузере …/tovari/123456 — он редиректит на просто …/tovari, а $_SERVER вообще вся пуста, как и $_GET естественно

    Модератор Yuri

    (@yube)

    [POHAPE]

    Это что? На этом форуме нет BB-кодов, если Вы еще не заметили.

    добавил кое-что в functions.php по статье одной

    Увы, телепатов здесь нет. Если хотите что-то показать — показывайте код (используя кнопочку Code, а не инородные BB-коды).

    он редиректит на просто …/tovari,

    Про это я уже написал.

    а $_SERVER вообще вся пуста

    Интересный у Вас сервер! Я такого еще ни разу не видел за четверть века мучений с PHP.

    [POHAPE] — Это что? На этом форуме нет BB-кодов, если Вы еще не заметили.

    Это кастомный тег, в котором исполняемый код php на постоянной странице /tovari, согласно этой инструкции https://wp-kama.ru/id_87/ispolnyaemyiy-php-kod-v-zapisyah-wordpress.html, название тега сменил под себя)

    а $_SERVER вообще вся пуста

    Это устранено, проблемы и не было, не туда смотрел просто

    Можно попробовать по-хамски 🙂 перехватить хук init, выцепить на нем 123456…

    А как это сделать? Сейчас у меня работает ссылка с параметрами такого вида …/tovari?id=123456&category=eda, но она не оч. выглядит для поисковиков. Как бы сделать чтобы параметры передавались через слеши без ошибки 404 или редиректов, чтобы пользователь как перешел на страницу со слешами, так на ней и остался?

    • Ответ изменён 3 года, 7 месяцев назад пользователем kacan57824.
    • Ответ изменён 3 года, 7 месяцев назад пользователем kacan57824.
    • Ответ изменён 3 года, 7 месяцев назад пользователем kacan57824.
Просмотр 7 ответов — с 1 по 7 (всего 7)
  • Тема «Как создать кастомную страницу c роутером?» закрыта для новых ответов.