Index: class-plugin-directory.php
===================================================================
--- class-plugin-directory.php (revision 5192)
+++ class-plugin-directory.php (working copy)
@@ -266,7 +266,7 @@
) );
register_post_status( 'disabled', array(
'label' => _x( 'Disabled', 'plugin status', 'wporg-plugins' ),
- 'public' => false,
+ 'public' => true,
'show_in_admin_status_list' => current_user_can( 'plugin_disable' ),
'label_count' => _n_noop( 'Disabled (%s)', 'Disabled (%s)', 'wporg-plugins' ),
) );
@@ -789,6 +789,12 @@
}, 10, 2 );
}
+ // Allow anyone to view a disabled plugin directly from its page. It won't show in search results or lists.
+ if ( !empty( $wp_query->query_vars['name'] ) ) {
+ $wp_query->query_vars['post_status'][] = 'disabled';
+ $wp_query->query_vars['post_status'] = array_unique( $wp_query->query_vars['post_status'] );
+ }
+
// By default, all archives are sorted by active installs
if ( $wp_query->is_archive() && empty( $wp_query->query_vars['orderby'] ) ) {
$wp_query->query_vars['orderby'] = 'meta_value_num';