Afficher un nouveau "bouton" dans le menu du haut

6 posts in this topic

Posted · Report post

Bonjour,

Je souhaite rajouter un bouton dans la barre de menu du haut du site pointant vers une rubrique.

J'ai rajouté dans/lib/lang/fr.php cette nouvelle définition :

define("LIENS", "liens");

J'ai rajouté dans /lib/fonction/display.php cette ligne dans get_menu() :

$main_menu_items['liens'] = array($GLOBALS['wwwroot'] . '/lire/index.php?rubid=1' => LIENS);

Mais malgré cela le nouveau bouton ne s'affiche pas dans ma barre de menu.

Que faire ?

Qu'ai-je oublié ?

Merci d'avance de votre aide, toujours efficace !

Claire

Share this post


: post
Share on other sites

Posted · Report post

Bonjour Lilouetpuce,

Votre ajout devrait fonctionner ...

Pouvez vous faire un copier/coller de votre fonction get_menu() svp ?

Share this post


: post
Share on other sites

Posted · Report post

La voilà :

if (!function_exists('get_menu')) {

/**

* get_admin_menu()

*

* @return

*/

function get_menu()

{

$main_menu_items['home'] = array($GLOBALS['wwwroot'] . '/' => HOME);

$main_menu_items['catalog'] = array($GLOBALS['wwwroot'] . '/achat/' => CATALOGUE);

$main_menu_items['news'] = array($GLOBALS['wwwroot'] . '/achat/nouveautes.php' => NOUVEAUTES);

$main_menu_items['promotions'] = array($GLOBALS['wwwroot'] . '/achat/promotions.php' => DO_NOT_MISS);

if (is_module_gift_checks_active()) {

$main_menu_items['check'] = array($GLOBALS['wwwroot'] . '/modules/gift_check/cheques.php' => CHEQUE_CADEAU);

}

if (est_identifie()) {

$main_menu_items['account'] = array($GLOBALS['wwwroot'] . '/compte.php' => COMPTE);

$menu_items['account'][$GLOBALS['wwwroot'] . '/achat/historique_commandes.php'] = ORDER_HISTORY;

$menu_items['account'][$GLOBALS['wwwroot'] . '/utilisateurs/change_mot_passe.php'] = CHANGE_PASSWORD;

$menu_items['account'][$GLOBALS['wwwroot'] . '/utilisateurs/change_params.php'] = CHANGE_PARAMS;

$menu_items['account'][$GLOBALS['wwwroot'] . '/sortie.php'] = LOGOUT;

} else {

$main_menu_items['account'] = array($GLOBALS['wwwroot'] . '/membre.php' => COMPTE);

}

$main_menu_items['contact'] = array($GLOBALS['wwwroot'] . '/utilisateurs/contact.php' => CONTACT);

if (est_identifie() && (a_priv('admin') || a_priv('demo'))) {

$main_menu_items['admin'] = array($GLOBALS['administrer_url'] . '/index.php' => ADMIN);

}

$menu_items['promotions'][$GLOBALS['wwwroot'] . '/achat/promotions.php'] = PROMOTIONS;

$menu_items['promotions'][$GLOBALS['wwwroot'] . '/modules/flash/flash.php'] = FLASH;

$main_menu_items['liens'] = array($GLOBALS['wwwroot'] . '/lire/index.php?rubid=1' => LIENS);

$sql = 'SELECT c.id, c.nom_' . $_SESSION['session_langue'] . ' AS categorie, c.image_' . $_SESSION['session_langue'] . ' AS image

FROM peel_categories c

WHERE c.etat = "1" AND c.parent_id="0"

ORDER BY c.position ASC, categorie ASC';

$qid = query($sql);

while ($cat = fetch_assoc($qid)) {

$menu_items['catalog'][get_product_category_url($cat['id'], $cat['categorie'])] = $cat['categorie'];

}

$current_url = get_current_url(false);

$current_url_full = get_current_url(true);

$output = '

<div class="main_menu_wide">

<div class="main_menu">

<ul id="menu1">

';

foreach($main_menu_items as $this_main_item => $this_main_array) {

$current_menu = (!empty($menu_items[$this_main_item][$current_url_full]));

$full_match = true;

if ($current_menu === false && !empty($menu_items[$this_main_item])) {

$current_menu = (!empty($menu_items[$this_main_item][$current_url]));

$full_match = false;

}

foreach($this_main_array as $this_main_url => $this_main_title) {

if ($current_menu !== false || !empty($this_main_array[$current_url]) || !empty($this_main_array[$current_url_full])) {

$main_class = ' class="current"';

} else {

$main_class = '';

}

if ($this_main_item == 'home') {

$this_main_text = '<a href="' . htmlspecialchars($this_main_url) . '"' . $main_class . '><img src="' . $GLOBALS['wwwroot'] . '/images/home.png" alt="" style="padding: 0px 6px 0px 4px;" /></a>';

} else {

if (!empty($this_main_url) && !is_numeric($this_main_url)) {

$this_main_text = '<a href="' . htmlspecialchars($this_main_url) . '"' . $main_class . '>' . $this_main_title . '</a>';

} else {

$this_main_text = '<span>' . $this_main_title . '</span>';

}

}

if (!empty($menu_items[$this_main_item])) {

$this_main_text .= '

<ul class="sousMenu">

';

foreach($menu_items[$this_main_item] as $this_url => $this_title) {

if (($current_url == $this_url && !$full_match) || $current_url_full == $this_url) {

$class = ' class="current"';

} else {

$class = '';

}

if (!empty($this_url) && !is_numeric($this_url)) {

$this_text = '<a href="' . htmlspecialchars($this_url) . '"' . $class . '>' . $this_title . '</a>';

} else {

$this_text = '<span' . $main_class . '>' . $this_title . '</span>';

}

$this_main_text .= '<li>' . $this_text . '</li>';

}

$this_main_text .= '

</ul>';

}

$output .= '

<li class="menu_main_item menu_' . $this_main_item . '">' . $this_main_text . '</li>

';

}

}

$output .= '

</ul>

</div>

</div>

';

return $output;

}

}

Share this post


: post
Share on other sites

Posted · Report post

J'ai remplacé la fonction get_menu() de la 6.2 par votre fonction, et le menu 'lien' s'est affiché.

Je suppose donc que la fonction que vous modifiez n'est pas utilisée. Avez vous redéfini la fonction get_menu() ailleurs dans le code? Je vous invite à rechercher toutes les occurrences de PEEL de get_menu dans votre code et de me transmettre les résultats.

Simon.

Share this post


: post
Share on other sites

Posted · Report post

Mais c'est bien sûr !!

J'avais oublié que j'avais un display_custom dans mon kit graphique.

Le problème est résolu.

Merci encore de votre aide toujours rapide et précise !

Vive Peel... Et ses développeurs.

Claire

Share this post


: post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

Twitter Advisto ecommerce

Facebook PEEL Shopping