Meta Box AIO requires Meta Box to work. Please install and activate it.
Support › Meta Box AIO › Meta Box AIO requires Meta Box to work. Please install and activate it.Resolved
- This topic has 4 replies, 3 voices, and was last updated 3 years, 9 months ago by
MaxM.
-
AuthorPosts
-
April 7, 2021 at 11:57 PM #27031
Maxim Gladines
ParticipantI'm managed my site through bedrock and use composer to manage plugins. The Meta box AIO and meta box plugins are autoloaded as mu-plugins. It looks like both are installed correctly. However, I keep getting the notification "Meta Box AIO requires Meta Box to work. Please install and activate it." Any thoughts?
April 8, 2021 at 10:00 AM #27045Long Nguyen
ModeratorHi Maxim,
Please follow this documentation to know how to install Meta Box and other extensions via Composer https://docs.metabox.io/extensions/composer/.
Let me know if the message still appears.
April 8, 2021 at 4:46 PM #27051Maxim Gladines
ParticipantHi, thanks for ther reply.
I'm pretty confident I did it correctly - have a look at my screen hereComposer file below (removed my API key)
<div>
{
"name": "roots/bedrock",
"type": "project",
"license": "MIT",
"description": "WordPress boilerplate with modern development tools, easier configuration, and an improved folder structure",
"homepage": "https://roots.io/bedrock/",
"authors": [
{
"name": "Scott Walkinshaw",
"email": "[email protected]",
"homepage": "https://github.com/swalkinshaw"
},
{
"name": "Ben Word",
"email": "[email protected]",
"homepage": "https://github.com/retlehs"
}
],
"keywords": [
"bedrock", "composer", "roots", "wordpress", "wp", "wp-config"
],
"support": {
"issues": "https://github.com/roots/bedrock/issues",
"forum": "https://discourse.roots.io/category/bedrock"
},
"repositories": [
{
"type": "composer",
"url": "https://wpackagist.org",
"only": ["wpackagist-plugin/", "wpackagist-theme/"]
},{
"type": "composer",
"url": "https://packages.metabox.io/XXX"
}
],
"require": {
"php": ">=7.1",
"composer/installers": "^1.10",
"vlucas/phpdotenv": "^5.3",
"oscarotero/env": "^2.1",
"roots/bedrock-autoloader": "^1.0",
"roots/wordpress": "5.7",
"roots/wp-config": "1.0.0",
"roots/wp-password-bcrypt": "1.0.0",
"wpackagist-plugin/meta-box": "dev-trunk",
"meta-box/meta-box-aio": "dev-master",
"wpackagist-plugin/activecampaign-subscription-forms":"dev-trunk",
"yoast/wordpress-seo": "dev-master"
},
"require-dev": {
"squizlabs/php_codesniffer": "^3.5.8",
"roave/security-advisories": "dev-master"
},
"config": {
"optimize-autoloader": true,
"preferred-install": "dist"
},
"minimum-stability": "dev",
"prefer-stable": true,
"extra": {
"installer-paths": {
"web/app/mu-plugins/{$name}/": ["type:wordpress-muplugin", "wpackagist-plugin/meta-box", "meta-box/meta-box-aio"],
"web/app/plugins/{$name}/": ["type:wordpress-plugin"],
"web/app/themes/{$name}/": ["type:wordpress-theme"]
},
"wordpress-install-dir": "web/wp"
},
"scripts": {
"post-root-package-install": [
"php -r \"copy('.env.example', '.env');\""
],
"test": [
"phpcs"
]
}
}</div>
June 25, 2021 at 3:43 PM #29126MaxM
ParticipantSame problem here, i use composer without bedrock but when activate plugin i get notice that meta-box is required, but it is installed trought composer
here my composer.json{ "repositories":[ { "type": "composer", "url": "https://wpackagist.org" }, { "type": "composer", "url": "https://packages.metabox.io/KEY" } ], "require": { "wpackagist-plugin/meta-box":"^5", "meta-box/meta-box-aio": "dev-master", "composer/installers": "^1", "yahnis-elsts/plugin-update-checker": "^4" }, "extra": { "installer-paths": { "vendor/meta-box/meta-box": ["wpackagist-plugin/meta-box"], "vendor/meta-box/{$name}/": ["type:wordpress-plugin"] } }, "autoload": { "files": [ "vendor/meta-box/meta-box/meta-box.php", "vendor/meta-box/meta-box-aio/meta-box-aio.php" ] } }
June 25, 2021 at 5:09 PM #29128MaxM
ParticipantI resolved. I removed TGMPA from metabox-AIO with this steps:
Remove action
add_action( 'tgmpa_register', [$this, 'require_plugins'] );
inside MBAIO\Pluginwith this function
function remove_hook_for_anonymous_class( $hook_name = '', $class_name = '', $method_name = '', $priority = 10 ) { global $wp_filter; // Take only filters on right hook name and priority if ( ! isset( $wp_filter[ $hook_name ][ $priority ] ) || ! is_array( $wp_filter[ $hook_name ][ $priority ] ) ) { return false; } foreach ( (array) $wp_filter[ $hook_name ][ $priority ] as $unique_id => $filter_array ) { if ( isset( $filter_array['function'] ) && is_array( $filter_array['function'] ) ) { if ( is_object( $filter_array['function'][0] ) && get_class( $filter_array['function'][0] ) && get_class( $filter_array['function'][0] ) == $class_name && $filter_array['function'][1] == $method_name ) { if ( is_a( $wp_filter[ $hook_name ], 'WP_Hook' ) ) { unset( $wp_filter[ $hook_name ]->callbacks[ $priority ][ $unique_id ] ); } else { unset( $wp_filter[ $hook_name ][ $priority ][ $unique_id ] ); } } } } return false; }
Then i call
remove_hook_for_anonymous_class
in main plugin file:
remove_hook_for_anonymous_class( 'tgmpa_register', 'MBAIO\Plugin', 'require_plugins' );
-
AuthorPosts
- You must be logged in to reply to this topic.