diff --git a/wp-admin/includes/class-wp-posts-list-table.php b/wp-admin/includes/class-wp-posts-list-table.php
index 5f11ecb9bb..55456333c8 100644
--- a/wp-admin/includes/class-wp-posts-list-table.php
+++ b/wp-admin/includes/class-wp-posts-list-table.php
@@ -1168,7 +1168,12 @@ class WP_Posts_List_Table extends WP_List_Table {
}
}
- get_inline_data( $post );
+ /** This filter is documented in wp-admin/includes/class-wp-posts-list-table.php */
+ $quick_edit_enabled = apply_filters( 'quick_edit_enabled_for_post_type', true, $post->post_type );
+
+ if ( $quick_edit_enabled ) {
+ get_inline_data( $post );
+ }
}
/**
@@ -1475,7 +1480,17 @@ class WP_Posts_List_Table extends WP_List_Table {
__( 'Edit' )
);
- if ( 'wp_block' !== $post->post_type ) {
+ /**
+ * Filters whether Quick Edit should be enabled for the given post type.
+ *
+ * @since 6.4.0
+ *
+ * @param bool $enable Whether to enable the Quick Edit functionality. Default true.
+ * @param string $post_type Post type name.
+ */
+ $quick_edit_enabled = apply_filters( 'quick_edit_enabled_for_post_type', true, $post->post_type );
+
+ if ( $quick_edit_enabled && 'wp_block' !== $post->post_type ) {
$actions['inline hide-if-no-js'] = sprintf(
'',
/* translators: %s: Post title. */
diff --git a/wp-admin/includes/class-wp-terms-list-table.php b/wp-admin/includes/class-wp-terms-list-table.php
index 69c6da0d85..efbf68a9f4 100644
--- a/wp-admin/includes/class-wp-terms-list-table.php
+++ b/wp-admin/includes/class-wp-terms-list-table.php
@@ -425,12 +425,17 @@ class WP_Terms_List_Table extends WP_List_Table {
$name
);
- $output .= '
';
- $output .= '
' . $qe_data->name . '
';
+ /** This filter is documented in wp-admin/includes/class-wp-terms-list-table.php */
+ $quick_edit_enabled = apply_filters( 'quick_edit_enabled_for_taxonomy', true, $taxonomy );
- /** This filter is documented in wp-admin/edit-tag-form.php */
- $output .= '
' . apply_filters( 'editable_slug', $qe_data->slug, $qe_data ) . '
';
- $output .= '
' . $qe_data->parent . '
';
+ if ( $quick_edit_enabled ) {
+ $output .= '';
+ $output .= '
' . $qe_data->name . '
';
+
+ /** This filter is documented in wp-admin/edit-tag-form.php */
+ $output .= '
' . apply_filters( 'editable_slug', $qe_data->slug, $qe_data ) . '
';
+ $output .= '
' . $qe_data->parent . '
';
+ }
return $output;
}
@@ -485,12 +490,25 @@ class WP_Terms_List_Table extends WP_List_Table {
esc_attr( sprintf( __( 'Edit “%s”' ), $tag->name ) ),
__( 'Edit' )
);
- $actions['inline hide-if-no-js'] = sprintf(
- '',
- /* translators: %s: Taxonomy term name. */
- esc_attr( sprintf( __( 'Quick edit “%s” inline' ), $tag->name ) ),
- __( 'Quick Edit' )
- );
+
+ /**
+ * Filters whether Quick Edit should be enabled for the given taxonomy.
+ *
+ * @since 6.4.0
+ *
+ * @param bool $enable Whether to enable the Quick Edit functionality. Default true.
+ * @param string $taxonomy Taxonomy name.
+ */
+ $quick_edit_enabled = apply_filters( 'quick_edit_enabled_for_taxonomy', true, $taxonomy );
+
+ if ( $quick_edit_enabled ) {
+ $actions['inline hide-if-no-js'] = sprintf(
+ '',
+ /* translators: %s: Taxonomy term name. */
+ esc_attr( sprintf( __( 'Quick edit “%s” inline' ), $tag->name ) ),
+ __( 'Quick Edit' )
+ );
+ }
}
if ( current_user_can( 'delete_term', $tag->term_id ) ) {
diff --git a/wp-includes/version.php b/wp-includes/version.php
index 4c710c849b..6ed36dee57 100644
--- a/wp-includes/version.php
+++ b/wp-includes/version.php
@@ -16,7 +16,7 @@
*
* @global string $wp_version
*/
-$wp_version = '6.4-alpha-56610';
+$wp_version = '6.4-alpha-56611';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.