Как я могу контролировать размещение области комментариев в Drupal 6? - PullRequest
0 голосов
/ 11 февраля 2010

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

У меня правильно работают CSS и HTML, так что проблема не в этом. Моя проблема в том, что блок комментариев, сгенерированный Drupal, находится вне div, определяющего центральный столбец, и поэтому он выглядит неуместным. Таким образом, я думаю, что решение состоит в том, чтобы вставить строку в мою тему, говорящую «напечатать блок столбца здесь», но, изучив документы Drupal, я не вижу никакого способа сделать это. Основываясь на выводе HTML от Drupal, я не уверен, что исправление CSS / HTML будет работать.

Я уверен, что другие разработчики тем Drupal, должно быть, сталкивались с этим раньше ...

Ответы [ 3 ]

2 голосов
/ 11 февраля 2010

В файле node.tpl.php вы можете создать html для полного отображения узла (узел просматривается). Вы можете создавать шаблоны для каждого типа узла, fx node-blog.tpl.php и т. Д. Шаблон узла по умолчанию просто печатает $content, но при желании он может вместо этого печатать каждый элемент отдельно с нужной разметкой.

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

Для размещения комментариев используйте этот фрагмент:

<?php print comment_render($node); ?>

или поиск comment_render() функция

1 голос
/ 15 февраля 2010

В конце концов мне удалось решить эту проблему, используя исправление HTML и CSS. Это не так гладко, как хотелось бы, но это не конец света.

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

1 голос
/ 11 февраля 2010

Существует несколько способов решения этой проблемы в Drupal 6.

Используя что-то вроде модуля comment_display , вы можете вручную разместить комментарии в любом месте вашего файла page.tpl.php.

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

...