Как назначить класс в зависимости от того, используется ли регион Drupal?

0

В теме Drupal 7, как мне присвоить имя класса региону, если оно используется или нет? Мне нужно три условия для данного региона для моей темы Drupal. Существует три области контента: sidebar_first, content и sidebar_second. Код для него ниже:

                    <?php if ($page['sidebar_first']): ?>
                    <div id="sidebar-first" class="column sidebar">
                        <div class="section">
                            <?php print render($page['sidebar_first']); ?>

                            <div class="clear"></div>
                        </div>

                        <div class="clear"></div>
                    </div>
                    <?php endif; ?>

                    <div id="content" class="column">
                        <div class="section">
                            <?php if ($page['highlighted']): ?>
                            <div id="highlighted">
                                <?php print render($page['highlighted']); ?>
                            </div>
                            <?php endif; ?>

                            <a id="main-content"></a>

                            <?php print render($title_prefix); ?>

                            <?php if ($title): ?>
                            <h2 class="title" id="page-title">
                                <?php print $title; ?>
                            </h2>

                            <div class="title_sep">
                                <div class="title_sep_left"></div>
                                <div class="title_sep_right"></div>

                                <div class="clear"></div>
                            </div>
                            <?php endif; ?>

                            <?php print render($title_suffix); ?>

                            <?php if ($tabs): ?>
                            <div class="tabs">
                                <?php print render($tabs); ?>
                            </div>
                            <?php endif; ?>

                            <?php print render($page['help']); ?>

                            <?php if ($action_links): ?>
                            <ul class="action-links">
                                <?php print render($action_links); ?>
                            </ul>
                            <?php endif; ?>

                            <?php print render($page['content']); ?>

                            <?php print $feed_icons; ?>

                            <div class="clear"></div>
                        </div>

                        <div class="clear"></div>
                    </div>

                    <?php if ($page['sidebar_second']): ?>
                    <div id="sidebar-second" class="column sidebar">
                        <div class="section">
                            <?php print render($page['sidebar_second']); ?>

                            <div class="clear"></div>
                        </div>

                        <div class="clear"></div>
                    </div>
                    <?php endif; ?>

Если sidebar_first находится на странице, назначьте имя класса 'twocol_left' в <div id="content" class="column">. Если присутствует sidebar_second, назначьте имя класса 'twocol_right' <div id="content" class="column">. Наконец, если присутствуют sidebar_first и sidebar_second, присвойте 'threecol' <div id="content" class="column">.

Может кто-нибудь, пожалуйста, помогите мне с этим? Возможно, это было бы просто, как добавление if/else для <div id="content" class="column"> внутри класса = "column"?

Теги:
drupal
drupal-7

1 ответ

0

Я понял. Оказывается, в теге body он перечисляет, есть ли одна боковая панель или две. Я могу использовать эти имена классов, чтобы затем соответствующим образом создать область контента и другие элементы на странице.

Пример:

<body class="html not-front logged-in two-sidebars page-user page-user- page-user-1 not-front logged-in ftrtop_columns ftrbttm_columns admin-menu" cz-shortcut-listen="true">

В этом примере перечислены две боковые панели. Если я удалю один из блоков боковой панели, чтобы одна из боковых панелей больше не использовалась на странице, она покажет класс "one-sidebar" в теге body.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню