JReviews logo Docs
Menu
Version

jreviews-cp:addons_navigation

Filter the navigation entries shown under the **Addons** section of the JReviews administration sidebar. Add-ons append entries describing their own admin pages so they appear in the sidebar.

Filter
Admin Sidebar
Since 6.0.0

You need to have a working knowledge of Hooks before you get started.

Fires once when the JReviews CP sidebar is mounted, while the Addons section is being built.

Parameters

Name Type Description
$links array Empty array of addon navigation entries. Each entry is an associative array with at least `type`, `label`, and `do` keys, plus an optional `children` array of sub-entries.

Boilerplate Code

Use the boilerplate code to start using the filter, and add your own logic to modify the first argument and return it.

fwd_add_filter('jreviews-cp:addons_navigation', function($links)
{
    // Your code here
    
    return $links;
});

The , 20, N after your callback are the hook priority and the number of arguments your callback accepts. By default, a hook passes your callback only its first argument; for a filter, that is the value being filtered, so a simple function($value) { ... } needs nothing extra. If your callback declares more parameters, such as function($value, $listing) { ... }, you must add N (the parameter count, 2 here). Because N is the fourth argument to fwd_add_filter() or fwd_add_action(), you must also pass the priority (20 is the default). Leaving these off when your callback expects extra parameters causes a Too few arguments to function ... fatal error.

Development & Support
Customizations are not included with support. We provide this information to make it easier for developers to extend the functionality. From time to time we may have some availability for custom work. Get in touch to see if there's an opportunity to work together.

Examples

Register a top-level addon entry with sub-pages

Add a top-level entry for your add-on with several nested admin pages, mirroring how the Maps add-on does it.

\FWDHook::addFilter('jreviews-cp:addons_navigation', function ($links) {
    $links[] = [
        'type'  => 'route',
        'label' => 'Maps',
        'do'    => 'maps-cp::pages.providers',
        'children' => [
            ['type' => 'route', 'label' => 'Service Providers', 'do' => 'maps-cp::pages.providers'],
            ['type' => 'route', 'label' => 'Configuration',     'do' => 'maps-cp::pages.configuration'],
            ['type' => 'route', 'label' => 'Batch Geocoding',   'do' => 'maps-cp::pages.batch-geocoding'],
        ],
    ];

    return $links;
});

Source Files

  • app/Http/CP/Yoyo/PrimarySidebar.php