

The main administration screen of BPOTech Custom Quicktags Manager. Easily create custom Quicktag buttons by defining start and end HTML tags, choosing supported editors (Code, Visual, Gutenberg), and selecting the post types where each Quicktag will be available. Existing Quicktags can also be edited or removed from the same interface.
BPOTech Custom Quicktags Manager allows WordPress administrators to create and manage custom Quicktags — quick action buttons that insert custom HTML or text into the editor. Each quicktag can be selectively assigned to specific post types so it only appears where needed.
This plugin provides several action and filter hooks to allow third-party developers to extend and customize the Quicktags manager without editing the plugin core files.
bpotech_custom_quicktags_manager_data (array $quicktags)
Filters the list of quicktags retrieved from the database before rendering them in the editor or admin list.
Example:
add_filter( ‘bpotech_custom_quicktags_manager_data’, function( $quicktags ) {
// Dynamically inject a custom quicktag from code
$quicktags[] = array(
‘id’ => ‘custom_code_block’,
‘label’ => ‘Code Block’,
‘start_tag’ => ‘`
‘,
‘end_tag’ => ‘
‘,
‘post_types’ => array( ‘post’ ),
‘editors’ => array( ‘gutenberg’, ‘text’ )
);
return $quicktags;
} );
add_filter( ‘bpotech_custom_quicktags_manager_post_types’, function( $post_types ) {
// Remove ‘attachment’ or add custom ones
unset( $post_types[‘attachment’] );
return $post_types;
} );
bpotech_custom_quicktags_manager_editors (array $editors)
Filters the list of editors displayed in the settings form checkboxes.
bpotech_custom_quicktags_manager_default_data (array $default_tags)
Filters the initial default quicktags set on plugin activation or reset.
bpotech_custom_quicktags_manager_admin_form_bottom (array|null $edit_tag)
Fires at the bottom of the quicktag creation/edit form. Useful for adding custom input fields.
Example:
add_action( ‘bpotech_custom_quicktags_manager_admin_form_bottom’, function( $edit_tag ) {
$note = $edit_tag ? get_option( ‘qt_note_’ . $edit_tag[‘id’], ” ) : ”;
echo ‘
‘;
echo ‘ Developer Note’;
echo ‘ ‘;
echo ‘
‘;
} );
bpotech_custom_quicktags_manager_after_save_tag (array $new_tag, array $all_tags, bool $is_new)
Fires after a quicktag is saved or updated. You can use this to save custom form inputs.
Example:
add_action( ‘bpotech_custom_quicktags_manager_after_save_tag’, function( $new_tag, $all_tags, $is_new ) {
if ( isset( $POST[‘qt_dev_note’] ) ) {
update_option( ‘qt_note‘ . $new_tag[‘id’], sanitize_text_field( wp_unslash( $_POST[‘qt_dev_note’] ) ) );
}
}, 10, 3 );
bpotech_custom_quicktags_manager_after_delete_tag (string $tag_id, array $updated_tags)
Fires after a quicktag is deleted. Useful for clearing out custom metadata linked to the deleted tag ID.
Other available actions:
* bpotech_custom_quicktags_manager_before_save_tag (array $new_tag, bool $is_new)
* bpotech_custom_quicktags_manager_before_delete_tag (string $tag_id)
* bpotech_custom_quicktags_manager_reset_defaults (array $default_tags)