ТЗ на объединение модуля перелинковки Perelink.binet.pro с Similar Entries Нужно объединить сервис создания внутренней перелинковки для сайтов Binet Pro с модулем Similar Entries таким образом, чтобы часть ссылок выводилось из Binet Pro, часть – из Similar Entries. Что такое Perelink.binet.pro? Это сервис для создании внутренней переликновки для сайтов. Смысл его в том, что она находит похожие по содержанию страницы и дает возможность проставлять ссылки между ними. У сервиса есть API. C его помощью можно получить доступ к найденным связям между страницами. В итоге через этот сервис можно получить следующие данные: откуда, куда и с каким текстом должна быть ссылка. Под Друпал у этого сервиса уже есть готовый модуль (я его предоставлю). Нужно сделать модуль который был делать его интеграцию с Similar Entries. Как работает текущая перелинковка Сейчас все работает следующим образом. Через Similar Entries выводятся 3 ссылки на похожие статьи. Причем они представляют собой 1 views с 3 блоками. Это сделано для того, чтобы на 1 статью было 3 разных варианта ссылки (заголовок + 2 кастомных поля с текстом ссылки). В зависимости от того, в каком блоке выводится ссылка (на каком месте – 1, 2 или 3), будет различный текст. Я предоставлю пример рабочего сайта – если что-то не понятно, можно будет посмотреть как это работает в живую. Кроме этого выводится одна дополнительная ссылка в блоке, генерируемом модулем Perelink.binet.pro. Что нужно сделать Нужно чтобы если в сервисе Perelink.binet.pro доступна 1 или вообще ни одной ссылки для данной страницы, то в блоках-вьюшках созданных через Similar Entries выводились их обычные ссылки. Если же доступно 2 и более ссылок, то нужно чтобы они заменяли ссылки в блоках Similar Entries. Причем сначала нужно заменять третий блок (если есть 2 ссылки), затем второй (если 3), затем первый (если есть 4 ссылки). Т.е. алгоритм такой: Блок Similar Entries №3 показывает свое обычное содержание, если в сервисе Perelink.binet.pro 1 ссылка или меньше. Если ссылок в Perelink.binet.pro 2 и более, то в нем отображается 2-ая ссылка. Блок Similar Entries №2 показывает свое обычное содержание, если в сервисе Perelink.binet.pro 2 ссылки или меньше. Если ссылок в Perelink.binet.pro 3 и более, то в нем отображается 3-ья ссылка. Блок Similar Entries №1показывает свое обычное содержание, если в сервисе Perelink.binet.pro 3 ссылки или меньше. Если ссылок в Perelink.binet.pro 4, то в нем отображается 4-ая ссылка. В данный момент более 4 ссылок быть не может. Но возможно в будущем у меня будут сайты с большим количеством блоков Similar Entries (например 4). Алгоритм там будет такой-же, просто блоков будет 4, а не 3. Как сделать интеграцию Как именно делать оставляю на ваше усмотрение (но прежде чем делать, алгоритм интеграции нужно обсудить со мной, чтобы не возникло каких-либо ошибок). Лично я вижу 2 варианта. 1. Модуль Perelink.binet.pro остается без изменений. Делается субмодуль для Views (или просто какие-то специальные вьюшки) которые меняют содержание используемых сейчас 3 вьюшек по описанному выше алгоритму (т.е. показывают либо обычно содержание этой вьюшки, либо ссылку из Perelink.binet.pro). 2. Создать субмодуль для Perelink.binet.pro таким образом, чтобы можно было создать 3 дополнительных блока-вьюшки. В итоге в зависимости от того, сколько есть ссылок в Perelink.binet.pro для данной страницы выводить либо блок-вьюшку Similar Entries, либо вместо нее блок-вьюшку со ссылкой Perelink.binet.pro. Блок ссылки всегда представляет собой картинку + текстовая ссылка.