canonical problem with wp show post plugin
-
Hi Sybre,
Having a little issue here.
I am using wp show posts plugin to show post archives. In pagination pages, like page-2, page-3. I find the canonical tag is pointed to the first page, not self-canonical.
Example:
In abc.com/news/page-2, the canonical tag is set to abc.com/news. Instead it should self-canonical to abc.com/news/page-2
Can you advise how to solve this problem? Thanks!
-
Howdy π
Sorry for the delayed reply!
When the canonical URL on a paginated page points to the main page, then the pagination isn’t managed via WordPress but via a custom implementation instead. I’m afraid TSF won’t support that, and I doubt it’s very efficient, either.
The pagination request must conform to the
/page/2/,?page=2(singular), or?paged=2(archive, comments, feed) standard set by WordPress, which is processed early (before WordPress’s initialization). Plugins/themes can congeal/transform these requests into their systems, and everything will work flawlessly. Anything else is not standard, backward (a solution to a problem that never existed), and will cause issues: not only with TSF but also with many other plugins not recognizing there’s pagination.Hi thanks for the reply.
After digging this for a lot and I agree with you.
Is there a major difference between the /page/2, ?page=2 for SEO and canonical purpose? I’m seeing some plugin output ?page(d)=2 format, I might give them a try if there is no significant SEO differences.
Or should I not use a plugin, instead I need to customize the archive.php template and use it on a static page?
Thanks!
Hello!
For WordPress, there’s no difference between the query or pretty pagination link. TSF will generate a “pretty” URL for you on both requests when you do not use “plain” permalinks.
If you have the time and skills, then I recommend modifying archive.php to your needs (in the child theme); a tailored website is a predictable website. I’m not sure what you want to achieve, however.
Hi Sybre,
I’ve been testing with regular post archive page. It seems like TSF only outputs a next/prev tag without self-canonical.
I have a URL for you to inspect the issue, can I contact you and send you the url by your contact form?
Hello again!
From your comments, everything seems to be working. But, no canonical URL is generated when the robots-meta is set to
noindex. Please see if you can allow indexing for paginated archives at the SEO Settings page.Cheers!
No need to tag me though; Iβll get 3 extra notifications if you do π
hi,
sorry for tagging.
here is the issue:
1. with the default post archive URL with category prefix, everything is fine. i.e. abc.com/category/news, page-1, page-2 all self-canonical and with prev/next rel link.
2. If I want to strip the category prefix, i.e. use a plugin like this:
<?php /* Plugin Name: Category Pagination Fix Plugin URI: https://wordpress.stackexchange.com/a/311858/110572 Description: Fix category pagination Version: 1.0.0 Author: Fayaz Ahmed Author URI: https://www.fayazmiraz.com/ */ function wpse311858_fix_category_pagination( $query_string = array() ) { if( isset( $query_string['category_name'] ) && isset( $query_string['name'] ) && $query_string['name'] === 'page' && isset( $query_string['page'] ) ) { $paged = trim( $query_string['page'], '/' ); if( is_numeric( $paged ) ) { // we are not allowing 'page' as a page or post slug unset( $query_string['name'] ); unset( $query_string['page'] ) ; // for a category archive, proper pagination query string is 'paged' $query_string['paged'] = ( int ) $paged; } } return $query_string; } add_filter( 'request', 'wpse311858_fix_category_pagination' );a. In the abc.com/news, archive page, the canonical is still the original URL with category base: abc.com/category/news, but with correct self-canonical in page-2, page-3.: abc.com/cateogry/news/page/2
b. Then I try to edit the canonical URL in category TSF section. If I input the canonical URL to be abc.com/news. Then all canonical URLs in page-2. page-3 are all the same: abc.com/news, without correct self canonical.
As you said, I might use an archive template for displaying posts, but I also need to strip the category prefix as well.
Conclusion,
with category prefix, all fine.
without category prefix, the canonical has some conflicts.
What did I do wrong? Thanks!
Hi,
Final update.
After testing with tons of post plugin and strip category plugin.
Finally find a nice plugin to strip category prefix safely and starting using archive instead of a static page.
Resolved, thank you for your support Sybre.
Cheers π Which plugin did you find helpful to strip the category prefix?
hi,
it’s No Category Base (WPML).
It can safely change URL back to category prefix after disabled, at least no problem for me yet.
The topic ‘canonical problem with wp show post plugin’ is closed to new replies.