How to fetch posts with offset in WordPress?

I have more than 100,000 posts and i fetch 20,000 posts in every page refresh, but now if i refresh the page i want to display new 20,000 posts rather than same.

Here is my Query

         $  args = array(             'post_type' => 'ebay_product',             'posts_per_page' => 20000,             'post_status' => array('publish'),             'orderby' => 'ID',             'order' => 'DESC'         ); 

Please help me to solve this issue. Any solution appreciated!

Unable to save or update posts with Emoji

I host my WordPress (v5.4.2) blog on and I am unable to save any post with emoji characters. I get this error Updating failed. Could not update post in the database

I have tried changing these lines in wp-config.php

define( 'DB_CHARSET', 'utf8mb4' );  define( 'DB_COLLATE', 'utf8mb4_unicode_ci' ); 

I also migrated all my tables in MySQL to utf8mb4_unicode_ci with the below step. enter image description here

But none of these worked, what I am missing? Please help My WordPress version: 5.4.2

Order posts alphabetically with numbers but some of the posts has numbers in the title

I have this query:

 $  args = array(        'post_type' => 'alerts',     'post_status' => 'publish',     'posts_per_page' => -1,      'orderby' => 'post_title',      'order' => 'ASC', );  $  alerts_loop = new WP_Query( $  args );  

The problem is that the order breaks in certain point. look at the imagen any ideas why it breaks. I have used:

'orderby' => 'title', 'suppress_filters' => true, 'ignore_sticky_posts' => true 

enter image description here

Pagination (archive posts) getting out of hand – what to do from an SEO POV?

WordPress as many of us know creates an archive loop of old posts.

From an SEO POV, some of my categories are now at 100+ pages which is a lot of bloat…

Sure, I can set each of these paginated pages a canonical link but still, feels like it is a bit unnecessary for all these indexed pages that just contain a title and an excerpt (which is basically duplicate content..)

Is one approach to simply switch off archive loops or does Google ignore these archived pages?


How do you output custom code before a subset of posts in the loop?

I have a foreach loop for a custom post type ordered by date (meta key). If a post’s associated date is less than the current date (i.e., dates not in the future), I want to output some HTML. if ($ custom_post_date >= $ today && $ index === 1) The problem I am running into is that the HTML gets output after the first post that is in the past. How can I output the HTML before the first post that meets the criteria? Is there a way to go back in the foreach loop or something to that effect?

Why do trolls’ posts keep getting promoted and upvoted while truth-saying posts are deleted?

Yesterday, I asked this question: How can Tutanota, ProtonMail and Hushmail all claim to provide privacy when they only allow privacy-incompatible payment options?

It’s now been "closed" as "off-topic", even though it couldn’t possibly be more on-topic. Anyway, that is something I’ve come to expect from Stack Exchange and is not the real point of this question.

What I don’t understand is why an (apparent) troll’s post, which lies about ProtonMail accepting Bitcoin, gets to stay, and is even upvoted, when the reply I posted, with a screenshot showing that ProtonMail does NOT support Bitcoin, was deleted. That post and screenshot is just entirely gone. Vanished. As if it never was posted at all.

ProtonMail does not support Bitcoin. Bitcoin is not an option to pick from when registering an account — only "pay card" and "PayPal". The fact that they allow Bitcoin payments after you have already compromised yourself by using their privacy-incompatible payment options is like saying:

Sure, you can have a cookie… but only after we’ve shot you in the head!

You get my point? It’s absurd of them to claim to support Bitcoin payments when they literally don’t. What point would there be to start using Bitcoin (and their .onion site, which just redirects to for the registration form) after you’ve already entered all your personal information and tied the account to your real-life identity? The same of course goes for PayPal (the less commented on them, the better).

This is not the first time I see this kind of behaviour on this site. It seems to be patrolled by people who violently defend companies’ lies and privacy violations, and censor anyone questioning it. I hope such is not the case, but considering how difficult it is to get an answer to anything these days, or even to have your question stay up and not get "closed" or deleted outright, it’s difficult to draw any other reasonable conclusion.