# code-snippets/trunk/php/Admin/Menus/Insights/Insights_Menu.php

Code Snippets, version trunk. 79 lines.

- Page: https://pluginprobe.com/plugins/code-snippets/trunk/code/php/Admin/Menus/Insights/Insights_Menu.php
- Raw: https://pluginprobe.com/plugins/code-snippets/trunk/raw/php/Admin/Menus/Insights/Insights_Menu.php
- Modified: 2026-09-22T07:42:04+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/code-snippets/trunk/code/php/Admin/Menus/Insights/Insights_Menu.php#L10-L20`.

```php
<?php

namespace Code_Snippets\Admin\Menus\Insights;

use Code_Snippets\Admin\Contextual_Help;
use Code_Snippets\Admin\Menus\Admin_Menu;
use function Code_Snippets\code_snippets;
use const Code_Snippets\PLUGIN_FILE;
use const Code_Snippets\PLUGIN_VERSION;

/**
 * Provides the Insights admin menu.
 */
class Insights_Menu extends Admin_Menu {

	/**
	 * Handle for the Insights script and stylesheet.
	 */
	private const ASSET_HANDLE = 'code-snippets-insights';

	/**
	 * Class constructor.
	 */
	public function __construct() {
		parent::__construct(
			'insights',
			_x( 'Insights', 'menu label', 'code-snippets' ),
			__( 'Snippet Insights', 'code-snippets' )
		);
	}

	/**
	 * Render the Insights interface.
	 *
	 * @return void
	 */
	public function render() {
		echo '<div id="code-snippets-insights-container" class="wrap"></div>';
	}

	/**
	 * Load the contextual help tabs.
	 *
	 * @return void
	 */
	public function load() {
		parent::load();

		$contextual_help = new Contextual_Help( 'insights' );
		$contextual_help->load();
	}

	/**
	 * Enqueue Insights assets and localized runtime data.
	 *
	 * @return void
	 */
	public function enqueue_assets() {
		wp_enqueue_style(
			self::ASSET_HANDLE,
			plugins_url( 'dist/insights.css', PLUGIN_FILE ),
			self::$style_deps,
			PLUGIN_VERSION
		);

		wp_enqueue_script(
			self::ASSET_HANDLE,
			plugins_url( 'dist/insights.js', PLUGIN_FILE ),
			self::$script_deps,
			PLUGIN_VERSION,
			true
		);

		wp_set_script_translations( self::ASSET_HANDLE, 'code-snippets' );
		code_snippets()->localize_script( self::ASSET_HANDLE );
		wp_localize_script( self::ASSET_HANDLE, 'CODE_SNIPPETS_INSIGHTS', ( new Insights_Summary() )->get() );
	}
}

```
