do_block_editor_incompatible_meta_box() WP 5.0.0
Function that renders a "fake" meta box with an information message, shown on the block editor, when an incompatible meta box is found.
Хуков нет.
Возвращает
Null. Ничего.
Использование
do_block_editor_incompatible_meta_box( $object, $box );
- $object(разное) (обязательный)
- The data object being rendered on this screen.
- $box(массив) (обязательный)
Custom formats meta box arguments.
-
id(строка)
Meta box 'id' attribute. -
title(строка)
Meta box title. -
old_callback(callable)
The original callback for this meta box. - args(массив)
Extra meta box arguments.
-
Список изменений
С версии 5.0.0 | Введена. |
Код do_block_editor_incompatible_meta_box() do block editor incompatible meta box WP 5.6.2
function do_block_editor_incompatible_meta_box( $object, $box ) {
$plugin = _get_plugin_from_callback( $box['old_callback'] );
$plugins = get_plugins();
echo '<p>';
if ( $plugin ) {
/* translators: %s: The name of the plugin that generated this meta box. */
printf( __( "This meta box, from the %s plugin, isn't compatible with the block editor." ), "<strong>{$plugin['Name']}</strong>" );
} else {
_e( "This meta box isn't compatible with the block editor." );
}
echo '</p>';
if ( empty( $plugins['classic-editor/classic-editor.php'] ) ) {
if ( current_user_can( 'install_plugins' ) ) {
echo '<p>';
printf(
/* translators: %s: A link to install the Classic Editor plugin. */
__( 'Please install the <a href="%s">Classic Editor plugin</a> to use this meta box.' ),
esc_url( wp_nonce_url( self_admin_url( 'plugin-install.php?tab=favorites&user=wordpressdotorg&save=0' ), 'save_wporg_username_' . get_current_user_id() ) )
);
echo '</p>';
}
} elseif ( is_plugin_inactive( 'classic-editor/classic-editor.php' ) ) {
if ( current_user_can( 'activate_plugins' ) ) {
$activate_url = wp_nonce_url( self_admin_url( 'plugins.php?action=activate&plugin=classic-editor/classic-editor.php' ), 'activate-plugin_classic-editor/classic-editor.php' );
echo '<p>';
/* translators: %s: A link to activate the Classic Editor plugin. */
printf( __( 'Please activate the <a href="%s">Classic Editor plugin</a> to use this meta box.' ), esc_url( $activate_url ) );
echo '</p>';
}
} elseif ( $object instanceof WP_Post ) {
$edit_url = add_query_arg(
array(
'classic-editor' => '',
'classic-editor__forget' => '',
),
get_edit_post_link( $object )
);
echo '<p>';
/* translators: %s: A link to use the Classic Editor plugin. */
printf( __( 'Please open the <a href="%s">classic editor</a> to use this meta box.' ), esc_url( $edit_url ) );
echo '</p>';
}
}