| 1 | Index: wp-admin/edit-tags.php |
|---|
| 2 | =================================================================== |
|---|
| 3 | --- wp-admin/edit-tags.php (revision 19091) |
|---|
| 4 | +++ wp-admin/edit-tags.php (working copy) |
|---|
| 5 | @@ -42,7 +42,7 @@ |
|---|
| 6 | $submenu_file = "edit-tags.php?taxonomy=$taxonomy"; |
|---|
| 7 | } |
|---|
| 8 | |
|---|
| 9 | -add_screen_option( 'per_page', array('label' => $title, 'default' => 20, 'option' => 'edit_' . $tax->name . '_per_page') ); |
|---|
| 10 | +add_screen_option( 'per_page', array('label' => $title, 'default' => 20, 'option' => _convert_key_to_option( 'edit_' . $tax->name . '_per_page' ) ) ); |
|---|
| 11 | |
|---|
| 12 | switch ( $wp_list_table->current_action() ) { |
|---|
| 13 | |
|---|
| 14 | Index: wp-admin/includes/class-wp-plugins-list-table.php |
|---|
| 15 | =================================================================== |
|---|
| 16 | --- wp-admin/includes/class-wp-plugins-list-table.php (revision 19091) |
|---|
| 17 | +++ wp-admin/includes/class-wp-plugins-list-table.php (working copy) |
|---|
| 18 | @@ -130,7 +130,7 @@ |
|---|
| 19 | uasort( $this->items, array( &$this, '_order_callback' ) ); |
|---|
| 20 | } |
|---|
| 21 | |
|---|
| 22 | - $plugins_per_page = $this->get_items_per_page( str_replace( '-', '_', $screen->id . '_per_page' ), 999 ); |
|---|
| 23 | + $plugins_per_page = $this->get_items_per_page( _convert_key_to_option( $screen->id . '_per_page' ), 999 ); |
|---|
| 24 | |
|---|
| 25 | $start = ( $page - 1 ) * $plugins_per_page; |
|---|
| 26 | |
|---|
| 27 | Index: wp-admin/includes/class-wp-posts-list-table.php |
|---|
| 28 | =================================================================== |
|---|
| 29 | --- wp-admin/includes/class-wp-posts-list-table.php (revision 19091) |
|---|
| 30 | +++ wp-admin/includes/class-wp-posts-list-table.php (working copy) |
|---|
| 31 | @@ -94,7 +94,7 @@ |
|---|
| 32 | |
|---|
| 33 | $total_items = $this->hierarchical_display ? $wp_query->post_count : $wp_query->found_posts; |
|---|
| 34 | |
|---|
| 35 | - $per_page = $this->get_items_per_page( 'edit_' . $post_type . '_per_page' ); |
|---|
| 36 | + $per_page = $this->get_items_per_page( _convert_key_to_option( 'edit_' . $post_type . '_per_page' ) ); |
|---|
| 37 | $per_page = apply_filters( 'edit_posts_per_page', $per_page, $post_type ); |
|---|
| 38 | |
|---|
| 39 | if ( $this->hierarchical_display ) |
|---|
| 40 | Index: wp-admin/includes/class-wp-terms-list-table.php |
|---|
| 41 | =================================================================== |
|---|
| 42 | --- wp-admin/includes/class-wp-terms-list-table.php (revision 19091) |
|---|
| 43 | +++ wp-admin/includes/class-wp-terms-list-table.php (working copy) |
|---|
| 44 | @@ -42,7 +42,7 @@ |
|---|
| 45 | function prepare_items() { |
|---|
| 46 | global $taxonomy; |
|---|
| 47 | |
|---|
| 48 | - $tags_per_page = $this->get_items_per_page( 'edit_' . $taxonomy . '_per_page' ); |
|---|
| 49 | + $tags_per_page = $this->get_items_per_page( _convert_key_to_option( 'edit_' . $taxonomy . '_per_page' ) ); |
|---|
| 50 | |
|---|
| 51 | if ( 'post_tag' == $taxonomy ) { |
|---|
| 52 | $tags_per_page = apply_filters( 'edit_tags_per_page', $tags_per_page ); |
|---|
| 53 | Index: wp-admin/includes/misc.php |
|---|
| 54 | =================================================================== |
|---|
| 55 | --- wp-admin/includes/misc.php (revision 19091) |
|---|
| 56 | +++ wp-admin/includes/misc.php (working copy) |
|---|
| 57 | @@ -313,6 +313,19 @@ |
|---|
| 58 | } |
|---|
| 59 | |
|---|
| 60 | /** |
|---|
| 61 | + * Convert a key to an appropriate option name. |
|---|
| 62 | + * |
|---|
| 63 | + * @since 3.3.0 |
|---|
| 64 | + * @access private |
|---|
| 65 | + * |
|---|
| 66 | + * @param string $key A key to convert, e.g. "edit_{$post_type}_per_page". |
|---|
| 67 | + * @return string Option name. |
|---|
| 68 | + */ |
|---|
| 69 | +function _convert_key_to_option( $key ) { |
|---|
| 70 | + return str_replace( '-', '_', $key ); |
|---|
| 71 | +} |
|---|
| 72 | + |
|---|
| 73 | +/** |
|---|
| 74 | * Saves option for number of rows when listing posts, pages, comments, etc. |
|---|
| 75 | * |
|---|
| 76 | * @since 2.8 |
|---|
| 77 | @@ -330,14 +342,14 @@ |
|---|
| 78 | if ( !preg_match( '/^[a-z_-]+$/', $option ) ) |
|---|
| 79 | return; |
|---|
| 80 | |
|---|
| 81 | - $option = str_replace('-', '_', $option); |
|---|
| 82 | + $option = _convert_key_to_option( $option ); |
|---|
| 83 | |
|---|
| 84 | $map_option = $option; |
|---|
| 85 | $type = str_replace('edit_', '', $map_option); |
|---|
| 86 | $type = str_replace('_per_page', '', $type); |
|---|
| 87 | - if ( in_array($type, get_post_types()) ) |
|---|
| 88 | + if ( in_array( $type, array_map( '_convert_key_to_option', get_post_types() ) ) ) |
|---|
| 89 | $map_option = 'edit_per_page'; |
|---|
| 90 | - if ( in_array( $type, get_taxonomies()) ) |
|---|
| 91 | + if ( in_array( $type, array_map( '_convert_key_to_option', get_taxonomies() ) ) ) |
|---|
| 92 | $map_option = 'edit_tags_per_page'; |
|---|
| 93 | |
|---|
| 94 | |
|---|
| 95 | Index: wp-admin/includes/post.php |
|---|
| 96 | =================================================================== |
|---|
| 97 | --- wp-admin/includes/post.php (revision 19091) |
|---|
| 98 | +++ wp-admin/includes/post.php (working copy) |
|---|
| 99 | @@ -871,7 +871,7 @@ |
|---|
| 100 | elseif ( isset($q['post_status']) && 'pending' == $q['post_status'] ) |
|---|
| 101 | $order = 'ASC'; |
|---|
| 102 | |
|---|
| 103 | - $per_page = 'edit_' . $post_type . '_per_page'; |
|---|
| 104 | + $per_page = _convert_key_to_option( 'edit_' . $post_type . '_per_page' ); |
|---|
| 105 | $posts_per_page = (int) get_user_option( $per_page ); |
|---|
| 106 | if ( empty( $posts_per_page ) || $posts_per_page < 1 ) |
|---|
| 107 | $posts_per_page = 20; |
|---|
| 108 | Index: wp-admin/includes/screen.php |
|---|
| 109 | =================================================================== |
|---|
| 110 | --- wp-admin/includes/screen.php (revision 19091) |
|---|
| 111 | +++ wp-admin/includes/screen.php (working copy) |
|---|
| 112 | @@ -881,7 +881,7 @@ |
|---|
| 113 | |
|---|
| 114 | $option = $this->get_option( 'per_page', 'option' ); |
|---|
| 115 | if ( ! $option ) |
|---|
| 116 | - $option = str_replace( '-', '_', "{$this->id}_per_page" ); |
|---|
| 117 | + $option = _convert_key_to_option( "{$this->id}_per_page" ); |
|---|
| 118 | |
|---|
| 119 | $per_page = (int) get_user_option( $option ); |
|---|
| 120 | if ( empty( $per_page ) || $per_page < 1 ) { |
|---|