Ankündigung

Einklappen
Keine Ankündigung bisher.

Pagination/Seitennavigation ohne Scrolling an den Seitenanfang

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Pagination/Seitennavigation ohne Scrolling an den Seitenanfang

    Hallo liebe PHP-Menschen!

    ich möchte mich mit folgendem Problem an euch wenden: ich muss ein WordPress Plugin so modifiieren, dass der Bildschirm nach dem Klicken auf die Seitennavigation eines Widgets nicht nach oben springt. Das Widget beinhaltet eine Liste mit Einträgen, und es ist sehr benutzerundfreundlich, wenn man immer wieder runter scrollen müsste, um die weiteren Einträge auf den Folgeseiten zu lesen.

    Es gibt schon einen Anker im Topmenu der dort hinführt, und wenn ich die Widget-Seitennavigation erstmal ausführe (und oben dann folglich in der Adresszeile www.beispiel.de/subseite?paged-1=2 steht) ... und ich dann nachträglich manuell den Anker mit dazu in die URL schreibe (www.beispiel.de/subseite?paged-1=2#anker) ... dann stellt er Seite 2 da und springt hin.

    Aber baue ich den Anker im Skript ein, dann rutscht es zwar zum Anker, führte aber zuvor nicht den Seitenwechsel durch.

    Der Code lautet wie folgt.. (das . '#anker' sind Versuche meinerseits, die aber leider nicht funktionierten. Im Original ist das nicht drin):

    PHP-Code:
    function X_pagination$query$args = array() ) {

    $navigation null;

    if ( ! empty( 
    $query->properties_loop_identifier ) ) {
    $format '?paged-' $query->properties_loop_identifier '=%#%' '#anker';
    $page_num = ! empty( $_GET'paged-' $query->properties_loop_identifier '#anker' ] ) ? $_GET'paged-' $query->properties_loop_identifier '#anker' ] : 1;
    } else {
    $format '?paged=%#%';
    if ( 
    get_query_var'paged' ) ) {
    $page_num get_query_var'paged' );
    } elseif ( 
    get_query_var'page' ) ) {
    $page_num get_query_var'page' );
    } else {
    $page_num 1;
    }
    }

    $page_num intval$page_num );

    $args wp_parse_args$args, array(
    'format' => $format,
    'show_all' => false,
    'end_size' => 2,
    'mid_size' => 2,
    'screen_reader_text' => ' ',
    'total' => $query->max_num_pages,
    'current' => $page_num,
    ) );

    $args apply_filters('X_pagination_args'$args );

    $links paginate_links$args );

    if ( 
    $links ) {
    $navigation _navigation_markup$links'pagination'$args['screen_reader_text'] );
    }

    return 
    $navigation;

    Hat jemand eine Idee, wie man es erreicht, dass er erst den Seitenwechsel ausführt und dann zum Anker springt?

    Vielen Dank für Hinweise!
    LG
    Martin

Lädt...
X