Ajouter des éléments de menu d'administration

Avec Fenekio CRM, vous avez la possibilité d'ajouter votre propre élément de menu dans la zone d'administration, que ce soit pour votre propre usage ou pour créer un module.

Le processus est très simple, vous devez suivre les étapes. L'ajout d'un nouvel élément est disponible via les crochets d'action Fenekio CRM intégrés.

Créez un fichier avec le nom my_functions_helper.php dans application/helpers/ et ajoutez le code suivant (incluez également la balise d'ouverture <?php si elle n'est pas déjà ajoutée) :

Version 2.3.0 ou supérieure

Élément du menu principal

hooks()->add_action('admin_init', 'my_custom_menu_admin_items');

function my_custom_menu_admin_items()
{
    $CI = &get_instance();

    $CI->app_menu->add_sidebar_menu_item('custom-menu-unique-id', [
        'name'     => 'Custom Menu Item', // The name if the item
        'href'     => 'https://Fenekio.com/', // URL of the item
        'position' => 10, // The menu position, see below for default positions.
        'icon'     => 'fa fa-question-circle', // Font awesome icon
    ]);
}

Élément avec éléments de sous-menu

hooks()->add_action('admin_init', 'my_custom_menu_item_collapsible');

function my_custom_menu_item_collapsible()
{
    $CI = &get_instance();

    $CI->app_menu->add_sidebar_menu_item('custom-menu-unique-id', [
        'name'     => 'Parent Item', // The name if the item
        'collapse' => true, // Indicates that this item will have submitems
        'position' => 10, // The menu position
        'icon'     => 'fa fa-question-circle', // Font awesome icon
    ]);

    // The first paremeter is the parent menu ID/Slug
    $CI->app_menu->add_sidebar_children_item('custom-menu-unique-id', [
        'slug'     => 'child-to-custom-menu-item', // Required ID/slug UNIQUE for the child menu
        'name'     => 'Sub Menu', // The name if the item
        'href'     => 'https://Fenekio.com/', // URL of the item
        'position' => 5, // The menu position
        'icon'     => 'fa fa-exclamation', // Font awesome icon
    ]);
}

Les éléments de menu par défaut ont des positions différentes, vous pouvez donc accrocher vos nouveaux éléments au milieu , trouver ci-dessous la position par défaut, en fonction de l'endroit où vous souhaitez ajouter votre élément personnalisé, vous pouvez ajuster l'attribut de position.

  • Tableau de bord – 1
  • Clients – 5
  • Ventes – 10
  • Abonnements – 15
  • Dépenses – 20
  • Contrats – 25
  • Projets – 30
  • Tâches – 35
  • Billets – 40
  • Pistes – 45
  • Base de connaissances – 50
  • Utilitaires – 55
  • Rapports – 60

Avant la version 2.3.0

Vous ne pouvez pas ajouter d'éléments de sous-menu sur des éléments de menu existants.

Éq. Après l'élément de menu Tableau de bord.

add_action('after_render_single_aside_menu', 'my_custom_menu_items'); function my_custom_menu_items($order)
{
    if ($order == 1) {
        echo '<li><a href="#">HRM App</a></li>';
    }
}
Éléments du menu d'administration client

Éq. Après l'élément de menu Clients, y compris l' icône Font Awesome

add_action('after_render_single_aside_menu', 'my_custom_menu_items'); function my_custom_menu_items($order)
{
    if ($order == 2) {
        echo '<li><a href="#"><i class="fa fa-area-chart menu-icon" aria-hidden="true"></i>Test</a></li>';
    }
}

Plusieurs éléments de menu

add_action('after_render_single_aside_menu', 'my_custom_menu_items'); function my_custom_menu_items($order)
{
    if ($order == 2) {
        echo '<li><a href="#"><i class="fa fa-area-chart menu-icon" aria-hidden="true"></i>My First Custom Item</a></li>';
        echo '<li><a href="#"><i class="fa fa-area-chart menu-icon" aria-hidden="true"></i>My Second Custom Item</a></li>';
    }
}

Nouvel élément de menu avec sous-éléments

add_action('after_render_single_aside_menu', 'my_custom_menu_items'); function my_custom_menu_items($order)
{
    if ($order == 1) {
        echo '<li>';
        echo '<a href="#" aria-expanded="false"><i class="fa fa-balance-scale menu-icon"></i>             My Custom Menu<span class="fa arrow"></span>             </a>';
        echo '<ul class="nav nav-second-level collapse" aria-expanded="false">                <li><a href="http://mydomain.com/url">Sub item</a></li>              </ul>';
        echo '</li>';
    }
}

Avec des conditions pour autorisations vérificateur d'accès

add_action('after_render_single_aside_menu', 'my_custom_menu_items'); function my_custom_menu_items($order)
{
    if ($order == 2) {
        if (has_permission('invoices', '', 'view')) {
            echo '<li><a href="#"><i class="fa fa-area-chart menu-icon" aria-hidden="true"></i>Custom Item</a></li>';
        }
    }
}

Avez-vous trouvé cet article utile ?