У меня есть две страницы в моем дереве контента n sulu 1.0.13. На странице «А» я установил ссылку на страницу «Б» с полем типа «одиночная внутренняя ссылка».
Когда я нахожусь на странице «B», я хочу получить ссылку на страницу «A». Я пробовал следующий код в моем контроллере:
$dm = $this->get('sulu_document_manager.document_manager');
$doc = $dm->find('992758cf-1da4-4e45-9ee4-ca9c4ec3998e'); // UUID of page "B"$di = $this->get('sulu_document_manager.document_inspector');
$node = $di->getNode($doc);
$refs = $di->getReferrers($doc); // $refs is an empty collection
$refs = $node->getReferences(); // $refs is an empty collection
$refs = $node->getWeakReferences(); // $refs is an empty collection
$ refs — это всегда пустая коллекция.
Как правильно получить ссылающуюся страницу?
Обновление: я сейчас использую версию 1.1.0 RC2
К сожалению SingleInternalLink
Тип содержимого в настоящее время просто сохраняет UUID в виде строки, а не в качестве правильной ссылки в PHPCR. Это также описано в этом GitHub Issue. Я пересмотрю эту проблему и посмотрю, сможем ли мы исправить это в ближайшем будущем.
В качестве обходного пути вы можете использовать InternalLinks
Тип содержимого, который уже сохраняет свои значения в качестве ссылок, хотя можно добавить более одной ссылки.
Других решений пока нет …