Hi,
can you send me all of your errors to contact[@]wpadminui[.]net
+ give me the list of all your active plugins
+ how you get those errors
Many thanks!
Version 1.6.0 has the same problems:
flip() expects parameter 1 to be array, boolean given in /Users/Tom/Documents/Websites/www.menskracht7-copy.dev/wp-admin/includes/menu.php on line 273
Is this plugin tested in an activated state at all?
Hi,
I can’t reproduce the bug with a normal setup and totally clean, so need some infos:
What version of WordPress do you use?
PHP version?
Local or live site?
Plugins and themes used?
Just made a brand new WP 4.5.3. installation. No plugins, Twenty Sixteen theme. It just takes going to the Role Manager and activating everything for all roles. It’s in a local DesktopServer instance. PHP Version 5.5.24.
flip() expects parameter 1 to be array, boolean given in /Users/Tom/Documents/Websites/www.example.dev/wp-admin/includes/menu.php on line 273
Call Stack
# Time Memory Function Location
1 0.0027 362648 {main}( ) ../admin.php:0
2 0.3259 28716768 require( ‘/Users/Tom/Documents/Websites/www.example.dev/wp-admin/menu.php’ ) ../admin.php:138
3 0.3314 28826912 require_once( ‘/Users/Tom/Documents/Websites/www.example.dev/wp-admin/includes/menu.php’ ) ../menu.php:282
4 0.3429 28883424 array_flip ( ) ../menu.php:273
Did another install on a SiteGround server (PHP 5.6.23). Same setup otherwise, same errormessage: Warning: array_flip() expects parameter 1 to be array, boolean given in /home/blyxum90/domains/blanko.blyxum.net/wp-admin/includes/menu.php on line 273
Thank you for your feedback.
I found the error. It happens if nothing has been saved from the Admin Menu page of the plugin.
I’m working on a fix. Stay tuned!
Here is the fix (replace all the content of wp-admin-ui/inc/functions/options-admin-menu.php by this):
<?php
defined( 'ABSPATH' ) or die( 'Please don’t call the plugin directly. Thanks :)' );
//Admin menu
//=================================================================================================
//Hide menu page
if (array_key_exists( 'menu_structure', wpui_get_roles_cap($wpui_user_role))) {
function wpui_admin_menu_remove_pages(){
$wpui_admin_menu_option = get_option("wpui_admin_menu_option_name");
if ($wpui_admin_menu_option !='') {
$wpui_admin_menu_string_only = array_filter($wpui_admin_menu_option['wpui_admin_menu'], 'is_string');
if ( ! empty ( $wpui_admin_menu_option ) ) {
foreach ($wpui_admin_menu_string_only as $wpui_admin_menu_key => $wpui_admin_menu_value) {
remove_menu_page( $wpui_admin_menu_value );
}
}
$wpui_admin_menu_numeric_only = array_intersect_key($wpui_admin_menu_option['wpui_admin_menu'], array_flip(array_filter(array_keys($wpui_admin_menu_option['wpui_admin_menu']), 'is_numeric')));
foreach($wpui_admin_menu_numeric_only as $wpui_admin_menu_numeric_only_key=>$wpui_admin_menu_numeric_only_value){
foreach($wpui_admin_menu_numeric_only_value as $_wpui_admin_menu_numeric_only_key=>$_wpui_admin_menu_numeric_only_value){
foreach($_wpui_admin_menu_numeric_only_value as $__wpui_admin_menu_numeric_only_key=>$__wpui_admin_menu_numeric_only_value){
foreach($__wpui_admin_menu_numeric_only_value as $___wpui_admin_menu_numeric_only_key=>$___wpui_admin_menu_numeric_only_value){
remove_submenu_page( $_wpui_admin_menu_numeric_only_key, $___wpui_admin_menu_numeric_only_value);
}
}
}
}
}
}
add_action( 'admin_menu', 'wpui_admin_menu_remove_pages', 999 );
}
//Custom Admin Menu Order
if (array_key_exists( 'menu_structure', wpui_get_roles_cap($wpui_user_role))) {
if (get_option( 'wpui_admin_menu_slug' ) !='') {
function custom_menu_order() {
$wpui_admin_menu_custom_list = get_option( 'wpui_admin_menu_slug' );
return $wpui_admin_menu_custom_list;
}
add_filter( 'custom_menu_order', '__return_true', 999 );
add_filter( 'menu_order', 'custom_menu_order', 999 );
}
}
//All settings
if (array_key_exists( 'menu_all_settings', wpui_get_roles_cap($wpui_user_role))) {
function wpui_admin_menu_all_settings() {
$wpui_admin_menu_all_settings_option = get_option("wpui_admin_menu_option_name");
if ( ! empty ( $wpui_admin_menu_all_settings_option ) ) {
foreach ($wpui_admin_menu_all_settings_option as $key => $wpui_admin_menu_all_settings_value)
$options[$key] = $wpui_admin_menu_all_settings_value;
if (isset($wpui_admin_menu_all_settings_option['wpui_admin_menu_all_settings'])) {
return $wpui_admin_menu_all_settings_option['wpui_admin_menu_all_settings'];
}
}
};
if (wpui_admin_menu_all_settings() == '1') {
function wpui_admin_menu_all_settings_link() {
add_options_page(__('All Settings'), __('All Settings'), 'manage_options', 'options.php');
}
add_action('admin_menu', 'wpui_admin_menu_all_settings_link');
}
}
Now, if you have a clean install, you’ll not see the array_flip() error.
If it works for you (it’s the case for me), and after some others tests, I’ll include it in the next release.
Hi, I’ve tried it and that fixes it. For now, I’ll stay with Adminimize, though…
Thank you for your feedback, hope you’ll get back to our plugin one day 🙂