Как отобразить содержимое в текстовой области в результате просмотра узла на сайте Drupal 7?

Я новичок в Drupal и хочу использовать хук для отображения некоторого контента для определенного типа узла. У меня есть видеопортал, на котором я использую видеомодуль Drupal. Я хочу отобразить текстовую зону с кодом для встраивания, чтобы мои посетители могли делиться контентом в своих блогах или на сайтах (например, на YouTube или Vimeo и т. д.). Я думаю, мне нужно написать небольшой модуль, чтобы сделать это, но какой хук мне нужно использовать, чтобы сделать это действие?

Спасибо за вашу помощь


person darkben    schedule 26.01.2012    source источник


Ответы (1)


Если это то, что вы будете часто использовать повторно (в этом проекте или в будущем), я лично создам для него собственный форматтер. Пользовательские форматы появятся в настройках отображения полей, поэтому, если вы создадите собственный модуль форматирования с именем share_code, вы можете просто выбрать «общий код» из списка отображения, и он отобразит его соответствующим образом.

Здесь есть хороший учебник о том, как создать пользовательский форматтер ссылок Facebook - http://www.metaltoad.com/blog/drupal-7-tutorial-creating-custom-formatters

Я использовал это для создания форматирования видео Youtube и ссылок Twitter.

Вы обрабатываете вывод, используя hook_field_formatter_view. Поэтому просто измените приведенный выше учебник, чтобы вывести значение полей в нередактируемой текстовой области.

person SpaceBeers    schedule 26.01.2012
comment
Спасибо за ваш ответ, но я не могу применить 2 средства форматирования для одного и того же поля? Мое поле видео отформатировано с помощью видеоплеера? Я думаю, что есть возможность добавить видеомодуль, но я не уверен... - person darkben; 26.01.2012
comment
В таком случае не могли бы вы отредактировать выходные данные форматирования видео, включив в них код для встраивания? Тот же хук, упомянутый выше, должен сделать это. - person SpaceBeers; 26.01.2012
comment
Я думаю, вы правы, я попытаюсь отредактировать его. Я использую дистрибутив Octopus Video Durpal, не знаю, знаете ли вы его. Пример здесь: demo.octopusvideo.org/video/drive - person darkben; 26.01.2012
comment
Посмотрите в video.module, и вы увидите, где выводится видео. Просто добавьте сюда свой код. Начните с простого текста и постепенно добавляйте свой код. На первый взгляд это строка 422 (video_file_embed()). - person SpaceBeers; 26.01.2012
comment
у меня есть хороший результат, когда я помещаю некоторый код непосредственно в файл шаблона видео. Это не очень красиво, но я думаю, что это сработает :) - person darkben; 26.01.2012
comment
Прохладный. Для дальнейшего использования этот учебник, который я опубликовал, действительно полезен для создания ваших собственных форматов. У меня есть хорошая маленькая библиотека, которой я сейчас пользуюсь. - person SpaceBeers; 26.01.2012
comment
Да, этот туто полезен! Я нашел этот модуль drupal.org/project/custom_formatters Вы рекомендуете его? - person darkben; 26.01.2012
comment
Я не видел этого раньше. Я создаю их как хорошую практику, но сейчас я сделал много, так что это может быть удобно. - person SpaceBeers; 26.01.2012