This commit is contained in:
nikolark committed 2015-02-24 20:19:00 +01:00
1 parent f3b69c7bb3
commit 671f1ecdfc
66 files changed
+2430 -2425

No files matched your search

+39 -11
View File
@@ -2587,20 +2587,18 @@ function language_attributes($doctype = 'html') {
function paginate_links( $args = '' ) {
global $wp_query, $wp_rewrite;
$total = ( isset( $wp_query->max_num_pages ) ) ? $wp_query->max_num_pages : 1;
$current = ( get_query_var( 'paged' ) ) ? intval( get_query_var( 'paged' ) ) : 1;
// Setting up default values based on the current URL.
$pagenum_link = html_entity_decode( get_pagenum_link() );
$query_args = array();
$url_parts = explode( '?', $pagenum_link );
if ( isset( $url_parts[1] ) ) {
wp_parse_str( $url_parts[1], $query_args );
$query_args = urlencode_deep( $query_args );
}
// Get max pages and current page out of the current query, if available.
$total = isset( $wp_query->max_num_pages ) ? $wp_query->max_num_pages : 1;
$current = get_query_var( 'paged' ) ? intval( get_query_var( 'paged' ) ) : 1;
$pagenum_link = remove_query_arg( array_keys( $query_args ), $pagenum_link );
$pagenum_link = trailingslashit( $pagenum_link ) . '%_%';
// Append the format placeholder to the base URL.
$pagenum_link = trailingslashit( $url_parts[0] ) . '%_%';
// URL base depends on permalink settings.
$format = $wp_rewrite->using_index_permalinks() && ! strpos( $pagenum_link, 'index.php' ) ? 'index.php/' : '';
$format .= $wp_rewrite->using_permalinks() ? user_trailingslashit( $wp_rewrite->pagination_base . '/%#%', 'paged' ) : '?paged=%#%';
@@ -2616,7 +2614,7 @@ function paginate_links( $args = '' ) {
'end_size' => 1,
'mid_size' => 2,
'type' => 'plain',
'add_args' => $query_args, // array of query args to add
'add_args' => array(), // array of query args to add
'add_fragment' => '',
'before_page_number' => '',
'after_page_number' => ''
@@ -2624,6 +2622,21 @@ function paginate_links( $args = '' ) {
$args = wp_parse_args( $args, $defaults );
if ( ! is_array( $args['add_args'] ) ) {
$args['add_args'] = array();
}
// Merge additional query vars found in the original URL into 'add_args' array.
if ( isset( $url_parts[1] ) ) {
// Find the format argument.
$format_query = parse_url( str_replace( '%_%', $args['format'], $args['base'] ), PHP_URL_QUERY );
wp_parse_str( $format_query, $format_arg );
// Remove the format argument from the array of query arguments, to avoid overwriting custom format.
wp_parse_str( remove_query_arg( array_keys( $format_arg ), $url_parts[1] ), $query_args );
$args['add_args'] = array_merge( $args['add_args'], urlencode_deep( $query_args ) );
}
// Who knows what else people pass in $args
$total = (int) $args['total'];
if ( $total < 2 ) {
@@ -2638,7 +2651,7 @@ function paginate_links( $args = '' ) {
if ( $mid_size < 0 ) {
$mid_size = 2;
}
$add_args = is_array( $args['add_args'] ) ? $args['add_args'] : false;
$add_args = $args['add_args'];
$r = '';
$page_links = array();
$dots = false;
@@ -3113,3 +3126,18 @@ function wp_heartbeat_settings( $settings ) {
return $settings;
}
/**
* Temporary function to add a missing style rule to the themes page.
* This avoids the need to ship an entirely rebuilt wp-admin.css in partial builds.
*
* @since 4.1.1
* @ignore
*/
function _wp_add_themesphp_notice_styling() {
global $pagenow;
if ( 'themes.php' == $pagenow ) {
echo "<style type='text/css'>.themes-php div.notice { margin: 0 0 20px 0; clear: both; }</style>\n";
}
}
add_action( 'admin_head', '_wp_add_themesphp_notice_styling' );