webForum webForum sponsras med lina och serverplats av Binero AB

Gå tillbaka   webForum > Utveckling > Webbutveckling > HTML, XHTML & CSS

HTML, XHTML & CSS Forum för diskussioner/frågor kring XHTML, HTML och CSS.

Svar
 
Trådverktyg Visningsalternativ
Äldre 2012-05-14, 08:55   #1
xtreme
Medlem
 
xtremes avatar
 
Registrerad: 2000-07-02
Inlägg: 2 050
Lösningar: 4
Wordpressmeny i en drop-down?

Jag har följande kod i Wordpress som genererar en horisontell meny

HTML-kod:
   <? php wp_nav_menu (array ('theme_location' => 'header-menu'));?>
Eftersom sidan ska vara mobilvänlig vill jag att menyn ska vara i form av en drop-down i stället.

Har provat lite olika varianter men får det inte att fungera. Problemet är vad jag ska ska ha i option value="".


HTML-kod:
    <select name="blog-dropdown" onChange='document.location.href=this.options[this.selectedIndex].value;'>
        		<option value="<?php bloginfo('home') ?>">Hem</option>
						<option value="" <?php wp_nav_menu( array( 'theme_location' => 'header-menu' ) ); ?></option>  /* Den här är problemet */
    </select>

Jag får fram länknamnet i listan men inget händer när jag väljer det.
__________________
http://www.galnanyheter.com/ - Galna nyheter utöver det vanliga

Skaffa Dropbox - Ett självklart val för att synkronisera filer mellan datorerna samt telefonen.
xtreme besöker inte forumet just nu   Svara med citat
Äldre 2012-05-22, 00:53   #2
Nate.A
Medlem
 
Nate.As avatar
 
Registrerad: 2006-03-15
Ort: Gävle
Inlägg: 246
Lösningar: 24
Hej!

Jag tror man gör det bäst med en "Custom Walker" class.

ex.
selectmenu_walker.class.php
PHP-kod:
class selectmenu_walker extends Walker
{
   
/**
     * @see Walker::$tree_type
     * @var string
     */
    
var $tree_type = array( 'post_type''taxonomy''custom' );

    
/**
     * @see Walker::$db_fields
     * @var array
     */
    
var $db_fields = array( 'parent' => 'menu_item_parent''id' => 'db_id' );


    function 
start_el(&$output$item$depth$args)
    {
        
        
$classes = empty( $item->classes ) ? array() : (array) $item->classes;
        
$selected in_array('current-menu-item'$classes) ? "selected" "";
        
$indent = ( $depth ) ? str_repeat"-"$depth ) : '';

        
$output .=  '<option ' $selected ' value="' .  esc_attr$item->url ) . '">' $indent esc_attr$item->title ) .'</option>';

    }

I din template fil
PHP-kod:
            include('din_sokvag/selectmenu_walker.class.php');
            
wp_nav_menu( array( 
                
'container' => 'none'
                
'theme_location' => 'primary',
                
'walker'=> new selectmenu_walker,
                
'items_wrap' => '<select id="selectnav-%1$s" class="%2$s">%3$s</select>' ) ); 
Nate.A besöker forumet just nu   Svara med citat
Svar
webForum > Utveckling > Webbutveckling > HTML, XHTML & CSS

Trådverktyg
Visningsalternativ

Forumregler
Du får inte posta nya trådar
Du får inte posta svar
Du får inte bifoga filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är av
HTML-kod är av

Forumhopp


Alla tider är i GMT +1. Klockan är nu 18:52.


Powered by: vBulletin Version 3.8.6
Copyright © webForum