Главная страница Drupal - две колонки для самых последних новостей - PullRequest
0 голосов
/ 23 августа 2011

У меня есть графический проект главной страницы Drupal с тремя столбцами, в котором есть первый столбец для одного фрагмента пользовательского контента и двух других столбцов, предназначенных для самых последних новостей (один тип контента), как показано на рисунке ниже:

enter image description here

Я довольно новичок в Drupal, и до сих пор я создал свой собственный page.front.tpl.php в своей теме PHPTemplate с такими областями, как заголовок, нижний колонтитул, меню, search_box и т. Д. И, конечно же, содержимым. Теперь у меня проблема с $content областью, в которой должны быть столбцы, как я описал выше. Мой вопрос: как мне их стилизовать (CSS? Где-то в админке Drupal? Использовать отдельные блоки? Какой-то модуль?), Чтобы выглядеть в проекте?

page.front.tpl.php фрагмент:

<?php if ($content): ?><div class="content-middle"><?php print $content; ?></div><?php endif; ?>

Вывод упрощенной структуры HTML (пока только две самые последние новости), я хочу как-то это стилизовать:

<div class="content-middle">

  <div class="node">
    <h2 class="title">
    <div class="content">

  <div class="node">
    <h2 class="title">
    <div class="content">

Ответы [ 3 ]

1 голос
/ 31 августа 2011

Вы можете создать 3 новых раздела в вашей теме.Измените файл .info (например, MyThemeName.info) и напишите следующее:

regions[content_center_left] = Left Sidebar
regions[content_center_middle] = Middle Sidebar
regions[content_center_right] = Right Sidebar

Следующим шагом является изменение вашего page.tpl.php или если вы хотите, чтобы эти разделы были доступны только спередистраницу вы можете изменить page-front.tpl.php.Напишите следующее, где вы хотите, чтобы секции отображались:

<?php if ($content_center_left): ?>
   <div class="content-left">
      <?php print $content_center_left?>
   </div><!-- /content_center_left -->
<?php endif; ?>
<?php if ($content_center_middle): ?>
   <div class="content-middle">
      <?php print $content_center_middle?>
   </div><!-- /content_center_middle -->
<?php endif; ?>
<?php if ($content_center_right): ?>
   <div class="content-right">
      <?php print $content_center_right?>
   </div><!-- /content_center_right -->
<?php endif; ?>

Теперь вы можете создавать свои представления (в виде блоков) и отображать их в этих разделах.

1 голос
/ 23 августа 2011

Я рекомендую использовать модуль Панели .

со страницы проекта:

Модуль Panels позволяет администратору сайта создавать индивидуальные макеты для многократного использования. По своей сути это перетаскивание контента менеджер, позволяющий визуально оформить макет и разместить контент в этом макете. Интеграция с другими системами позволяет создавать узлы, которые используют это, целевые страницы, которые используют это, и даже переопределить системные страницы, такие как таксономия и страница узла, чтобы вы можно настроить макет вашего сайта с очень мелкозернистым разрешения.

0 голосов
/ 23 августа 2011

Согласившись с Laxman 13, «Панели» - это определенно верный путь, вы можете удвоить его с помощью модуля Views , который позволит вам получать самые последние новости или любые запросы, которые могут у вас возникнуть для вашего контента.дисплей.

...