Новые модули: матрешки...

Аватар пользователя PVasili PVasili 22 апреля 2010 в 15:47

Фильтр Node Embed позволяет лёгким движением руки bb-тегом вставит содержимое одного материала в другой. Приятная особенность заключается в возможности отдельно темизировать вставляемый материал через отдельные файлы темизации.

0 Thanks

Комментарии

Аватар пользователя graker graker 22 апреля 2010 в 16:01

Вот это здорово.
Еще бы API какой-нибудь в виде хука, чтоб можно было для программно создаваемых типов нод написать обработку - что вставлять в случае эмбеда.

Аватар пользователя PVasili PVasili 22 апреля 2010 в 16:24

Был похожий фильтр, там можно и части материала как объекта вставлять.

Аватар пользователя graker graker 22 апреля 2010 в 16:47

Не, я не совсем это имею в виду. Вот, у меня есть модуль, в нем новый тип нод с динамическим содержимым, изменяемым пользователями. Было бы здорово, если бы embed спрашивал мой модуль, что именно я хочу поместить в другую ноду. А я бы осматривал динамическое содержимое и генерировал на его основе результат.

Но, собственно, надо наверное просто разработчику модуля написать об этом :)

Аватар пользователя PVasili PVasili 22 апреля 2010 в 16:58
"graker" wrote:

А я бы осматривал динамическое содержимое и генерировал на его основе результат.

А-ля контент темплей?
insertnode - клончик...
insert_block - вставка блока

Аватар пользователя graker graker 22 апреля 2010 в 17:15

Что-то вроде контемплейта, да, только целиком программное. Типа есть вставляемая нода, а я по ней программно генерю динамическое summary и вставляю :)
Впрочем, когда до этого дойдет, возможно проще будет самому написать доп. модуль.

Аватар пользователя F10 F10 22 апреля 2010 в 18:29

Linodef - вроде как похожее, специальными тегами можно вставлять в текст очень много чего.

Аватар пользователя Dеmimurych Dеmimurych 24 апреля 2010 в 16:34
"graker" wrote:

Вот это здорово.
Еще бы API какой-нибудь в виде хука, чтоб можно было для программно создаваемых типов нод написать обработку - что вставлять в случае эмбеда.

что мешает в хуке node_view
проверить значение поля $node->node_embedded
которая в случае работы это фильтра будет равно TRUE?

Аватар пользователя graker graker 24 апреля 2010 в 18:32
Dеmimurych wrote:

что мешает в хуке node_view
проверить значение поля $node->node_embedded
которая в случае работы это фильтра будет равно TRUE?

$node->node_embedded выставится для ноды, в которую вставляем. А речь о программной обработке вставляемой ноды.

upd: А, нет, посмотрел еще раз: вы правы, hook_view можно использовать. Отлично сделано.

Аватар пользователя Dеmimurych Dеmimurych 24 апреля 2010 в 21:22
"graker" wrote:

upd: А, нет, посмотрел еще раз: вы правы, hook_view можно использовать. Отлично сделано.

ну на самом деле не очень и отлично.
потому что при такой реализации нужно модифицировать хук виев.

а если это сторонний модуль? тогда нужно делать патч к модулю, в случае если хотим как то управлять этим процессом.

идеологически верно, мне кажется, было бы сделать так как вы сказали, свой хук для данного случая.
и уж если хук не вернул данных то идти тем путем который и есть в модуле.

Аватар пользователя Sinkora Sinkora 15 мая 2010 в 18:55

Я почему-то не нахожу практического применения этому модулю. Или есть случаи, когда он себя оправдывает?..

Аватар пользователя graker graker 15 мая 2010 в 19:07
Sinkora wrote:

Я почему-то не нахожу практического применения этому модулю. Или есть случаи, когда он себя оправдывает?..

По идее, принцип имеет смысл, если есть надо вставлять в другие ноды ноду с динамически изменяющимся содержимым. Повставлял ее везде раз и навсегда - и не надо отслеживать изменения.

Аватар пользователя PVasili PVasili 15 мая 2010 в 19:37
"volocuga" wrote:

Мда,вставил такой тег и 50-70 дополнительных запросов

если строение рук отличается от обычного то и 100 может быть...