ラベル

Server (108) work (77) Idea (68) Car (31) PC (29) DAW (28) other (19) MakingWEBsite (18) 趣味 (18) health (13) CentOS (11) drupal (11) (9) android (4) スマホ (4) communication (3) drupal7 (3) hint (3) meno (3) モバイル (3) 歯医者 (3) 第二種電気工事士 (3) 英語 (3) PC Server (2) drupal8 (2) ms access (2) uwp C# (2) めし (2) 整備 (2) 音楽 (2) MIDI (1) diy (1) 会計 (1) 動画再生 (1) 生活 (1) 郵便 (1) 食べ物 (1)

2014年3月28日金曜日

drupal omega ohm ナビゲーション部分の表示場所

omegaのohmナビゲーション表示部分について

sites\all\themes\omega\ohm\templates\system\page.tpl.php
中の
<?php print render($page['navigation']); ?>
で、ナビゲーションの部分を表示をしている。

sites\all\themes\omega\ohm\css\ohm.styles.css
ここの中でナビゲーション部分の表示を担当している。
場所は
344行からの
/**
 * $NAV-BAR
 */
.block--nav-bar a {
  display: block;
  padding: 1.2em 1em;
  font-size: 16px;
  font-size: 1.14286rem;
  text-transform: uppercase;
  text-decoration: none;
  color: #fff;
}
.block--nav-bar a:hover, .block--nav-bar a:focus {
  color: #064771;
}
@media (min-width: 600px) {
  .block--nav-bar a {
    font-size: 18px;
    font-size: 1.28571rem;
    border-left: 1px solid #fff;
  }
  .block--nav-bar li:last-child a {
    border-right: 1px solid #fff;
  }
}
だけど、page.tpl.phpの中に、cssのこの部分がみつからない。
なぜだ?

sassで
sites\all\themes\omega\ohm\sass\components\blocks\_nav-bar.scss
ここにこんなのがある。
でも、関係ないなぁ。まぁ、これはこれでいいとして・・・。

で、他を調べ進む内に下のファイルを見つけた。ようやく納得。
sites\all\themes\omega\ohm\preprocess\block.preprocess.inc
ここでcssのblock--nav-barを指定している。
何でこんな回りくどい事してるんだ?
普通にcssで指定すると何か問題が出るのか?
とりあえず、cssとphpがつながったので、この問題の続きはまた後で。

追加。
omega系はpreprocessフォルダが置いてある。
まだ確認していないからここからは推測だけど、このフォルダー内のものは
Home » Administration » Appearance » Settings
で設定できるLayouts extensionをオンにしたときとオフにしたとき、全てに適用される。のだと思う。

再度sites\all\themes\omega\ohm\preprocess\block.preprocess.incの話。
この中に
'navigation' && _ohm_is_menu_block($block)
が出てくる。
これがどこから出てくるのか探したら、
sites\all\themes\omega\ohm\template.php
の中に
function _ohm_is_menu_block($block)
が出てきた。
この中の
$modules = array('menu', 'menu_block');
  if (in_array($block->module, $modules)) {
    return TRUE;
  }
ここで定義。



0 件のコメント:

コメントを投稿