Беда с выводом названий рубрик.
-
Всем привет!
Пишу подробно, вдруг эту задачу можно решить каким-то другим способом.
Есть каталог. Тысячи картинок с разными данными, поэтому делать под каждую картинку свою страницу лениво (да и надо ли?). Добавил через Advanced Custom Fields нужные поля и правил «Шаблон загруженного изображения» (image.php), чтобы вставить туда, кроме всего прочего, строку навигации с родительской страницы.
Пришлось сделать небольшие массивы с федеральными округами и регионами для подстановки адреса и текста ссылки, получаемых из get_the_title() данных. Но делать массив пивзаводов руками — их тысячи и какие-то возможно придётся править, поэтому придумал добавлять их в текст ссылки через рубрики (не нужно лезть в файл и возможность быстро найти и изменить существующую). Добавил через тот же Advanced Custom Fields к картинке. Больше там ничего подходящего нет, другие способы подразумевают правку у каждой пробки вручную (при изменении названия пивзавода с 30-ю пробками — у всех 30-ти). Метки заняты цветами.
Попробовал — всё получилось, работало какое-то время при набивании данных. Но потом почему-то перестали правильно выводиться названия рубрик (пивзаводов). Проверил все возможные варианты — работают и не работают и те, и другие варианты. То есть логики никакой:
1) кавычки — есть/нет
2) раскладка — латиница/кириллицаПотом стал смотреть в порядке их создания и, оказывается, что с какого-то момента база перестала выдавать именно название рубрики («Объект термина» в меню Advanced Custom Fields), но выдаёт ID термина.
а) правильное написание — Главная | BS | СФО | Новосибирская область | Aludaris Brolis
б) неправильное с объектом термина — Главная | BS | СФО | Новосибирская область | Fatal error: (текст можно посмотреть по ссылке)
в) неправильное с ID — Главная | BS | СФО | Новосибирская область | 41
Причём в варианте в) адрес ссылки выдаёт верно, то есть тут виновата именно рубрика.Выбранные пункты в Advanced Custom Fields: таксономия, рубрика, выбор, объект термина.
Код «Шаблон загруженного изображения» (image.php) неполный
<?php $regstring = get_the_title(); $numreg = substr($regstring, 0, 2); $numbrew = substr($regstring, 0, -4); $dvfo = array ("dvfo", "ДВФО"); ... $pvfo = array ("pvfo", "ПВФО"); $reg14 = array ($dvfo[0], $dvfo[1], "Республика Саха (Якутия)"); ... $reg87 = array ($dvfo[0], $dvfo[1], "Чукотский автономный округ"); $reg04 = array ($sfo[0], $sfo[1], "Республика Алтай"); ... $reg70 = array ($sfo[0], $sfo[1], "Томская область"); echo '<a href="http://www.russiancaps.ru/index">Главная</a> | <a href="http://bs.russiancaps.ru">BS</a> | '; echo '<a href="http://bs.russiancaps.ru/' . ${"reg$numreg"}[0] . '">' . ${"reg$numreg"}[1] . '</a> | '; echo '<a href="http://bs.russiancaps.ru/' . ${"reg$numreg"}[0] . '/reg' . $numreg . '">' . ${"reg$numreg"}[2] . '</a> | '; echo '<a href="http://bs.russiancaps.ru/' . ${"reg$numreg"}[0] . '/reg' . $numreg . '/' . $numbrew . '">' . get_field('capsbrewery') . '</a>'; ?>
Сайт смотреть здесь. Так как я запнулся на этой ошибке при работе над Новосибирской области, то смотреть её (со страницы завода при клике по пробке):
а) правильно — http://bs.russiancaps.ru/sfo/reg54/54-26/
б) неправильно — http://bs.russiancaps.ru/sfo/reg54/54-14/Попробовал плагин для таксометрии (TaxoPress), то есть были создан массив рубрик отличный от стандартной «Рубрики». Результат тот же.
Как исправить ситуацию? Вновь созданные рубрики не работают.
- Тема «Беда с выводом названий рубрик.» закрыта для новых ответов.