Редактирование шаблона шапки сайта

Главные вкладки

Аватар пользователя ghostface ghostface 5 июля 2018 в 16:37

Добрый день! До селе опыта с друпалом не имел. Есть данные от фтп и от админки, на хостинге в public_html вижу папку travel - часть названия сайта, в ней есть папка tpl в ней файл header.php в котором я вижу содержимое шапки сайта, редактирую его сохраняю, закидываю обратно на хостинг, очищаю через админку кэш, обновляю страницу, открываю исходный код, а там тоже что и было... Подскажите что не так?
Буду благодарен за любую помощь!

Комментарии

Аватар пользователя Olegars Olegars 5 июля 2018 в 18:31

нет кеш не надо чистить больше нигде, с вероятностью 100% вы не в том месте правите. Во первых убедитесь какая тема используется - здесь admin/appearance
во вторых нужно понять какой шаблон используется на данной странице - он может быть общий page.tpl.php, а может специальный - page--специальный.tpl.php, что бы найти нужный шаблон, можно по крестьянски вниз каждого найденного в папке шаблона типа --tpl.php писать по очереди например 555, и после каждого измененного шаблона проверяйте нужную страницу до появления этого текста в низу. Соответственно как появится это и будет нужный шаблон.

Аватар пользователя ghostface ghostface 5 июля 2018 в 18:34

Файл темы могут находиться только тут: /sites/all/themes/название?
Тут еще один момент, в одной папке размещено два сайта, в итоге переходя по этому пути: /sites/all/themes/название я попадаю в файлы второго... чувствуется знатный рукожоп поработал...

Аватар пользователя ghostface ghostface 5 июля 2018 в 20:20

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

Аватар пользователя gun_dose gun_dose 5 июля 2018 в 21:27

Тогда это не шапка, а голова, и файл будет html.tpl.php. Но лучше подключать скрипты и стили в .info-файле темы.

PS: вы на 100% уверены, что правите именно тот сайт?

Аватар пользователя Semantics Semantics 5 июля 2018 в 21:23

т.е. так не принято.
В друпале полно механизмов для добавления скриптов, стилей и иных метатегов для проверки.

Распишите задачи, которые перед вами стоят.
Иначе будет два рукожопа.

Аватар пользователя ghostface ghostface 5 июля 2018 в 21:28

все что мне нужно отредактировать шапку сайта: добавить viewport и код для вывода меню с мобильных устройств, в head добавить скрипт и таблицу стилей... Вроде бы элементарные вещи, а второй день мучаюсь...

Аватар пользователя VasyOK VasyOK 5 июля 2018 в 21:40

Сделать вашими методами возможно.
Даже если скопировать \modules\system\html.tpl.php в папку темы оформления и прописать там скрипты - работать будет.
Вопрос только, согласны ли вы дальше поддерживать свой сайт и делать другие элементарные вещи?

Аватар пользователя Olegars Olegars 5 июля 2018 в 21:40

вьюпорт можно поместить в template.tpl.php

 
function тема_preprocess_html(&$vars) {
drupal_add_html_head(array(
    '#type' => 'html_tag',
    '#tag' => 'meta',
    '#attributes' => array(
      'name' => 'viewport',
      'content' => 'width=device-width, initial-scale=1.0',
    )
  ), 'meta_viewport');
}

стили добавить всуществующий файл стилей

Аватар пользователя ghostface ghostface 5 июля 2018 в 21:44

VasyOK wrote:

Сделать вашими методами возможно.

Даже если скопировать \modules\system\html.tpl.php в папку темы оформления и прописать там скрипты - работать будет.

Вопрос только, согласны ли вы дальше поддерживать свой сайт и делать другие элементарные вещи?

моя задача - сделать адаптивную версию, что сделать не проблема, если отредактировать header... В друпале я уже понял реализация своеобразная...

Аватар пользователя ghostface ghostface 5 июля 2018 в 21:53

Olegars wrote:

вьюпорт можно поместить в template.tpl.php

 
function тема_preprocess_html(&$vars) {

drupal_add_html_head(array(

    '#type' => 'html_tag',

    '#tag' => 'meta',

    '#attributes' => array(

      'name' => 'viewport',

      'content' => 'width=device-width, initial-scale=1.0',

    )

  ), 'meta_viewport');
}

стили добавить всуществующий файл стилей

а как добавить код для меню + скрипт?

Аватар пользователя Olegars Olegars 5 июля 2018 в 22:09

срипт например так
scripts[] = js/menu.js
тема.info
а меню - тут тыща способов
например создать блок menu и в нужный шаблон страницы
<?php if ($page['menu']): ?>
<?php print render($page['menu']); ?>
<?php endif; ?>

Аватар пользователя ghostface ghostface 5 июля 2018 в 22:11

Правильно ли я вообще понимаю, что в друпале просто так не добавить произвольный html в header? С какой целью так реализовано не понятно конечно... в том же опенкарте шаблоны устроены куда логичнее, шапка - header.tpl, открываешь - правишь и все...

Аватар пользователя fairrandir fairrandir 5 июля 2018 в 22:23

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

Аватар пользователя ghostface ghostface 5 июля 2018 в 22:20

В themes/тема/templates/page.tpl.php

Нашел вот такой код:

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

<?php if ($main_menu): ?>

<?php endif; ?>

если мне сюда нужно еще код добавить такого рода:

<div class="mobile mobile-container">
<ul class="accordion" id="accordion">
        <li><a href="#"><img src="mobile/menu-icon.png" /></a><ul>
        <li><a href="/">Главная</a></li>
        <li><a href="/link-1">Ссылка 1</a></li>
        ...
</li>
</ul>
</div>
<script type="text/javascript">
$(document).ready(function($){
                                        $('#accordion').dcAccordion({
                                                eventType: 'click',
                                                autoClose: false,
                                                saveState: false,
                                                disableLink: false,
                                                showCount: false,
                                                speed: 'slow'
                                        });
});
</script>

то как быть?

Аватар пользователя ivnish ivnish 5 июля 2018 в 22:34

Для меню нужно использовать функционал модуля menu из ядра друпала. jquery и js код нужно добавлять специальными механизмами, например в .info темы оформления.

Хотя никто не помешает вам сделать это в стиле прошлого века, вписать вручную в шаблон

Как говорил Джон Вудс: «Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте»

Аватар пользователя ghostface ghostface 5 июля 2018 в 22:35

Всем спасибо! Это все рукожоп который делал сайт, запутал структурой папок, нашел куда код вставить - все работает! Ура товарищи!!!

Аватар пользователя Olegars Olegars 5 июля 2018 в 22:36
1

ghostface wrote:

то как быть?

достаточно добавить нужные ссылки в уже существующее main_menu на странице сразу появтится

<li><a href="/">Главная</a></li>
        <li><a href="/link-1">Ссылка 1</a></li>
Аватар пользователя ghostface ghostface 5 июля 2018 в 22:48

Пользуясь случаем, может кто подскажет где примерно отключить, при заходе с мобильного вывод над шапкой сайта "Хотите перейти на мобильную версию?"

Аватар пользователя VasyOK VasyOK 6 июля 2018 в 0:38

"моя задача - сделать адаптивную версию" CSS и JS что в Друпале что в не Друпале. Другое дело что в Друапеле много контейнеров надо вносить или "через аминку" или редактируя (создавая) нужные tpl.php шаблоны. Думаю если вы работаете с кем-то очень вероятно что это кто-то с удовольствием вам подскажет.