Elsődleges menü kép

kalmarr képe

Sziasztok!

Szeretnék egy olyan elsődleges menüt csinálni (szükségem lenne egy CSS kódra), ami alap esetben az első menünél jelenjen meg a kép, illetve az aktív menünél (amire kattintok) ott megjelenik egy "menühöz rendelt kép, ikon".
Azt már sikerült elérnem, ha az egeret elhúzom a menük felett, akkor betölti a képet, de az aktív menünél nem sikerül.

CSS kód:

ul.primary-links li a:hover, ul.primary-links li a.active { background:url(images/bg-li.png) top repeat-x; color:#FFF}
Drupal verzió: 
Fórum: 
gyurex képe

Jónak tűnik. próbáltad külön is?

ul.primary-links li a:hover{
}

ul.primary-links li a.active{
}
0
0
kalmarr képe

Igen! Beírtam külön is, de sajnos nem megy. Ugyan az a hiba :(

ul.primary-links li a:hover{
background:url(images/bg-li.png) top repeat-x; color:#FFF
}
ul.primary-links li a.active{
background:url(images/bg-li.png) top repeat-x; color:#FFF
}
0
0
gyurex képe

Linket lehet kérni?

Azt próbáltad, hogy

#divem li a.active{
background: url(images/bg-li.png) top repeat-x;
color: #FFF;
}
0
0
kalmarr képe

Megnéztem ezzel se jó.

Elküldöm: www.matrixcbs.com

Elvileg az eredeti sablonjában rendben működik minden.

Elképzelhetőnek tartom, hogy valamelyik modul akciózik a sablonban.

Kalmi

U.I.

Előre jelzem, hogy ezt az oldalt vásároltam egy népszerű oldalon, és szeretem a Drupált ezért toldozgatom foltozgatom :), mielőtt kapnék a fejemre, hogy céges oldalakat fejlesztek.

0
0
hosszu.kalman képe

Nem kapja meg az active class-t. Sminkben nincs felülírva valami? Milyen modulok vannak fent?

0
0
gyurex képe

Nincs class a forrásban, CSS-ben jól hivatkoznál rá

Most ez van

<li class="menu-1320"><a href="http://matrixcbs.com/hu/category/matrix-cbs/rexamo"><span class="menu-1320" title=""><span>REXAMO</span></span></a></li>

Így jó lenne

<li class="menu-1320"><a class="active" href="http://matrixcbs.com/hu/category/matrix-cbs/rexamo"><span class="menu-1320" title=""><span>REXAMO</span></span></a></li>

A spant-t honnan kapja?

0
0
aboros képe

nincs valamiert active osztaly a htmlben.
mutasd a page.tpl.php es a template.php..
pastebin.com

0
0

-
clear: both;

kalmarr képe

Keresgéltem, de nem találtam
Elküldöm a kért részeket:

page.tpl.php

<?php if (isset($primary_links)) : ?>
                                <div class="pr-menu">
                                    <?php print theme('links', $primary_links, array('class' => 'links primary-links')) ?>
                                </div>
                            <?php endif; ?>

template.php

* Override theme_links to include <span> in list.
*/
function theme324_links($links, $attributes = array('class' => 'links')) {
 $output = '';
  if (count($links) > 0) {
    $output = '<ul'. drupal_attributes($attributes) .'>';
    $num_links = count($links);
    $i = 1;
    foreach ($links as $key => $link) {
      $class = '';
      // Automatically add a class to each link and also to each LI
      if (isset($link['attributes']) && isset($link['attributes']['class'])) {
        $link['attributes']['class'] .= ' ' . $key;
        $class = $key;
      }
      else {
        $link['attributes']['class'] = $key;
        $class = $key;
      }
      // Add first and last classes to the list of links to help out themers.
      $extra_class = '';
      if ($i == 1) {
        $extra_class .= 'first ';
      }
      if ($i == $num_links) {
        $extra_class .= 'last ';
      }
      // Add class active to active li
      $current = '';
      if (strstr($class, 'active')) {
        $current = ' active';
      }
      $output .= '<li class="'. $extra_class . $class . $current .'">';
      // Is the title HTML?
      $html = isset($link['html']) && $link['html'];
      // Initialize fragment and query variables.
      $link['query'] = isset($link['query']) ? $link['query'] : NULL;
      $link['fragment'] = isset($link['fragment']) ? $link['fragment'] : NULL;
      if (isset($link['href'])) {
        $spanned_title = "<span ". drupal_attributes($link['attributes']) ."><span>".$link['title']."</span></span>";
// In the line above, you could take out the drupal_attributes var and specify your class
 
       $output .= theme324_l($spanned_title, $link['href'], $link['attributes'], $link['query'], $link['fragment']);
      } else if ($link['title']) {
        //Some links are actually not links, but we wrap these in <span> for adding title and class attributes
        if (!$html) {
          $link['title'] = check_plain($link['title']);
        }
        $output .= '<span'. drupal_attributes($link['attributes']) .'>'. $link['title'] .'</span>';
      }
      $i++;
      $output .= "</li>\n";
    }
    $output .= '</ul>';
  }
  return $output;
}
0
0
hosszu.kalman képe

Van a kódban egy ilyen fgv hívás: theme324_l(). Bemásolnád hogy az mit csinál?

0
0
kalmarr képe

Ok

A teljes template.php.

Kíváncsi vagyok mi lehet, mert az oldalukon működik (ez bosszant :( ).

<?php
function theme324_menu_local_task($link, $active = FALSE) {
  return '<li '. ($active ? 'class="active" ' : '') .'><span><span>'. $link ."</span></span></li>\n";
}
 
function theme324_l($text, $path, $options = array()) {
  // Merge in defaults.
  $options += array(
      'attributes' => array(),
      'html' => TRUE,
    );
 
  // Append active class.
  if ($path == $_GET['q'] || ($path == '<front>' && drupal_is_front_page())) {
    if (isset($options['attributes']['class'])) {
      $options['attributes']['class'] .= ' active';
    }
    else {
      $options['attributes']['class'] = 'active';
    }
  }
 
  // Remove all HTML and PHP tags from a tooltip. For best performance, we act only
  // if a quick strpos() pre-check gave a suspicion (because strip_tags() is expensive).
  if (isset($options['attributes']['title']) && strpos($options['attributes']['title'], '<') !== FALSE) {
    $options['attributes']['title'] = strip_tags($options['attributes']['title']);
  }
 
  return '<a href="'. check_url(url($path, $options)) .'"'. drupal_attributes($options['attributes']) .'>'. ($options['html'] ? $text : check_plain($text)) .'</a>';
}
 
/**
* Override theme_links to include <span> in list.
*/
function theme324_links($links, $attributes = array('class' => 'links')) {
 $output = '';
  if (count($links) > 0) {
    $output = '<ul'. drupal_attributes($attributes) .'>';
    $num_links = count($links);
    $i = 1;
    foreach ($links as $key => $link) {
      $class = '';
      // Automatically add a class to each link and also to each LI
      if (isset($link['attributes']) && isset($link['attributes']['class'])) {
        $link['attributes']['class'] .= ' ' . $key;
        $class = $key;
      }
      else {
        $link['attributes']['class'] = $key;
        $class = $key;
      }
      // Add first and last classes to the list of links to help out themers.
      $extra_class = '';
      if ($i == 1) {
        $extra_class .= 'first ';
      }
      if ($i == $num_links) {
        $extra_class .= 'last ';
      }
      // Add class active to active li
      $current = '';
      if (strstr($class, 'active')) {
        $current = ' active';
      }
      $output .= '<li class="'. $extra_class . $class . $current .'">';
      // Is the title HTML?
      $html = isset($link['html']) && $link['html'];
      // Initialize fragment and query variables.
      $link['query'] = isset($link['query']) ? $link['query'] : NULL;
      $link['fragment'] = isset($link['fragment']) ? $link['fragment'] : NULL;
      if (isset($link['href'])) {
        $spanned_title = "<span ". drupal_attributes($link['attributes']) ."><span>".$link['title']."</span></span>";
// In the line above, you could take out the drupal_attributes var and specify your class
 
       $output .= theme324_l($spanned_title, $link['href'], $link['attributes'], $link['query'], $link['fragment']);
      } else if ($link['title']) {
        //Some links are actually not links, but we wrap these in <span> for adding title and class attributes
        if (!$html) {
          $link['title'] = check_plain($link['title']);
        }
        $output .= '<span'. drupal_attributes($link['attributes']) .'>'. $link['title'] .'</span>';
      }
      $i++;
      $output .= "</li>\n";
    }
    $output .= '</ul>';
  }
  return $output;
}
 
function custom_login_block() {
  $form = array(
    '#action' => url($_GET['q'], array('query' => drupal_get_destination())),
    '#id' => 'user-login-form',
    '#validate' => user_login_default_validators(),
    '#submit' => array('user_login_submit'),
  );
  $form['name'] = array('#type' => 'textfield',
    '#title' => t('Username'),
    '#maxlength' => USERNAME_MAX_LENGTH,
    '#size' => 15,
    '#required' => TRUE,
  );
  $form['pass'] = array('#type' => 'password',
    '#title' => t('Password'),
    '#maxlength' => 60,
    '#size' => 15,
    '#required' => TRUE,
  );
  $form['submit'] = array('#type' => 'submit', '#value' => t('Login'), );
  $items = array();
  if (variable_get('user_register', 1)) {
    $items[] = l(t('create new account'), 'user/register', array('title' => t('Create a new user account.')));
  }
  $items[] = l(t('request new password'), 'user/password', array('title' => t('Request new password via e-mail.')));
  $form['links'] = array('#value' => theme('item_list', $items));
  return $form;
}
function theme324_user_bar() {
 global $user;
 $output = '';
 if (!$user->uid) {
   $output .= drupal_get_form('custom_login_block');
 }
 else {
   $output .= t('<p class="user-info">Hi !user, welcome back.</p>', array('!user' => theme('username', $user)));
   $output .= theme('item_list', array(
     l(t('Your account'), 'user/'.$user->uid, array('title' => t('Edit your account'))),
     l(t('Sign out'), 'logout')));
 }
 $output = '<div id="user-bar">'.$output.'</div>';
 return $output;
}
?>
0
0
hosszu.kalman képe

Megnéztem és smink szinten nem jelentkezik a hiba. Milyen modulokat tettél fel?

0
0
kalmarr képe

Szokásomhoz híven sokat :(. Mit kellene keresni, mi befolyásolhatja ezt? A fiirebug nem ugraszt elő semmit ez a bajom.

0
0