web-dev-qa-db-ja.com

次のページのURLだけを取得する方法(<a>タグなし)

これが私の機能です

function next_pages( $args = '' ) {
    $r = wp_parse_args( $args, $defaults );
    extract( $r, EXTR_SKIP );
    global $page, $numpages, $multipage, $more, $pagenow;
    $output = '';
    if ( $multipage ) {
            if ( $more ) {
                $output .= $before;
                $i = $page + 1;
                if ( $i <= $numpages && $more ) {
                    $output .= _wp_link_page( $i );
                    $output .= $nextpagelink;
                }
                $output .= $after;
            }
    }
    if ( $echo )
    echo $output;
    return $output;
}

これは外側の要素、名前などを含みます。

http://domain.com/article/2

どうもありがとう

4
Fayens

_wp_link_page のソースをチェックアウトすると、すべてのURL計算が直接内部にコーディングされているのがわかります。独自の関数を使用するか、既存の関数の周りに少し正規表現を振りかけます。

function wpse_204737_get_post_page_url( $i ) {
    if ( preg_match( '/href="([^"]+)"/', _wp_link_page( $i ), $match ) )
        return $match[1];
}

_wp_link_pageは「プライベート」な関数であり、サードパーティのプラグインやテーマでの使用を意図していないことに注意すること - それ改名/削除/非推奨になるかもしれません。

5
TheDeadMedic