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

  • Всем здравствуйте!
    Прошу разъяснить следующее:

    Есть страницы: «товар 1» и «товар 2».
    На каждой из этих страниц перечислены товары («товар 1.1», «товар 2.1» и т.д.).
    При переходе на страницу «товар 1.1» получаем следующий адрес:
    http://example.ru/товар 1/товар 1.1
    Следовательно, при переходе на страницу «товар 2.1» получаем следующий адрес:
    http://example.ru/товар 2/товар 2.1
    На каждой странице («товар 1.1/2.2» и т.д.) есть ссылка «вернуться ко всем товарам».
    Шаблон страниц («товар 1.1» и «товар 2.2» и т.д.) одинаковый.

    Вопрос:

    Как в wordpress правильно создать код ссылки «вернуться ко всем товарам» чтобы не делать два одинаковых шаблона (файла) и не прописывать ID соответствующей категории по принципу

    <?php
    echo '<a href="' . get_permalink(1) . '">вернуться ко всем товарам 1</a>';
    ?>
    <?php
    echo '<a href="' . get_permalink(2) . '">вернуться ко всем товарам 2</a>';
    ?>
Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Модератор Yuri

    (@yube)

    Есть страницы:

    ID соответствующей категории

    Судя по всему, страницами и категориями Вы называете что-то, что не является статическими страницами и рубриками (категория — устаревший перевод названия таксономии category).
    Поясните что есть что, тогда, возможно, можно будет что-то подсказать.

    @yube
    Да, скорее соглашусь. Такса (терм)… Ранее не всё верно описал. Каюсь. Исправлюсь.
    Полагаю, что если бы правильно указал строку, то вероятно понятнее стало бы.
    В общем был дополнен в ВП блок произвольных записей с таксономией. В админке теперь стало высвечиваться как дополнительное меню «Товары/Все товары/Добавить товары/Рубрики» (Аналог «Записи»).
    В итоге, при переходе на страницу произвольной записи мы видим адрес:
    http://example.ru/товары/товар_1/товар_1.1
    где товар_1.1 — single-товар_1.php
    Вот на странице товар_1.1 должна быть ссылка, при переходе по которой загружалось бы:
    http://example.ru/товары/товар_1
    на которой выводится меню на товары («товар 1.1», «товар 1.2» и т.д.).
    Следовательно, если мы находимся по адресу:
    http://example.ru/товары/товар_2, то выводится меню на товары («товар 2.1», «товар 2.2» и т.д.).
    Если смотреть глубже, то при переходе на:
    http://example.ru/товары, выводится меню на «товар 1» и «товар 2».
    Вот как мне это реализовать, ни как не пойму…

    • Ответ изменён 4 года, 11 месяцев назад пользователем legal2019. Причина: Жаль нет предпросмотра
    Модератор Yuri

    (@yube)

    Товар — запись типа «товар».
    «товары» — таксономия для записей типа «товар».
    «товар_1» — терм таксономии «товары», к которому относится запись типа «товар» с именем «товар 1.1».
    «товар_2» и «товар 2.1» — аналогично «товар_1».
    Пока правильно?

    Если да, то в шаблоне вывод одиночной записи типа «товар» получаем термы заданной таксономии для выводимой записи
    $terms = get_the_terms(get_the_ID(), 'товары');
    Их может быть больше одного, но нас интересует только первый («товар_1»), он же единственный в данном случае. Получаем его адрес:
    $link = get_term_link($terms[0], 'товары');
    Для записи «Товар 1.1» это по идее должна быть ссылка на «товар_1».

    Что-то не получается у меня…

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Тема «Как сделать ссылку на разные страницы в одном шаблоне?» закрыта для новых ответов.