]> scripts.mit.edu Git - autoinstalls/wordpress.git/blobdiff - wp-admin/plugin-install.php
WordPress 4.1.2-scripts
[autoinstalls/wordpress.git] / wp-admin / plugin-install.php
index 6ec2b9d148475a0f26205dba164a3753d2113376..e2431eb9b5686abf11207b35389480429f04fbd5 100644 (file)
@@ -24,8 +24,27 @@ if ( is_multisite() && ! is_network_admin() ) {
 
 $wp_list_table = _get_list_table('WP_Plugin_Install_List_Table');
 $pagenum = $wp_list_table->get_pagenum();
+
+if ( ! empty( $_REQUEST['_wp_http_referer'] ) ) {
+       $location = remove_query_arg( '_wp_http_referer', wp_unslash( $_SERVER['REQUEST_URI'] ) );
+
+       if ( ! empty( $_REQUEST['paged'] ) ) {
+               $location = add_query_arg( 'paged', (int) $_REQUEST['paged'], $location );
+       }
+
+       wp_redirect( $location );
+       exit;
+}
+
 $wp_list_table->prepare_items();
 
+$total_pages = $wp_list_table->get_pagination_arg( 'total_pages' );
+
+if ( $pagenum > $total_pages && $total_pages > 0 ) {
+       wp_redirect( add_query_arg( 'paged', $total_pages ) );
+       exit;
+}
+
 $title = __( 'Add Plugins' );
 $parent_file = 'plugins.php';
 
@@ -38,7 +57,7 @@ $body_id = $tab;
 /**
  * Fires before each tab on the Install Plugins screen is loaded.
  *
- * The dynamic portion of the action hook, $tab, allows for targeting
+ * The dynamic portion of the action hook, `$tab`, allows for targeting
  * individual tabs, for instance 'install_plugins_pre_plugin-information'.
  *
  * @since 2.7.0
@@ -98,15 +117,14 @@ if ( $tab !== 'upload' ) {
 /**
  * Fires after the plugins list table in each tab of the Install Plugins screen.
  *
- * The dynamic portion of the action hook, $tab, allows for targeting
+ * The dynamic portion of the action hook, `$tab`, allows for targeting
  * individual tabs, for instance 'install_plugins_plugin-information'.
  *
  * @since 2.7.0
  *
  * @param int $paged The current page number of the plugins list table.
  */
-?>
-<?php do_action( "install_plugins_$tab", $paged ); ?>
+do_action( "install_plugins_$tab", $paged ); ?>
 </div>
 <?php
 /**