Skip Navigation

[Waiting for user feedback] pagination not working on blog post page

This is the technical support forum for Toolset - a suite of plugins for developing WordPress sites without writing PHP.

Everyone can read this forum, but only Toolset clients can post in it. Toolset support works 6 days per week, 19 hours per day.

This topic contains 0 replies, has 1 voice.

Last updated by Christopher Amirian 2 days, 20 hours ago.

Assisted by: Christopher Amirian.

Author
Posts
#2797274
Screenshot 2025-02-20 095650.png

Hi.
Our website is a wordpress 6.7.1 + Toolset 2.9.2 + wpml (latest version of every single wpml plugin).
Wpml is managing 8 languages. English one is the main one.
We have a news section (blog posts) that you can see here: hidden link
that is perfectly working in english. As you can see, when you use the pagination buttons on the bottom of the page, the links are working seamlessly. So, if you click on "2", you are going to hidden link and the listing is correctly shown. Pagination eather.

But if you change language, and you use for example italian (hidden link ), when you click on the pagination buttons (ie: hidden link ), the pagination is not working and it's showing the right content for admin users but a not found content for guests.
We already tried on a local installation disabling everything but toolset and wpml (so even wp-rocket), switched our theme with the default Twenty Twenty-Five), but the only solution was to disable Toolset.

In the settings (Toolset > Access Control), in Post Types the Guest user read access option is activated everywhere.
Same on WPML Groups.
On "What to display for archives when there is no read permission" we have Display: "No posts found". So this is activating for guests on those kind of pages but we don't understand why, cause, as written before, the Guest user has the read access permission for everything.
Is there a way we could fix this?

#2797279

Minesh
Supporter

Languages: English (English )

Timezone: Asia/Kolkata (GMT+05:30)

Hello. Thank you for contacting the Toolset support.

That is really strange. Can you please send me admin access details and let me review whats going wrong with your setup.

*** Please make a FULL BACKUP of your database and website.***
I would also eventually need to request temporary access (WP-Admin and FTP) to your site. Preferably to a test site where the problem has been replicated if possible in order to be of better help and check if some configurations might need to be changed.

I have set the next reply to private which means only you and I have access to it.

#2798060

Christopher Amirian
Supporter

Languages: English (English )

Hi,

This is Christopher taking over this ticket.

Thank you for providing the login information of the staging website.

I am working on the website and till now I have no progress, if needed I will report this to the second tier support.

tank you for your patience as it might take time.

#2798314

Christopher Amirian
Supporter

Languages: English (English )

Hi, the issue is reported to second tier support.

it might take time for them to check and see what might be the issue cause.

Thank you for your patience.

#2799071

Hi. Do you have any update on the matter? It's a huge issue for our website.

#2799179

Christopher Amirian
Supporter

Languages: English (English )

Hi,

Thank you for your follow up. I checked and we are still working on the issue as this is not a normal issue and an exception on your installation.

I will get back to you as soon as I have news.

Thank you for your patiene.

#2799432

Christopher Amirian
Supporter

Languages: English (English )

Hi,

We have an answer fromt he second tier support.


The problem is that the client has set this up such that the post archive page (the blog page) has the same name as a Category, and that is breaking the rewrite rules.

Given that there is an Italian Category "News Eventi" I edited the Italian translation of the News & Events page ("News & Eventi") so that its slug was "news-e-eventi" instead of the problematic "news-eventi", and then there was no clash between the page and category of the same name and it worked as expected on my local copy.

For any language where they have this problem they should change either the category or the page slug so that they don't conflict.

Thank you.

#2799702
Screenshot 2025-03-06 172616.png

The problem seems to be NOT solved at all.
We checked in our local installation your solution and it didn't work at all.

I don't understand your solution. The post Category has a similar name, but different slug by itself ("eventi_it" against the post page that's "news-eventi").

Also, we tested it on the stage installation that we shared with you:
you removed tons of plugins and the whole theme from there (reverting to "Twenty Twenty-Two"), and even like that hidden link is returning 404.
The only way to solve it is to deactivate your plugin, then the pagination works again.

#2799998

Christopher Amirian
Supporter

Languages: English (English )

Hi,

Thank you for the check I asked the second tier support to double check this and will get back to you as soon as I have an answer

#2802216

Guys, do you have any solutions to the problem? That section of our website has been almost unusable for several days now. Please.

#2802219

Minesh
Supporter

Languages: English (English )

Timezone: Asia/Kolkata (GMT+05:30)

I've informed our 2nd tier to check if there is any workaround, please hold on for furtehr update.

#2803983

Christopher Amirian
Supporter

Languages: English (English )

Hi,

There is no workaround that we can share at the time being. If we manage to find a solution we will inform you here.

Thanks.

#2804579

Christopher Amirian
Supporter

Languages: English (English )

Hi,

Would you please add the code below to the functions.php file of your theme?

/**
 * Workaround for 404 issue on paginated blog page in secondary languages
 */
add_action( 'init', 'ts_access_wpml_workaround', 998 );
function ts_access_wpml_workaround(){

	if ( class_exists('OTGS\Toolset\Access\Controllers\PermissionsRead') ){

		$instance = OTGS\Toolset\Access\Controllers\PermissionsRead::get_instance();

		remove_action( 'init', array( $instance, 'set_frontend_read_permissions_action' ), 999);
	}
}

That should fix the issue that you are experiencing.

Thanks.