Здравствуйте.
Проблема: EntityMalformedException: Отсутствует связующее свойство у сущности типа taxonomy_term. в функции entity_extract_ids() (строка 7766 в файле xxxxx.xx/includes/common.inc).
Вылезла она после того, как был приглашен программист для развития сайта. Программист исчез, а проблема появилась.
Причем эта ошибка вылезает только на некоторых подразделах.
Структура сайта обычная - Главная-разделы-подразделы-товары.
Как пример: В таксономии есть словарь, в каждом словаре несколько терминов, в терминах идут товары постранично.
И вот один-два термина выдают ошибку EntityMalformedException, а остальные работают без проблем. Т.е. часть подразделов сайта работает, а некоторая часть выдает одну и туже ошибку.
Тоже самое с постраничным выводом товаров. В некоторых терминах страницы 1,2,3,4 работают, а 5-я страница опять выдает:
"EntityMalformedException: Отсутствует связующее свойство у сущности типа taxonomy_term. в функции entity_extract_ids() (строка 7766 в файле xxxxx.xx/includes/common.inc).
На сайте произошла непредвиденная ошибка. Пожалуйста, повторите попытку позже."
Global Redirect отключал - не помогает. Многие модули поочередно отключал - не помогает.
Уже не знаю что делать
Помогите.
Комментарии
Исчезающий программист.. Гудини ???
http://www.drupal.ru/node/110490
Ну вот такой вот программист. Не доделал, поломал и пропал.![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
"Оказалось, в самописном модуле просто для того юзера используется для которого нет такого поля."
это я читал, но не понял
И там не совсем такая проблема. У меня в полностью однотипных подразделах ошибка. В каком то подразделе есть, в каком то нет.
помощи не будет?
Программист писал кастомные модули, правил в шаблонах, template.php ? Если да - нужно смотреть код.
Скорее всего, дело в содержимом полей типа term_reference, когда открываете для определенных терминов или страниц при пейджинге - вот и возникает ошибка. А при открытии ноды не возникает такой ошибки?
P.S. Вы не регистрировались ранее на drupal.ru , например, под именем amator ?
Скорее всего правил. Но как узнать какие и зачем? Часть файлов я уж сам поправлял - по датам не получится выяснить. Как показать код и код чего именно? Там много файлов ***.tpl.php
Проблема в том, что не только при пагинации.
Например,
xxxxx.ru/dir1/name1/ работает
xxxxx.ru/dir1/name2/ работает
xxxxx.ru/dir1/name3/ НЕ работает
xxxxx.ru/dir1/name4/ работает
xxxxx.ru/dir1/name5/ работает
При этом настройки терминов идентичны, это просто подразделы (name1-name5), внутри главного раздела (dir1).
При открытии какой ноды? Которая ошибку дает?
Там везде редирект 301-й стоит и присваивается синоним каждой ноде, термину.
Нет, это мой единственный ник тут.
Это же программист написал что-то, что сломало сайт. Теперь задача найти этот код и переписать правильно либо удалить. Найти это - задача творческая.
Вы пишете, "xxxxx.ru/dir1/name3/ НЕ работает". Какой запрос делается по этому адресу? Предполагаю что-то вроде SELECT * FROM {node} WHERE field_dir = dir1 AND field_name = name3 (пример условный). Т.е. выбираются ноды по этому условию. И, раз для всех dir и name настройки идентичны, то дело в нодах. Может быть, достаточно будет пересохранить эти ноды. Предполагаю такую ситуацию: в нодах было необязательное поле, в каких-то нодах заполнялось, в каких-то нет. Потом поле сделали обязательным, программист считал что значение поля всегда непустое и не проверял этот момент. И вот, для таких нод и выдается ошибка - при фильтрации или пейджинге, неважно. Попалась "кривая" нода в выборку и выдает эксепшн.
Насчет 301 редиректа не понял. Используются модули для редиректа или пишется что-то вроде RewriteRule ?
Там модуль Global Redirect стоит.
Goodboy, спасибо, что помогаете.
С админской частью работаю нормально, но вот с доработкой кода беда - теорию я уже понимаю, вот с практикой увы.
Я сейчас удалил из ./templates/ все файлы и залил туда старые файлы до программиста из бекапа. Конечно, там вылезли ошибки вверху, но, ошибка EntityMalformedException в том же самом из подразделов (xxxxx.ru/dir1/name3/) не исчезла и товары не отображаются.
Т.е. как бы я так понимаю, что это все же в настройках в самом Друпале?
Можно я Вам в личку напишу?