{"id":355902,"date":"2026-09-01T14:56:48","date_gmt":"2026-09-01T14:56:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/smart-redirect-manager\/"},"modified":"2026-09-01T14:56:39","modified_gmt":"2026-09-01T14:56:39","slug":"digi-eye-redirects","status":"publish","type":"plugin","link":"https:\/\/lt.wordpress.org\/plugins\/digi-eye-redirects\/","author":23521464,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"7.0.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Digi Eye Redirects","header_author":"Digi Eye Designs","header_description":"Create, manage, and track URL redirects from a fast, modern admin interface. Custom database table, real-time hit counting, 404 tracking, CSV import\/export, and regex redirects.","assets_banners_color":"0b6266","last_updated":"2026-09-01 14:56:39","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":51,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.0":{"tag":"1.1.0","author":"digieyedesigns","date":"2026-09-01 14:56:39","revision":3676372}},"upgrade_notice":{"1.1.0":"<p>Fixes a redirect-matching bug affecting the &quot;ignore trailing slash differences&quot; setting, plus admin UI corrections. Recommended for all users.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3676372,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3676372,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3676372,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3676372,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"Dashboard: live counts pulled from the database.","2":"Redirects: search, filter, sort, and bulk actions.","3":"Add New Redirect: source, destination, redirect type, and advanced settings.","4":"Advanced Settings: query string preservation, case-sensitive matching, and regex mode.","5":"Import \/ Export: CSV import with a validation preview.","6":"Settings: defaults, performance, 404 tracking, and tools.","7":"Link Scanner: informational Coming Soon page."}},"plugin_section":[],"plugin_tags":[950,924,54707,726,32033],"plugin_category":[],"plugin_contributors":[278676],"plugin_business_model":[],"class_list":["post-355902","plugin","type-plugin","status-publish","hentry","plugin_tags-301-redirect","plugin_tags-404-redirect","plugin_tags-redirect-manager","plugin_tags-redirects","plugin_tags-url-redirect","plugin_contributors-digieyedesigns","plugin_committers-digieyedesigns"],"banners":{"banner":"https:\/\/ps.w.org\/digi-eye-redirects\/assets\/banner-772x250.png?rev=3676372","banner_2x":"https:\/\/ps.w.org\/digi-eye-redirects\/assets\/banner-1544x500.png?rev=3676372","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/digi-eye-redirects\/assets\/icon-128x128.png?rev=3676372","icon_2x":"https:\/\/ps.w.org\/digi-eye-redirects\/assets\/icon-256x256.png?rev=3676372","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Digi Eye Redirects lets administrators create, edit, disable, delete, import, and export URL redirects from a dedicated admin screen, with no page builder, e-commerce plugin, or other dependency required.<\/p>\n\n<p><strong>Core features<\/strong><\/p>\n\n<ul>\n<li>Custom database table (not a bloated wp_options entry) with indexed lookups, so performance holds up as your redirect list grows<\/li>\n<li>301, 302, 307, and 308 redirects, each with plain-language guidance on when to use it<\/li>\n<li>Redirect to a page\/post\/custom post type via a searchable content picker, or to any manual internal or external URL<\/li>\n<li>Live search, status\/type filters, sortable columns, and server-side pagination (20\/50\/100 per page)<\/li>\n<li>Inline enable\/disable and delete, plus bulk enable\/disable\/delete, all handled via AJAX with no full page reloads<\/li>\n<li>Automatic protection against duplicate active sources and redirect loops (including simple two-way loops)<\/li>\n<li>Optional regex redirects (off by default) with <code>$1<\/code>-style backreferences<\/li>\n<li>Optional query-string preservation and case-sensitive matching, per redirect<\/li>\n<li>CSV export and import, with a validation preview (total \/ valid \/ invalid \/ duplicate rows) before anything is committed<\/li>\n<li>Optional 404 tracking with one-click \"Create Redirect\" from any tracked URL<\/li>\n<li>Optional per-request redirect logging (hit counters are on by default and are much cheaper)<\/li>\n<li>A dashboard with live counts pulled straight from the database, not placeholder numbers<\/li>\n<li>All redirect, status, and setting changes apply immediately; no manual cache clearing is required for normal use<\/li>\n<\/ul>\n\n<p><strong>Security<\/strong><\/p>\n\n<ul>\n<li>Every write action requires the <code>manage_options<\/code> capability and a verified nonce<\/li>\n<li>All queries use <code>$wpdb-&gt;prepare()<\/code><\/li>\n<li>Destination URLs are restricted to <code>http(s)<\/code> or relative paths. Schemes like <code>javascript:<\/code> and <code>data:<\/code> are rejected both when a redirect is saved and again at the moment it's executed<\/li>\n<li>All output is escaped<\/li>\n<\/ul>\n\n<p><strong>Coming soon<\/strong><\/p>\n\n<ul>\n<li>Link Scanner is a planned feature for finding broken links, redirects, and redirect chains across your site. It is not available yet. The current release includes an informational \"Coming Soon\" page describing what it will do; it does not scan, crawl, or check any links.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>In your WordPress admin, go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong>.<\/li>\n<li>Choose the plugin zip file and click <strong>Install Now<\/strong>.<\/li>\n<li>Click <strong>Activate<\/strong>.<\/li>\n<li>A new <strong>Redirect Manager<\/strong> menu item will appear in the admin sidebar.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20is%20digi%20eye%20redirects%3F\"><h3>What is Digi Eye Redirects?<\/h3><\/dt>\n<dd><p>A plugin for creating and managing URL redirects from a dedicated WordPress admin screen, backed by its own database table rather than a single large option.<\/p><\/dd>\n<dt id=\"what%20redirect%20types%20are%20supported%3F\"><h3>What redirect types are supported?<\/h3><\/dt>\n<dd><p>301 (Permanent), 302 (Temporary), 307 (Temporary, strict), and 308 (Permanent, strict).<\/p><\/dd>\n<dt id=\"can%20i%20redirect%20to%20another%20domain%3F\"><h3>Can I redirect to another domain?<\/h3><\/dt>\n<dd><p>Yes. Choose \"Manual URL\" as the destination and enter a full <code>https:\/\/<\/code> URL. This is a deliberate, supported feature. Destination URLs are still restricted to safe schemes, and only administrators can create redirects.<\/p><\/dd>\n<dt id=\"can%20i%20select%20a%20wordpress%20page%20or%20post%20as%20the%20destination%3F\"><h3>Can I select a WordPress Page or Post as the destination?<\/h3><\/dt>\n<dd><p>Yes. The \"WordPress Content\" option provides a searchable picker across pages, posts, and public custom post types; the destination URL is filled in automatically.<\/p><\/dd>\n<dt id=\"can%20i%20manually%20enter%20a%20url%20instead%3F\"><h3>Can I manually enter a URL instead?<\/h3><\/dt>\n<dd><p>Yes. Switch to the \"Manual URL\" tab and enter any relative path or full http(s) URL.<\/p><\/dd>\n<dt id=\"can%20i%20disable%20a%20redirect%20without%20deleting%20it%3F\"><h3>Can I disable a redirect without deleting it?<\/h3><\/dt>\n<dd><p>Yes. Disabled redirects stay saved but do not run. You can re-enable them at any time.<\/p><\/dd>\n<dt id=\"can%20i%20create%20a%20large%20number%20of%20redirects%3F\"><h3>Can I create a large number of redirects?<\/h3><\/dt>\n<dd><p>Yes. Redirects are stored in a dedicated, indexed database table rather than a single option, and the admin list uses server-side pagination, so performance does not depend on how many redirects you have.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20regular%20expressions%3F\"><h3>Does the plugin support regular expressions?<\/h3><\/dt>\n<dd><p>Yes, as an optional advanced setting, off by default. A source like <code>\/old-product\/(.*)<\/code> can redirect to <code>\/products\/$1<\/code>.<\/p><\/dd>\n<dt id=\"can%20i%20import%20redirects%3F\"><h3>Can I import redirects?<\/h3><\/dt>\n<dd><p>Yes, from a CSV file. You get a preview (total, valid, invalid, and duplicate row counts) before anything is committed.<\/p><\/dd>\n<dt id=\"can%20i%20export%20redirects%3F\"><h3>Can I export redirects?<\/h3><\/dt>\n<dd><p>Yes, to a CSV file, from the Import \/ Export screen.<\/p><\/dd>\n<dt id=\"does%20this%20require%20any%20other%20plugin%3F\"><h3>Does this require any other plugin?<\/h3><\/dt>\n<dd><p>No. It's fully self-contained and doesn't require Elementor, WooCommerce, or anything else.<\/p><\/dd>\n<dt id=\"will%20my%20redirects%20still%20work%20if%20i%20deactivate%20the%20plugin%3F\"><h3>Will my redirects still work if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>No. Redirects only run while the plugin is active. Deactivating never deletes your data, though: your redirects, settings, and logs are all preserved and will work again the moment you reactivate.<\/p><\/dd>\n<dt id=\"does%20uninstalling%20the%20plugin%20delete%20my%20redirects%3F\"><h3>Does uninstalling the plugin delete my redirects?<\/h3><\/dt>\n<dd><p>Only if you've explicitly turned on <strong>Settings \u2192 Uninstall \u2192 Delete plugin data on uninstall<\/strong>. That setting is OFF by default, so a normal uninstall leaves your data in place.<\/p><\/dd>\n<dt id=\"does%20this%20track%20visitor%20ip%20addresses%3F\"><h3>Does this track visitor IP addresses?<\/h3><\/dt>\n<dd><p>No. Optional logging stores the requested URL, timestamp, and referrer only.<\/p><\/dd>\n<dt id=\"is%20link%20scanner%20available%3F\"><h3>Is Link Scanner available?<\/h3><\/dt>\n<dd><p>Not yet. Link Scanner is a planned future feature for finding broken links, redirects, and redirect chains. The current release includes only an informational \"Coming Soon\" page under the Link Scanner menu item describing what it will eventually do; no scanning happens today.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Added: Link Scanner \"Coming Soon\" informational page (no scanning functionality yet).<\/li>\n<li>Fixed: toggle switches across the admin were not vertically centered; rebuilt with a more robust flexbox-based layout.<\/li>\n<li>Fixed: the \"ignore trailing slash differences\" setting was saved but never actually used by the redirect matching engine; it is now correctly applied.<\/li>\n<li>Fixed: a same-site absolute destination URL (e.g. one chosen via the content picker) could resolve to a malformed doubled URL; destination resolution was corrected.<\/li>\n<li>Changed: plugin renamed to Digi Eye Redirects (from Smart Redirect Manager); author\/branding is Digi Eye Designs. No stored data, database tables, or settings were affected by the rename.<\/li>\n<li>Changed: removed the manual load_plugin_textdomain() call. WordPress.org-hosted plugins have translations loaded automatically since WordPress 4.6, so the manual call was redundant.<\/li>\n<li>Changed: removed a placeholder Plugin URI; none is set until a real one exists.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Create, manage, and track URL redirects from a fast, modern admin interface. By Digi Eye Designs.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/355902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=355902"}],"author":[{"embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/digieyedesigns"}],"wp:attachment":[{"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=355902"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=355902"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=355902"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=355902"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=355902"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/lt.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=355902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}