Como obter apenas o URL da próxima página (sem tag)

4

Aqui está minha função

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;
}

Isso inclui o elemento externo, o nome etc., quero apenas o link, por exemplo,

http://domain.com/article/2

Muito obrigado

    
por Fayens 06.10.2015 / 11:44

1 resposta

5

Se você conferir a _wp_link_page , verá todos os cálculos de URL codificado diretamente dentro - você pode tanto levantar esse código diretamente para sua própria função, ou polvilhar um pouco de regex em torno da função existente:

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

É importante notar que _wp_link_page é uma função "privada" e não se destina a uso em plug-ins e plug-ins de terceiros temas - ele pode ser renomeado / removido / preterido em uma versão subsequente.

    
por TheDeadMedic 06.10.2015 / 12:10

Tags