Pagination (on the static front page) shows always the same posts

I have a problem with pagination on my front page. I want to show all posts from a specific category and paginate them. Here is the code

if ( is_front_page() ) {    
    $paged = get_query_var( 'page' ) ? get_query_var( 'page' ) : 1;
    $args = array(
        'post_type'      = 'post',
        'orderby'        = 'date',
        'order'          = 'DESC',
        'posts_per_page' = 1,
        'cat'            = '4',
        'page'           = $paged,
    ); 
    $q = new WP_Query( $args );
    if ( $q-have_posts() ) { 
        while ( $q-have_posts() ) {
            $q-the_post();
            ?
            div .... /div
            ?php
        }
        //pagination links
        wp_reset_query();
    }
}

But all the time I have the same posts on different pages: domain.com/page/2/ etc. What I'm doing wrong? How to fix it?

Thank you for any help.

Topic pagination posts Wordpress

Category Web


https://codex.wordpress.org/Creating_a_Static_Front_Page

Static front pages are not intended to be paged. None of the WordPress Previous / Next page link functions work with a static front page. Pagination on a static front page uses the page query variable, not the paged variable. See the WP_Query for details.


https://codex.wordpress.org/Class_Reference/WP_Query

Display posts from current page on a static front page:

$paged = ( get_query_var('page') ) ? get_query_var('page') : 1;
$query = new WP_Query( array( 'paged' => $paged ) );

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.