День добрый, по поиску ничего не нашел или плохо искал, в общем имеем такую ситуацию, был пункт в словаре таксономии:
"пункт" с адресом /taxonomy/term/226 (но точно не помню) и синонимом к нему "punkt", балуясь в таксономии случайно его из словаря грохнул, теперь при повторном создании его выходит путь типа /taxonomy/term/907 и при назначении синонима "punkt" он становится новым пунктом таксономии и пропал из всех нодов (около 200) к которым он был подвязан, что делать?
P.S. уже готовлюсь вручную перебивать, но может есть какой-то другой вариант?
Комментарии
Не гарантирую результат, но чисто философски:
Если допустить что при удалении термина он не удаляется в таблице term_node и связи остались, то Вы можете просто в базе данных в таблице term_data новый термин 907 поменять на старый 226 (сохранив тот же словарь).
P.S. Метод не проверен и может чего-то не предусмотрел, нужно посмотреть процесс как создается и привязывается термин.
Спасибо, сейчас попробую, но еще проблема, что я точно не помню название удаленного
Если помните ноду где он был - в той же таблице term_node посмотрите все термины, исключением найдёте.
Важно! Если ноду после этого пере сохраняли - старого там точно нет!
Восстановил в базе, но в ноды теги не вернулись
Собственно, что может быть проще, чем посмотреть, как оно сделано в движке? Из функции taxonomy_del_term():
db_query('DELETE FROM {term_hierarchy} WHERE tid = %d', $tid);
db_query('DELETE FROM {term_relation} WHERE tid1 = %d OR tid2 = %d', $tid, $tid);
db_query('DELETE FROM {term_synonym} WHERE tid = %d', $tid);
db_query('DELETE FROM {term_node} WHERE tid = %d', $tid);
То есть все, что надо - удаляется (чего и следует ожидать от одного из главных модулей Друпала).
В общем, нельзя восстановить. Надо бэкапить, прежде чем баловаться.
Есть бэкап, но старенький, всем спасибо!