web-dev-qa-db-fra.com

Utilisez wp_nav_menu pour afficher TOUTES les pages.

Je suis en train de construire un thème wordpress. Pour le menu, je veux juste afficher toutes les pages qui sont créées dans l’ordre dans lequel elles ont été créées (c’est-à-dire que je ne veux pas que les utilisateurs soient obligés d’aller dans la section "menu" du site et de créer leurs propres sites).

J'ai essayé d'utiliser wp_page_menu et cela a fonctionné MAIS j'ai besoin d'ajouter une classe de randonneur pour développer la fonctionnalité, ce que vous ne pouvez pas faire avec cette fonction. J'ai donc besoin d'un moyen d'afficher toutes mes pages avec wp_nav_menu comme code - y a-t-il un moyen de le faire?

Voici mon code actuellement:

<nav id="nav">
    <?php wp_nav_menu( array( 'walker' => new Clapton_Nav_Walker ) ); ?>
</nav>
1
Sam Skirrow

Vous pouvez vous éloigner complètement de wp_nav_menu() et utiliser plutôt wp_list_pages().

Voir le codex pour plus d'informations, mais je pense que c'est peut-être ce que vous recherchez.

http://codex.wordpress.org/Function_Reference/wp_list_pages

Je comprends que cette fonction affiche les pages. Ce que j’essayais de dire, c’est que vous pouvez l’utiliser conjointement avec CSS pour obtenir l’apparence d’un menu. J'ai créé un exemple de page contenant ce code:

    <?php
/*
* Template Name: Testing
*/
    ?>
    <link rel="stylesheet" type="text/css" href="http://nickyoungweb.com/Zip/wp-content/themes/THS2012/style.css" />
    <nav id="nav">
         <?php
            wp_list_pages( array(
                'title_li' => ''
            ));
         ?>
       <br style="clear: both; ">
    </nav>

Je l'ai lié à une feuille de style qui contient ce code:

    /**** WP LIST PAGES NAV *****/
    nav {  }
    nav li { list-style-type: none; float: left; }
    nav li a { width: 50px; height: 30px; background: #000; color: #fff; padding: 10px; margin: 2px; }
    nav li a:hover { background: #f00; color: #000; }
    nav ul li { display: none; }

C'est un exemple très simple de la façon dont vous pourriez le faire fonctionner avec cette fonction.

J'espère que cela aidera à dissiper toute confusion que je pourrais vous avoir causée et vous donnera également une idée de la façon dont cela peut être fait avec cette fonction.

3
Nick Young