Hola a todos compañeros.
Os escribo porqué ya tengo dolor de cabeza de tanto batallar con esto. Estaba creando una web con Wordpress (de momento en local, para hacer pruebas) y me encuentro con un detalle: Querría que al pasar el ratón encima de la barra de menú, me apareciese la subpagina que hay dentro de esa. Por ejemplo, algo parecido a que si paso el ratón por encima de "Deportes", me apareciese "Futbol", "Tennis", etc.
Se que se hace algo con jquery/javascript, incluso que hay plugins que te lo hacen, pero he probado todos habidos y por haber y nada. He probado el Multi-level-navigation plugin, por ejemplo. Y nada...
Podéis ver un ejemplo claro en la web interclinico.com. Ya veréis como si pasáis por el menú y pasáis encima de "Áreas especificas", se os despliega un menú.
Esto es lo que tengo en el functions.php, os lo pongo a ver si podéis ver algo que destaque...
Código PHP:
Ver originalfunction art_header_page_list_filter($pages)
{
global $artThemeSettings;
art_process_front($pages);
$artThemeSettings['menu.topItemIDs'] = art_topIDs($pages);
$artThemeSettings['menu.activeID'] = art_activeID($pages);
$artThemeSettings['menu.blogID'] = art_blogID($pages);
if (!$artThemeSettings['menu.showSubmenus']) art_remove_subitems($pages);
return $pages;
}
function art_list_pages_filter($output)
{
global $artThemeSettings;
$pref ='page-item-';
if($artThemeSettings['menu.topItemIDs'])
foreach($artThemeSettings['menu.topItemIDs'] as $id){
$output = preg_replace('~<li class="([^"]*)\b(' . $pref . $id . ')\b([^"]*)"><a ([^>]+)>([^<]*)</a>~', '<li class="$1$2$3"><a $4>' . $artThemeSettings['menu.topItemBegin']
. '$5' . $artThemeSettings['menu.topItemEnd'] . '</a>', $output, 1);
}
$frontID = null;
$blogID = null;
if('page' == get_option('show_on_front')) {
$frontID = get_option('page_on_front');
$blogID = $artThemeSettings['menu.blogID'];
}
if ($frontID)
$output = preg_replace('~<li class="([^"]*)\b(' . $pref . $frontID . ')\b([^"]*)"><a href="([^"]*)" ~', '<li class="$1$2$3"><a href="'. get_option('home') .'" ', $output, 1);
if ((is_home() && $blogID) || $artThemeSettings['menu.activeID'])
$output = preg_replace('~<li class="([^"]*)\b(' . $pref . (is_home
() ?
$blogID : $artThemeSettings['menu.activeID']) . ')\b([^"]*)"><a ~', '<li class="$1$2$3"><a class="active" ', $output, 1);
return $output;
}
function art_menu_items() {
global $artThemeSettings;
if (true === $artThemeSettings['menu.showHome'] && 'page' != get_option('show_on_front'))
echo '<li><a' . (is_home() ? ' class="active"' : '') . ' href="' . get_option('home') . '">'.$artThemeSettings['menu.topItemBegin']
. $artThemeSettings['menu.homeCaption'] . $artThemeSettings['menu.topItemEnd'] . '</a></li>';
add_action('get_pages', 'art_header_page_list_filter');
add_action('wp_list_pages', 'art_list_pages_filter');
wp_list_pages('title_li=&child_of=$blogID');
remove_action('wp_list_pages', 'art_list_pages_filter');
remove_action('get_pages', 'art_header_page_list_filter');
}
Lo dicho, he probado de todo y nada... No pensé que fuera tan complicado :(
Estamos en contacto.
Saludos