Non affichage d’un sous-menu de niveau 2 (Créer un compte)

  • WordPress :4.7
  • Statut : non résolu
6 sujets de 1 à 6 (sur un total de 6)
  • Auteur
    Messages
  • #1616175
    vbdeco
    Participant
    Chevalier WordPress
    156 contributions

    Bonjour,

    Ma configuration WP actuelle

    • Version de PHP/MySQL :
    • Thème utilisé : Nisarg (version: 1.2.6)
    • Extensions en place :
    • Nom de l’hébergeur : OVH
    • Adresse du site : En cours de développement

    Problème(s) rencontré(s) : Affichage sous-menu niveau 2

    J’ai créé un sous menu de niveau 2 mais il n’apparait pas dans ma page. Lorsque je fais un clic droit et que je regarde le code source de ma page, il n’y est pas. Pourtant le sous-menu du niveau au-dessus change de class pour devenir « dropdown », ce qui laisse supposer qu’il sait qu’il y a un sous-menu après.

    Savez-vous où est-ce qu’il faudrait que je cherche ? Est-ce que ça peut venir du thème qui n’accepterait tout simplement pas ces niveaux là ?

    Merci.

    #1616336
    PhiLyon
    Modérateur
    Maître WordPress
    28248 contributions

    Bonsoir.

    L’auteur du thème a répondu ça dans le support

    Regarding your question, currently the theme supports only two levels in the menu. I will add more menu levels support in the next version of the theme.
    It is not possible to change by just changing css

    Donc à moins de modifier le code du thème, c’est foutu.

    🙂

    #1616388
    vbdeco
    Participant
    Chevalier WordPress
    156 contributions

    Bonjour,

    C’est un peu ce que je redoutais. En plus, le forum de support du thème ne semble pas très actif.

    Pour modifier le code, il faudrait chercher vers quel fichier (si ce n’est pas trop compliqué à modifier) ?

    Merci.

    #1616415
    PhiLyon
    Modérateur
    Maître WordPress
    28248 contributions

    Bonjour.

    Dans nisarg/inc/extras.php j’ai modifié le code ci-dessous à depth (j’ai mis 4) et ça a l’air de fonctionner (peut-être un peu de CSS à modifier)

    if ( ! function_exists( 'nisarg_header_menu' ) ) :
    /**
    * Header menu (should you choose to use one)
    */
    function nisarg_header_menu() {
    // display the WordPress Custom Menu if available
    wp_nav_menu(array(
    'theme_location' => 'primary',
    'depth' => 4,
    'container' => 'div',
    'container_class' => 'collapse navbar-collapse navbar-ex1-collapse',
    'menu_class' => 'nav navbar-nav',
    'fallback_cb' => 'wp_bootstrap_navwalker::fallback',
    'walker' => new wp_bootstrap_navwalker()
    ));
    } /* end header menu */
    endif;



    /**
    * Adds the URL to the top level navigation menu item
    */
    function nisarg_add_top_level_menu_url( $atts, $item, $args ){
    if ( isset($args->has_children) && $args->has_children ) {
    $atts['href'] = ! empty( $item->url ) ? $item->url : '';
    }
    return $atts;
    }
    add_filter( 'nav_menu_link_attributes', 'nisarg_add_top_level_menu_url', 99, 3 );

    🙂

    #1616436
    vbdeco
    Participant
    Chevalier WordPress
    156 contributions

    Merci, ça marche. Par contre, à la prochaine mise à jour du thème, je vais perdre cette modif ?

    #1616467
    PhiLyon
    Modérateur
    Maître WordPress
    28248 contributions

    Crées un thème enfant et colles la première partie du code dans functions.php

    if ( ! function_exists( 'nisarg_header_menu' ) ) :
    /**
    * Header menu (should you choose to use one)
    */
    function nisarg_header_menu() {
    // display the WordPress Custom Menu if available
    wp_nav_menu(array(
    'theme_location' => 'primary',
    'depth' => 4,
    'container' => 'div',
    'container_class' => 'collapse navbar-collapse navbar-ex1-collapse',
    'menu_class' => 'nav navbar-nav',
    'fallback_cb' => 'wp_bootstrap_navwalker::fallback',
    'walker' => new wp_bootstrap_navwalker()
    ));
    } /* end header menu */
    endif;

    🙂

6 sujets de 1 à 6 (sur un total de 6)
  • Vous devez être connecté pour répondre à ce sujet.