Пользовательская форма комментария в шаблоне CCK - PullRequest
1 голос
/ 12 ноября 2009

Pre-abmle: я использую MakeMeeting модуль для создания / отображения опросов. Этот модуль имеет собственный тип контента , и я не могу получить комментарии для отображения на экран (независимо от того, выберу я показать комментарии или на той же странице, или нет в Настройки комментариев для этого типа узла). Модуль MakeMeeting имеет свои собственные функции темы, но, возможно, они не виноваты, поскольку, насколько я знаю, Drupal должен добавлять комментарии к любым данным, которые генерирует модуль.

Это поднимает два связанных вопроса:

1) Как можно использовать пользовательский код для отображения функциональности комментариев на пользовательском узле CKK? Скорее всего, этот код должен быть добавлен в node-typename.tpl.php

2) Как отладить, почему комментарии не отображаются, где я должен проверить (вызовы функций, имена переменных и т. Д.).

Спасибо!

1 Ответ

2 голосов
/ 12 ноября 2009

Комментарии обрабатываются в нескольких местах. Наиболее важным является, вероятно, файл шаблона узла и файл template.php. Поэтому, если комментарии для узла не отображаются (но для других типов узлов), количество мест, где что-то может пойти не так, ограничено.

  1. Наиболее важным местом для поиска, вероятно, будет файл шаблона, который используется при отображении узла. Но если это то же самое, что и для других типов узлов на вашем сайте, и там отображаются комментарии, это не может быть проблемой
  2. После этого я зайду в ваш файл template.php и посмотрю на функцию preprocess_node. Здесь тема может сделать свою собственную логику, чтобы определить, должны ли комментарии быть представлены или нет.
  3. Третий вариант, может быть, если ваша тема реализовала свою собственную функцию темы функции темы, используемой для комментариев. Я думаю, что theme_comment_view () используется.

Я просмотрел код модуля, и не похоже, что это может быть причиной этой проблемы. Тем не менее, вы можете не видеть реальный узел, когда вы думаете, что делаете. Это наиболее вероятная причина. То, что вы просматриваете страницу, сгенерированную модулем, а не просматриваете сам узел. Это может объяснить проблему, поскольку вы просто видите, что определил модуль. Решением этой проблемы будет включение комментариев узла в используемый файл шаблона. Я видел, что в модуле реализовано много файлов шаблонов, поэтому вы можете взять копию того, что вам нужно изменить, и добавить туда некоторый код, который печатает комментарии. Вам может понадобиться использовать некоторый код в функции предварительной обработки (в template.php), чтобы получить актуальную тематическую версию комментариев, которую вы можете распечатать в файле шаблона.

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

...