Создаем плагин, wp-content/plugins/best-plugin/best-plugin.php:
<?php
/**
* Plugin Name: Чумовой плагин
* Description: Это плагин, твердо и четко!
*/
if(!defined('ABSPATH')) {
exit;
}
class Best_Plugin {
protected $menu_slug = 'best-plugin';
public function __construct() {
// добавление страницы с пунктом меню
add_action('admin_menu', [$this, 'add_admin_page']);
// добавление ссылки на настройки плагина в списке плагинов
add_filter(
'plugin_action_links_' . plugin_basename(__FILE__),
[$this, 'add_settings_link']
);
}
// страница, любое содержимое страницы, обычно это винегрет из html/js/php
public function add_page() {}
// добавление страницы с пунктом меню
public function add_admin_page() {
add_options_page(
'Страница чумового плагина',
'Чумовой плагин',
'manage_options',
$this->menu_slug,
[$this, 'add_page'],
1
);
}
// добавление ссылки на настройки в списке плагинов
public function add_settings_link($links) {
$settings_link = "<a href=\"options-general.php?page={$this->menu_slug}\">Настройки чумового плагина</a>";
array_unshift($links, $settings_link);
return $links;
}
}
new Best_Plugin();