# yaymail/4.4.1/vendor-prefixed/src/Contracts/PluginMenuAdapter.php

YayMail – WooCommerce Email Customizer, version 4.4.1. 55 lines.

- Page: https://pluginprobe.com/plugins/yaymail/4.4.1/code/vendor-prefixed/src/Contracts/PluginMenuAdapter.php
- Raw: https://pluginprobe.com/plugins/yaymail/4.4.1/raw/vendor-prefixed/src/Contracts/PluginMenuAdapter.php
- Modified: 2026-05-21T15:42:52+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/yaymail/4.4.1/code/vendor-prefixed/src/Contracts/PluginMenuAdapter.php#L10-L20`.

```php
<?php

namespace YayMailScoped\YayCommerce\AdminShell\Contracts;

/**
 * Minimal per-plugin config for menu registration.
 * All plugins (lite + pro) implement this.
 * Pro plugins implement LicenseConfigAdapter which extends this.
 */
interface PluginMenuAdapter
{
    /**
     * Short name for the admin sidebar submenu item, e.g. 'YayMail'.
     */
    public function get_menu_title() : string;
    /**
     * Browser tab title for the settings page, e.g. 'YayMail Pro - Settings'.
     */
    public function get_page_title() : string;
    /**
     * Menu slug under YayCommerce, e.g. 'yaymail-settings'.
     * Return empty string if plugin has no settings page.
     */
    public function get_menu_slug() : string;
    /**
     * Render callback for the settings page.
     * Return null to redirect to the Licenses page (pro) or show nothing (lite).
     */
    public function get_settings_page_callback() : ?callable;
    /**
     * Position of the plugin submenu. Return null for WP default ordering.
     */
    public function get_settings_page_position() : ?int;
    /**
     * WP capability required. Default: 'manage_options'.
     */
    public function get_capability() : string;
    /**
     * WP plugin basename, e.g. 'yaymail-pro/yaymail.php'.
     */
    public function get_plugin_basename() : string;
    /**
     * Label for the settings action link on the Plugins page.
     */
    public function get_settings_label() : string;
    /**
     * Documentation URL. Return empty string to hide the link.
     */
    public function get_docs_url() : string;
    /**
     * "Go Pro" upgrade URL (for lite plugins). Return empty string to hide.
     */
    public function get_pro_url() : string;
}

```
