# ivyforms/0.3/backend/src/Services/Menu/MenuMapper.php

The Innovative Form Builder – IvyForms, version 0.3. 84 lines.

- Page: https://pluginprobe.com/plugins/ivyforms/0.3/code/backend/src/Services/Menu/MenuMapper.php
- Raw: https://pluginprobe.com/plugins/ivyforms/0.3/raw/backend/src/Services/Menu/MenuMapper.php
- Modified: 2025-08-20T10:20:12+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/ivyforms/0.3/code/backend/src/Services/Menu/MenuMapper.php#L10-L20`.

```php
<?php

namespace IvyForms\Services\Menu;

// phpcs:disable PSR1.Files.SideEffects
if (!defined('ABSPATH')) {
    exit; // Exit if accessed directly
}

use IvyForms\Services\Translations\BackendStrings;

/**
 * Class Menu
 */
class MenuMapper
{
    /**
     * @return mixed[]
     */
    public function __invoke(): array
    {
        return
            [
//                [
//                    'parentSlug' => 'ivyforms',
//                    'pageTitle'  => 'Dashboard',
//                    'menuTitle'  => BackendStrings::getDashboardStrings()['dashboard'],
//                    // TODO - Add IvyForms capability
//                    'capability' => 'read',
//                    'menuSlug'   => 'ivyforms-dashboard',
//                ],
                [
                    'parentSlug' => 'ivyforms',
                    'pageTitle'  => 'All Forms',
                    'menuTitle'  => BackendStrings::getCommonStrings()['all_forms'],
                    // TODO - Add IvyForms capability
                    'capability' => 'read',
                    'menuSlug'   => 'ivyforms-forms',
                ],
                [
                    'parentSlug' => 'ivyforms',
                    'pageTitle'  => 'New form',
                    'menuTitle'  => BackendStrings::getCommonStrings()['new_form'],
                    // TODO - Add IvyForms capability
                    'capability' => 'read',
                    'menuSlug'   => 'ivyforms-builder',
                ],
                [
                    'parentSlug' => 'ivyforms',
                    'pageTitle'  => 'Entries',
                    'menuTitle'  => BackendStrings::getEntriesStrings()['entries'],
                    // TODO -  Add IvyForms capability
                    'capability' => 'read',
                    'menuSlug'   => 'ivyforms-entries',
                ],
//                    // TODO Add Settings page
                [
                    'parentSlug' => 'ivyforms',
                    'pageTitle'  => 'Settings',
                    'menuTitle'  => BackendStrings::getCommonStrings()['settings'],
                    // TODO - Add IvyForms capability
                    'capability' => 'read',
                    'menuSlug'   => 'ivyforms-settings',
                ],
//                [
//                    'parentSlug' => 'ivyforms',
//                    'pageTitle'  => 'Integrations',
//                    'menuTitle'  => BackendStrings::getIntegrationsStrings()['integrations'],
//                    // TODO - Add IvyForms capability
//                    'capability' => 'read',
//                    'menuSlug'   => 'ivyforms-integrations',
//                ],

//                [
//                    'parentSlug' => 'ivyforms',
//                    'pageTitle'  => 'Testing',
//                    'menuTitle'  => 'Testing',
//                    'capability' => 'read',
//                    'menuSlug'   => 'ivyforms-testing',
//                ],
            ];
    }
}

```
