Skocz do zawartości

Zdjęcie
* * * * * 1 głosy

Link rel="next/prev" w podziale artykułu na strony.


5 odpowiedzi w tym temacie
  • Zaloguj się, aby dodać odpowiedź
Michał

    Stary wyjadacz

  • 301 postów
    • Czas spędzony online: 16d 7h 11m 3s
95
Znakomita!

Napisano 25 lipca 2014 - 14:18

#1

Napisałem w headzie taki kod:
 

<?php if(get_previous_posts_link()) echo'<link rel="prev" href="'.get_pagenum_link( $paged - 1 ).'">'; if(get_next_posts_link()) echo '<link rel="next" href="'.get_pagenum_link( $paged +1 ).'">'; ?>

 
generalnie działa on normalnie dla paginacji kategorii itp., lecz już przy podziale pojedynczego wpisu na strony- nie.
Ma ktoś jakieś pomysły jak to rozwiązać?


  • 0

unbreak

    WT Elite

  • 1 937 postów
    • Czas spędzony online: 27d 8h 43m 36s
506
Znakomita!
  • Location/home/unbreak

Napisano 25 lipca 2014 - 15:11

#2

Jak podziale jednego wpisu na strony? Jak chcesz dzielić jeden wpis na strony?


  • 0

webDeveloper


Michał

    Stary wyjadacz

  • 301 postów
    • Czas spędzony online: 16d 7h 11m 3s
95
Znakomita!

Napisano 25 lipca 2014 - 15:52

#3

Jeżeli wpis jest bardzo długi warto go podzielić na kilka części. Służy do tego tag <!--nextpage-->.
Później paginacje we wpisie wyświetlam funkcją wp_link_pages.


  • 0

Zimistrz

    Stary wyjadacz

  • 465 postów
    • Czas spędzony online: 14d 2h 42m 38s
116
Znakomita!

Napisano 25 lipca 2014 - 23:16

#4

Coś z tego pluginu powinno dać się wycisnąć: wordpress.org/plugins/sgr-nextpage-titles


  • 0

Michał

    Stary wyjadacz

  • 301 postów
    • Czas spędzony online: 16d 7h 11m 3s
95
Znakomita!

Napisano 26 lipca 2014 - 01:03

#5

Generalnie wyciągnąłem i przerobiłem kod z innej wbudowanej funkcji:

function relarion_pages( $i, $type ) {
global $wp_rewrite;
$post = get_post();


if ( 1 == $i ) {
$url = get_permalink();
} else {
if ( '' == get_option('permalink_structure') || in_array($post->post_status, array('draft', 'pending')) )
$url = add_query_arg( 'page', $i, 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/" . $i, 'single_paged');
else
$url = trailingslashit(get_permalink()) . user_trailingslashit($i, 'single_paged');
}


if ( is_preview() ) {
$url = add_query_arg( array(
'preview' => 'true'
), $url );


if ( ( 'draft' !== $post->post_status ) && isset( $_GET['preview_id'], $_GET['preview_nonce'] ) ) {
$url = add_query_arg( array(
'preview_id'    => wp_unslash( $_GET['preview_id'] ),
'preview_nonce' => wp_unslash( $_GET['preview_nonce'] )
), $url );
}
}


return '<link rel="'.$type.'" href="' . esc_url( $url ) . '"/>';
}

stosowanie:

if ($page>1)
echo relarion_pages( $page - 1 , 'prev');
if ($page < $numpages)
echo relarion_pages( $page + 1, 'next' );
 

 

działa, ale chyba nie wygląda to zbyt fajnie- jutro sprawdzę ten plugin.


  • 0

Zimistrz

    Stary wyjadacz

  • 465 postów
    • Czas spędzony online: 14d 2h 42m 38s
116
Znakomita!

Napisano 26 lipca 2014 - 22:53

#6

Dość sporo kodziszcza. Ja się z tym problemem zmierzyłem w Joomla kilka dni temu.

Jak pamiętam 7-8 linii kodu + override natywnego widoku do wyświetlania listy artykułów z paginacją.

 

ps. generalnie to tylko zalecenie googla w przypadku URL-a z parametrem.

Lepiej byłoby popracować nad paginacją typu /artykuł + podstrony: artykul/2 itd. na zasadzie kategoryzacji

Hgw czy kolejna automatyczna aktualizacja WP/J! nie rozniesie w drobny mak dodanego kodu, albo nie zacznie sypać błędami.

To najgorsza zmora


  • 0





Podone tematy Collapse

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych