JRedirects 2.0
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/theme_layouts/detail.thtml
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/listings/detail.thtml
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/listings/detail_header.thtml

JRedirects PRO 2.0 - Joomla Extension

Updated April 04, 2025
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/elements/listing_detail_media.thtml
JRedirects PRO 2.0 - Joomla Extension

🔗 JRedirects 2.0 – Automate Your Redirects and Boost SEO

Revolutionize your Joomla URL management with automated 301 redirects that preserve search rankings

JRedirects is the essential Joomla extension for maintaining your website's SEO value during structural changes. By automatically creating 301 redirects when URLs change, it ensures both search engines and visitors can always find your content. The extension prevents broken links, eliminates duplicate content issues, and provides powerful tools for professional URL management.

🚀 New Version Available!

JRedirects 2.0 introduces enhanced redirect management, improved duplicate detection, and additional SEO tools to keep your site performing at its best.

✨ Key Features

🔄 Automated Redirects

Automatically creates 301 redirects when URLs change, preserving your search engine rankings and traffic.

🚫 Duplicate Prevention

Advanced detection and prevention of duplicate aliases that could harm your SEO performance.

⚙️ SEO Tools

Integrated .htaccess editor, robots.txt management, and Google Search Console integration.

🎥 See It in Action

Discover how JRedirects simplifies URL management while protecting your SEO investments. The video demonstrates its automatic redirect features in action.

🔍 Advanced Features

🔗 Smart URL Handling

Manages www/non-www redirects, custom domain transitions, and preserves indexing for URLs with/without IDs.

📊 SEO Protection

Maintains search rankings during site migrations and prevents 404 errors from broken links.

🛠️ Professional Tools

Includes bulk redirect management, mobile detection, and comprehensive redirect logs.

📌 Why Choose JRedirects?

The complete solution for managing URL changes while protecting your SEO investments:

  • Preserve Search Rankings: Automatic 301 redirects maintain your hard-earned SEO value
  • Eliminate 404 Errors: Users never hit dead ends when content moves
  • Save Time: No more manual redirect management
  • Improve User Experience: Seamless navigation even after site changes
  • Comprehensive Tools: Everything you need for professional URL management

❓ Frequently Asked Questions

What Joomla versions are supported?

JRedirects works with Joomla 2.5 through Joomla 5, ensuring compatibility across versions.

Does it work with multilingual sites?

Yes, it fully supports Joomla's multilingual system for international websites.

How does it handle SEO during site migrations?

It automatically creates proper 301 redirects to preserve your search rankings when moving content.

📥 Download JRedirects & Protect Your SEO Today!

🔑

Login to Download

Registration is free, but you need a subscription to download. Read our F.A.Q. for more details.

📂

Download Files

Login or Register First!

You need to be logged in to see and download the available files.

📧

Get Updates

Subscribe to our newsletter for the latest updates and news about JRedirects.

Don't hesitate to reach out if you need any previous versions!

Be sure to subscribe to our newsletter for the latest updates, exclusive offers, and more!

  

🔔

Stay Notified

Register to receive notifications when new versions are released.

 

Sign_In!
Subscribe to this content and receive updates directly in your inbox.
JRedirects PRO 2.0 - Joomla Extension
Loading...
 

com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/elements/listing_detail_media.thtml
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/reviews/editor_reviews.thtml
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/reviews/user_reviews.thtml

User reviews

There are no user reviews for this listing.
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/reviews/create.thtml
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/elements/login.thtml
Already have an account?
com_content_controller.phpfunction com_content_view
components/com_jreviews/jreviews/views/themes/default/elements/form_user_details.thtml
Ratings
🖱️ Ease of Use
How intuitive and user-friendly is the product? Can beginners quickly understand and navigate it, or does it require a steep learning curve?
🚀 Features & Functionality
Does the product provide all the essential features you need? Are the included tools and capabilities useful, well-designed, and effective for their intended purpose?
🎨 Customization & Flexibility
How easily can the product be tailored to meet your specific needs? Does it offer enough options, settings, and integrations to adapt to different use cases?
⚡ Performance & Speed
How efficiently does the product operate? Does it load quickly, run smoothly, and provide a fast, seamless user experience without slowing down your site?
🔒 Security & Reliability
How secure and stable is this product? Does it protect against vulnerabilities and function consistently without issues?
💰 Value for Money
Does this product provide good features and performance for its price? Is it worth the investment compared to similar options?
Comments
You will be able to upload media right after you submit your review.

Information

Joomla

WordPress

F.A.Q. | Section

Stay updated on social media!

Subscribe to our Newsletter!

Os Property Real Estate - Joomla Extension
DJ AudioList - Joomla Extension
Progressive Web App Maker Joomla Extension

S2Framework Debug Console

Database Queries (19)

  1. SET SQL_BIG_SELECTS=1
  2. SHOW TABLES LIKE '%_jreviews_config'
  3. SELECT value FROM j11th_jreviews_config WHERE id = 'cms_secret'
  4. SELECT name FROM j11th_jreviews_addons WHERE state = 1 ORDER BY ordering
  5. SELECT id, language FROM j11th_menu WHERE link LIKE "%com_comprofiler&view=userprofile" AND published = 1 AND type = "component"
  6. SELECT id, language FROM j11th_menu WHERE link LIKE "%com_comprofiler&view=registers" AND published = 1 AND type = "component"
  7. SELECT count(*) FROM j11th_jreviews_categories AS JreviewCategory WHERE JreviewCategory.id = 22 AND JreviewCategory.option = 'com_content' AND JreviewCategory.criteriaid > 0
  8. SELECT JreviewsCategory.id FROM j11th_jreviews_categories AS JreviewsCategory LEFT JOIN j11th_categories AS Category On JreviewsCategory.id = Category.id WHERE JreviewsCategory.`option`= "com_content" AND Category.published = 1 AND Category.access IN ( 1,5)
  9. SELECT Listing.id AS `Listing.listing_id`, Listing.alias AS `Listing.slug`, Listing.title AS `Listing.title`, Listing.introtext AS `Listing.summary`, Listing.fulltext AS `Listing.description`, Listing.images AS `Listing.images`, Listing.hits AS `Listing.hits`, Listing.catid AS `Listing.cat_id`, Listing.created_by AS `Listing.user_id`, Listing.created_by_alias AS `Listing.author_alias`, Listing.created AS `Listing.created`, Listing.modified AS `Listing.modified`, Listing.access AS `Listing.access`, Listing.state AS `Listing.state`, Listing.publish_up AS `Listing.publish_up`, Listing.publish_down AS `Listing.publish_down`, Listing.metakey AS `Listing.metakey`, Listing.metadesc AS `Listing.metadesc`, 'com_content' AS `Listing.extension`, Field.featured AS `Listing.featured`, JreviewsCategory.criteriaid AS `ListingType.listing_type_id`, Category.id AS `Category.cat_id`, Category.title AS `Category.title`, Category.alias AS `Category.slug`, Category.access AS `Category.access`, Category.params AS `Category.params`, Directory.id AS `Directory.dir_id`, Directory.title AS `Directory.title`, Directory.slug AS `Directory.slug`, User.id AS `User.user_id`, User.name AS `User.name`, User.username AS `User.username`, User.email AS `User.email`, User.block AS `User.block`, Claim.approved AS `Claim.approved`, Totals.user_rating AS `Review.user_rating`, Totals.user_rating_count AS `Review.user_rating_count`, Totals.user_criteria_rating AS `Review.user_criteria_rating`, Totals.user_criteria_rating_count AS `Review.user_criteria_rating_count`, Totals.user_comment_count AS `Review.user_review_count`, Totals.editor_rating AS `Review.editor_rating`, Totals.editor_rating_count AS `Review.editor_rating_count`, Totals.editor_criteria_rating AS `Review.editor_criteria_rating`, Totals.editor_criteria_rating_count AS `Review.editor_criteria_rating_count`, Totals.editor_comment_count AS `Review.editor_review_count`, Totals.media_count AS `Listing.media_count`, Totals.video_count AS `Listing.video_count`, Totals.photo_count AS `Listing.photo_count`, Totals.audio_count AS `Listing.audio_count`, Totals.attachment_count AS `Listing.attachment_count`, (Totals.media_count - Totals.media_count_user) AS `Listing.media_count_owner`, (Totals.video_count - Totals.video_count_user) AS `Listing.video_count_owner`, (Totals.photo_count - Totals.photo_count_user) AS `Listing.photo_count_owner`, (Totals.audio_count - Totals.audio_count_user) AS `Listing.audio_count_owner`, (Totals.attachment_count - Totals.attachment_count_user) AS `Listing.attachment_count_owner`, Totals.media_count_user AS `Listing.media_count_user`, Totals.video_count_user AS `Listing.video_count_user`, Totals.photo_count_user AS `Listing.photo_count_user`, Totals.audio_count_user AS `Listing.audio_count_user`, Totals.attachment_count_user AS `Listing.attachment_count_user` FROM j11th_content AS Listing LEFT JOIN j11th_jreviews_listing_totals AS Totals ON Totals.listing_id = Listing.id AND Totals.extension = 'com_content' LEFT JOIN j11th_jreviews_content AS Field ON Field.contentid = Listing.id LEFT JOIN j11th_jreviews_categories AS JreviewsCategory ON JreviewsCategory.id = Listing.catid AND JreviewsCategory.`option` = 'com_content' LEFT JOIN j11th_categories AS Category ON Category.id = Listing.catid AND Category.extension = 'com_content' LEFT JOIN j11th_jreviews_directories AS Directory ON Directory.id = JreviewsCategory.dirid LEFT JOIN j11th_users AS User ON User.id = Listing.created_by LEFT JOIN j11th_jreviews_claims AS Claim ON Claim.listing_id = Listing.id AND Claim.user_id = Listing.created_by AND Claim.approved = 1 WHERE 1 = 1 AND ( (Listing.id = 195) AND Listing.catid IN (22) AND Listing.state >= -1 )
  10. SELECT content_id AS listing_id, count(*) AS favored FROM j11th_jreviews_favorites AS Favorite WHERE Favorite.content_id IN (195) GROUP BY listing_id
  11. SELECT tmp.media_id, tmp.listing_id, tmp.review_id, tmp.media_type, tmp.media_function, tmp.likes_rank, tmp.main_media, media.likes_up, media.likes_total, media.created, media.listing_id, media.review_id, media.user_id, media.filename, media.file_extension, media.rel_path, media.title, media.description, media.duration, media.media_info, media.metadata, media.embed, media.published, media.approved, media.access, media.views, media.filesize, media.extension FROM ( SELECT media_id, listing_id, review_id, media_type, media_function, main_media, views, likes_rank, created, ordering, CASE WHEN @id != listing_id AND media_type = 'photo' AND ((review_id = 0 AND user_id = 948) OR main_media = 1) THEN @photo := 1 ELSE IF(media_type = 'photo' AND ((review_id = 0 AND user_id = 948) OR main_media = 1),@photo := @photo + 1,NULL) END AS photo_rank, CASE WHEN @id != listing_id AND media_type = 'video' AND ((review_id = 0 AND user_id = 948) OR main_media = 1) THEN @video := 1 ELSE IF(media_type = 'video' AND ((review_id = 0 AND user_id = 948) OR main_media = 1),@video := @video + 1,NULL) END AS video_rank, CASE WHEN @id != listing_id AND media_type = 'attachment' THEN @attachment := 1 ELSE IF(media_type = 'attachment',@attachment := @attachment + 1,NULL) END AS attachment_rank, CASE WHEN @id != listing_id AND media_type = 'audio' THEN @audio := 1 ELSE IF(media_type = 'audio',@audio := @audio + 1,NULL) END AS audio_rank, @id := listing_id FROM ( SELECT media_id, review_id, listing_id, user_id, media_type, media_function, likes_rank, likes_up, likes_total, created, main_media, ordering, views FROM j11th_jreviews_media WHERE listing_id IN (195) AND published = 1 AND approved = 1 AND access IN (1,5) AND extension = 'com_content' ) mtmp JOIN (SELECT @id := NULL, @photo := 0, @video := 0, @attachment := 0, @audio := 0) r ORDER BY main_media DESC, listing_id, media_type, created DESC ) tmp JOIN j11th_jreviews_media AS media ON media.media_id = tmp.media_id WHERE (tmp.photo_rank >= 0) OR (tmp.video_rank BETWEEN 1 AND 7) OR (tmp.attachment_rank > 0) OR (tmp.audio_rank > 0) ORDER BY tmp.main_media DESC, tmp.listing_id, tmp.media_type, tmp.created DESC
  12. SELECT Community.id AS `Community.user_id`, Community.id AS `Community.community_user_id`, Community.id AS `User.user_id`, Community.avatar AS `Community.avatar`, Community.avatarapproved AS `Community.avatarapproved`, Community.banned AS `Community.banned`, User.name AS `User.name`, User.username AS `User.username`, User.block As `User.block`, User.name AS `User.email` FROM j11th_comprofiler AS Community LEFT JOIN j11th_users AS User ON Community.id = User.id WHERE 1 = 1 AND ( Community.id IN (948) )
  13. SELECT rating_range, count(*) AS count FROM (SELECT CASE WHEN ROUND(rating,1) > 0 AND rating < 1.5 THEN 1 WHEN ROUND(rating,1) >= 1.5 AND ROUND(rating,1) < 2.5 THEN 2 WHEN ROUND(rating,1) >= 2.5 AND ROUND(rating,1) < 3.5 THEN 3 WHEN ROUND(rating,1) >= 3.5 AND ROUND(rating,1) < 4.5 THEN 4 WHEN ROUND(rating,1) >= 4.5 THEN 5 END as rating_range FROM j11th_jreviews_comments WHERE pid = 195 AND published = 1 AND mode = 'com_content' AND rating > 0 AND author = 0 ) AS ReviewRange GROUP BY rating_range
  14. SELECT Review.id AS `Review.review_id`, Review.pid AS `Review.listing_id`, Review.mode AS `Review.extension`, Review.created AS `Review.created`, Review.modified AS `Review.modified`, Review.userid AS `Review.user_id`, User.id AS `User.user_id`, CASE WHEN CHAR_LENGTH(User.name) THEN User.name ELSE Review.name END AS `User.name`, CASE WHEN CHAR_LENGTH(User.username) THEN User.username ELSE Review.username END AS `User.username`, User.block AS `User.block`, Review.email AS `User.email`, Review.ipaddress AS `User.ipaddress`, ReviewerRank.`rank` AS `User.reviewer_rank`, ReviewerRank.reviews AS `User.review_count`, Review.title AS `Review.title`, Review.comments AS `Review.comments`, Review.posts AS `Review.posts`, Review.author AS `Review.editor`, Review.published AS `Review.published`, IF(Review.rating=0,"na",Review.rating) AS `Rating.average_rating`, Review.vote_helpful AS `Vote.yes`, (Review.vote_total - Review.vote_helpful) AS `Vote.no`, (Review.vote_helpful/Review.vote_total)*Review.vote_helpful AS `Vote.helpful`, Review.owner_reply_text AS `Review.owner_reply_text`, Review.owner_reply_approved AS `Review.owner_reply_approved`, Review.owner_reply_created AS `Review.owner_reply_created`, Review.media_count AS `Review.media_count`, Review.video_count AS `Review.video_count`, Review.photo_count AS `Review.photo_count`, Review.audio_count AS `Review.audio_count`, Review.attachment_count AS `Review.attachment_count`, Review.listing_type_id AS `ListingType.listing_type_id` FROM j11th_jreviews_comments AS Review LEFT JOIN j11th_users AS User ON Review.userid = User.id LEFT JOIN j11th_jreviews_reviewer_ranks AS ReviewerRank ON Review.userid = ReviewerRank.user_id LEFT JOIN j11th_content AS Listing ON Listing.id = Review.pid LEFT JOIN j11th_jreviews_listing_totals AS Totals ON Totals.listing_id = Review.pid AND Totals.extension = 'com_content' LEFT JOIN j11th_jreviews_categories AS JreviewsCategory ON JreviewsCategory.id = Listing.catid AND JreviewsCategory.`option` = 'com_content' WHERE 1 = 1 AND ( Review.pid = 195 AND Review.mode = 'com_content' AND Review.published = 1 AND Review.author = 1 AND JreviewsCategory.option = 'com_content' ) GROUP BY Review.id ORDER BY `Review.created` DESC LIMIT 5
  15. SELECT Review.id AS `Review.review_id`, Review.pid AS `Review.listing_id`, Review.mode AS `Review.extension`, Review.created AS `Review.created`, Review.modified AS `Review.modified`, Review.userid AS `Review.user_id`, User.id AS `User.user_id`, CASE WHEN CHAR_LENGTH(User.name) THEN User.name ELSE Review.name END AS `User.name`, CASE WHEN CHAR_LENGTH(User.username) THEN User.username ELSE Review.username END AS `User.username`, User.block AS `User.block`, Review.email AS `User.email`, Review.ipaddress AS `User.ipaddress`, ReviewerRank.`rank` AS `User.reviewer_rank`, ReviewerRank.reviews AS `User.review_count`, Review.title AS `Review.title`, Review.comments AS `Review.comments`, Review.posts AS `Review.posts`, Review.author AS `Review.editor`, Review.published AS `Review.published`, IF(Review.rating=0,"na",Review.rating) AS `Rating.average_rating`, Review.vote_helpful AS `Vote.yes`, (Review.vote_total - Review.vote_helpful) AS `Vote.no`, (Review.vote_helpful/Review.vote_total)*Review.vote_helpful AS `Vote.helpful`, Review.owner_reply_text AS `Review.owner_reply_text`, Review.owner_reply_approved AS `Review.owner_reply_approved`, Review.owner_reply_created AS `Review.owner_reply_created`, Review.media_count AS `Review.media_count`, Review.video_count AS `Review.video_count`, Review.photo_count AS `Review.photo_count`, Review.audio_count AS `Review.audio_count`, Review.attachment_count AS `Review.attachment_count`, Review.listing_type_id AS `ListingType.listing_type_id`, Review.owner_reply_approved As `Review.owner_reply_approved`, Review.owner_reply_text As `Review.owner_reply_text` FROM j11th_jreviews_comments AS Review LEFT JOIN j11th_users AS User ON Review.userid = User.id LEFT JOIN j11th_jreviews_reviewer_ranks AS ReviewerRank ON Review.userid = ReviewerRank.user_id LEFT JOIN j11th_content AS Listing ON Listing.id = Review.pid LEFT JOIN j11th_jreviews_listing_totals AS Totals ON Totals.listing_id = Review.pid AND Totals.extension = 'com_content' LEFT JOIN j11th_jreviews_categories AS JreviewsCategory ON JreviewsCategory.id = Listing.catid AND JreviewsCategory.`option` = 'com_content' WHERE 1 = 1 AND ( Review.pid = 195 AND Review.mode = 'com_content' AND Review.published = 1 AND Review.author = 0 AND JreviewsCategory.option = 'com_content' ) GROUP BY Review.id ORDER BY `Review.created` DESC LIMIT 5
  16. SELECT COUNT(*) FROM j11th_jreviews_comments AS Review WHERE 1 = 1 AND ( Review.pid = 195 AND Review.mode = 'com_content' AND Review.published >= 0 AND Review.ipaddress = '216.73.216.40' )
  17. SELECT COUNT(*) FROM j11th_jreviews_comments AS Review WHERE 1 = 1 AND ( Review.pid = 195 AND Review.mode = 'com_content' AND Review.published >= 0 AND Review.author = 0 AND Review.userid = 0 )
  18. SELECT COUNT(*) FROM j11th_jreviews_comments AS Review WHERE 1 = 1 AND ( Review.pid = 195 AND Review.mode = 'com_content' AND Review.published >= 0 AND Review.author = 1 AND Review.userid = 0 )
  19. SELECT Listing.id AS `Listing.listing_id`, Listing.alias AS `Listing.slug`, Listing.title AS `Listing.title`, Listing.introtext AS `Listing.summary`, Listing.fulltext AS `Listing.description`, Listing.images AS `Listing.images`, Listing.hits AS `Listing.hits`, Listing.catid AS `Listing.cat_id`, Listing.created_by AS `Listing.user_id`, Listing.created_by_alias AS `Listing.author_alias`, Listing.created AS `Listing.created`, Listing.modified AS `Listing.modified`, Listing.access AS `Listing.access`, Listing.state AS `Listing.state`, Listing.publish_up AS `Listing.publish_up`, Listing.publish_down AS `Listing.publish_down`, Listing.metakey AS `Listing.metakey`, Listing.metadesc AS `Listing.metadesc`, 'com_content' AS `Listing.extension`, Field.featured AS `Listing.featured`, JreviewsCategory.criteriaid AS `ListingType.listing_type_id`, Category.id AS `Category.cat_id`, Category.title AS `Category.title`, Category.alias AS `Category.slug`, Category.access AS `Category.access`, Category.params AS `Category.params`, Directory.id AS `Directory.dir_id`, Directory.title AS `Directory.title`, Directory.slug AS `Directory.slug`, User.id AS `User.user_id`, User.name AS `User.name`, User.username AS `User.username`, User.email AS `User.email`, User.block AS `User.block`, Claim.approved AS `Claim.approved`, Totals.user_rating AS `Review.user_rating`, Totals.user_rating_count AS `Review.user_rating_count`, Totals.user_criteria_rating AS `Review.user_criteria_rating`, Totals.user_criteria_rating_count AS `Review.user_criteria_rating_count`, Totals.user_comment_count AS `Review.user_review_count`, Totals.editor_rating AS `Review.editor_rating`, Totals.editor_rating_count AS `Review.editor_rating_count`, Totals.editor_criteria_rating AS `Review.editor_criteria_rating`, Totals.editor_criteria_rating_count AS `Review.editor_criteria_rating_count`, Totals.editor_comment_count AS `Review.editor_review_count`, Totals.media_count AS `Listing.media_count`, Totals.video_count AS `Listing.video_count`, Totals.photo_count AS `Listing.photo_count`, Totals.audio_count AS `Listing.audio_count`, Totals.attachment_count AS `Listing.attachment_count`, (Totals.media_count - Totals.media_count_user) AS `Listing.media_count_owner`, (Totals.video_count - Totals.video_count_user) AS `Listing.video_count_owner`, (Totals.photo_count - Totals.photo_count_user) AS `Listing.photo_count_owner`, (Totals.audio_count - Totals.audio_count_user) AS `Listing.audio_count_owner`, (Totals.attachment_count - Totals.attachment_count_user) AS `Listing.attachment_count_owner`, Totals.media_count_user AS `Listing.media_count_user`, Totals.video_count_user AS `Listing.video_count_user`, Totals.photo_count_user AS `Listing.photo_count_user`, Totals.audio_count_user AS `Listing.audio_count_user`, Totals.attachment_count_user AS `Listing.attachment_count_user` FROM j11th_content AS Listing LEFT JOIN j11th_jreviews_listing_totals AS Totals ON Totals.listing_id = Listing.id AND Totals.extension = 'com_content' LEFT JOIN j11th_jreviews_content AS Field ON Field.contentid = Listing.id LEFT JOIN j11th_jreviews_categories AS JreviewsCategory ON JreviewsCategory.id = Listing.catid AND JreviewsCategory.`option` = 'com_content' LEFT JOIN j11th_categories AS Category ON Category.id = Listing.catid AND Category.extension = 'com_content' LEFT JOIN j11th_jreviews_directories AS Directory ON Directory.id = JreviewsCategory.dirid LEFT JOIN j11th_users AS User ON User.id = Listing.created_by LEFT JOIN j11th_jreviews_claims AS Claim ON Claim.listing_id = Listing.id AND Claim.user_id = Listing.created_by AND Claim.approved = 1 WHERE 1 = 1 AND ( Listing.id IN (195) )