修复/强化WP函数中的add_query_arg()用法

时间:2015-06-02 11:19:17

标签: php wordpress

根据WordPress小组的this recent post,我们需要检查我们的主题文件,看看它是否正在使用add_query_arg()remove_query_arg()函数。完成对当前主题的完整搜索后,我可以在add_query_arg()文件的此代码段中看到对pagination.php的引用:

以下是PHP代码:

if ( !function_exists( 'get_multipage_link' ) ) :
function get_multipage_link( $page = 1 ) {
global $post, $wp_rewrite;

if ( 1 == $page ) {
    $url = get_permalink();
    } else {
    if ( '' == get_option('permalink_structure') || in_array( $post->post_status, array( 'draft', 'pending') ) )
        add_query_arg( 'page', $page, get_permalink() );
    elseif ( 'page' == get_option( 'show_on_front' ) && get_option('page_on_front') == $post->ID )
        $url = trailingslashit( get_permalink() ) . user_trailingslashit( $wp_rewrite->pagination_base . "/$page", 'single_paged' );
    else
        $url = trailingslashit( get_permalink() ) . user_trailingslashit( $page, 'single_paged' );
    }
  return $url;
} 
endif;

不幸的是,我有点超出了我的深度。该引用是否正常,因为它引用了get_permalink()而不是URL?这样我就不需要使用博客帖子推荐的esc_url()了吗?

0 个答案:

没有答案