php - 如何重命名 wordpress 插件的菜单标签?
问题描述
我正在尝试在 wordpress 管理菜单中重命名插件标签。重命名后,插件不再起作用。
改名前:
function bookacti_create_menu() {
// Add a menu and submenus
$icon_url = 'dashicons-calendar-alt';
add_menu_page( __( 'Booking Activities', BOOKACTI_PLUGIN_NAME ), _x( 'Booking Activities', 'Name of the tab in the menu', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_booking_activities', 'booking-activities', null, $icon_url, '56.5' );
add_submenu_page( 'booking-activities', _x( 'Booking Activities', 'Landing page title', BOOKACTI_PLUGIN_NAME ), _x( 'Home', 'Landing page tab name', BOOKACTI_PLUGIN_NAME ),'bookacti_manage_booking_activities', 'booking-activities', 'bookacti_landing_page' );
add_submenu_page( 'booking-activities', __( 'Calendar editor', BOOKACTI_PLUGIN_NAME ), __( 'Calendar editor', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_templates', 'bookacti_calendars', 'bookacti_templates_page' );
add_submenu_page( 'booking-activities', __( 'Booking forms', BOOKACTI_PLUGIN_NAME ), __( 'Booking forms', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_forms', 'bookacti_forms', 'bookacti_forms_page' );
add_submenu_page( 'booking-activities', __( 'Bookings', BOOKACTI_PLUGIN_NAME ), __( 'Bookings', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_bookings', 'bookacti_bookings', 'bookacti_bookings_page' );
add_submenu_page( 'booking-activities', __( 'Settings', BOOKACTI_PLUGIN_NAME ), __( 'Settings', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_booking_activities_settings', 'bookacti_settings', 'bookacti_settings_page' );
}
add_action( 'admin_menu', 'bookacti_create_menu' );
改名后:
function bookacti_create_menu() {
// Add a menu and submenus
$icon_url = 'dashicons-calendar-alt';
add_menu_page( __( 'Testname', BOOKACTI_PLUGIN_NAME ), _x( 'Testname', 'Name of the tab in the menu', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_booking_activities', 'booking-activities', null, $icon_url, '56.5' );
add_submenu_page( 'booking-activities', _x( 'Booking Activities', 'Landing page title', BOOKACTI_PLUGIN_NAME ), _x( 'Home', 'Landing page tab name', BOOKACTI_PLUGIN_NAME ),'bookacti_manage_booking_activities', 'booking-activities', 'bookacti_landing_page' );
add_submenu_page( 'booking-activities', __( 'Calendar editor', BOOKACTI_PLUGIN_NAME ), __( 'Calendar editor', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_templates', 'bookacti_calendars', 'bookacti_templates_page' );
add_submenu_page( 'booking-activities', __( 'Booking forms', BOOKACTI_PLUGIN_NAME ), __( 'Booking forms', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_forms', 'bookacti_forms', 'bookacti_forms_page' );
add_submenu_page( 'booking-activities', __( 'Bookings', BOOKACTI_PLUGIN_NAME ), __( 'Bookings', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_bookings', 'bookacti_bookings', 'bookacti_bookings_page' );
add_submenu_page( 'booking-activities', __( 'Settings', BOOKACTI_PLUGIN_NAME ), __( 'Settings', BOOKACTI_PLUGIN_NAME ), 'bookacti_manage_booking_activities_settings', 'bookacti_settings', 'bookacti_settings_page' );
}
add_action( 'admin_menu', 'bookacti_create_menu' );
我在日志中找不到任何有用的东西。
你可以在这里找到完整的文件:https ://github.com/bookingactivities/booking-activities/blob/master/booking-activities.php
解决方案
您可以尝试将此添加到您的functions.php文件中吗
function kl_rename_plugin_menus() {
global $menu;
// Define your changes here
$updates = array(
"bookacti_manage_booking_activities" => array(
'name' => 'Testname',
'icon' => 'dashicons-lock'
)
);
foreach ( $menu as $k => $props ) {
// Check for new values
$new_values = ( isset( $updates[ $props[0] ] ) ) ? $updates[ $props[0] ] : false;
if ( ! $new_values ) continue;
// Change menu name
$menu[$k][0] = $new_values['name'];
// Optionally change menu icon
if ( isset( $new_values['icon'] ) )
$menu[$k][6] = $new_values['icon'];
}
}
add_action( 'admin_init', 'kl_rename_plugin_menus' );
推荐阅读
- excel - 如何在 React js 中下载时增加 Excel 工作表的列宽?,我正在使用一个名为“export-from-json”的包
- css - `text-align: justify` 是否均匀拉伸所有空白字符?
- javascript - 使用“document.querySelector”查找元素后,“单击”功能在 typescript/angular 中不起作用
- php - 如何通过 Api-Platform 中的链接属性过滤结果?
- security - 如何管理环境变量和秘密?
- python - 从控制台启动 Blender 时无法在 python 脚本中选择一个框
- admob - 刷新原生广告
- python - Pytorch:AttributeError:'function'对象没有属性'cuda'
- javascript - 从外部应用程序重定向到 Angular 内部路由
- apache - 本地主机不显示传入的 https