{"id":272748,"date":"2026-01-26T12:53:59","date_gmt":"2026-01-26T12:53:59","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/typo-hunter\/"},"modified":"2026-08-15T18:45:33","modified_gmt":"2026-08-15T18:45:33","slug":"typo-hunter","status":"publish","type":"plugin","link":"https:\/\/fon.wordpress.org\/plugins\/typo-hunter\/","author":9532416,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.8","stable_tag":"trunk","tested":"7.1","requires":"5.0","requires_php":"8.1","requires_plugins":null,"header_name":"Typo Reporter \u2013 Spelling & Proofreading","header_author":"Matt Biscay","header_description":"Turn your readers into proofreaders - crowdsource spelling and typo corrections.","assets_banners_color":"9fc6d8","last_updated":"2026-08-15 18:45:33","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/www.skyminds.net","rating":0,"author_block_rating":0,"active_installs":0,"downloads":733,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":[],"upgrade_notice":{"1.7.0":"<p>Improved concurrent rate-limit safety, cache consistency, operational maintenance, and automated test coverage.<\/p>","1.6.0":"<p>Improved analytics performance, cache handling, documentation, and translation resources.<\/p>","1.5.0":"<p>Improved performance, object-cache support, and analytics queries.<\/p>"},"ratings":[],"assets_icons":{"icon.svg":{"filename":"icon.svg","revision":3447098,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3447098,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3447098,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":[],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"The typo reporting modal with selected text pre-filled.","2":"The admin dashboard with a sortable report list.","3":"The settings screen for enabling text highlighting and database logging.","4":"The report link displayed below a post."}},"plugin_section":[],"plugin_tags":[26478,8223,1843,5540,27569],"plugin_category":[],"plugin_contributors":[81304],"plugin_business_model":[],"class_list":["post-272748","plugin","type-plugin","status-publish","hentry","plugin_tags-corrections","plugin_tags-crowdsource","plugin_tags-proofreading","plugin_tags-spelling","plugin_tags-typo","plugin_contributors-skyminds","plugin_committers-skyminds"],"banners":{"banner":"https:\/\/ps.w.org\/typo-hunter\/assets\/banner-772x250.jpg?rev=3447098","banner_2x":"https:\/\/ps.w.org\/typo-hunter\/assets\/banner-1544x500.jpg?rev=3447098","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/typo-hunter\/assets\/icon.svg?rev=3447098","icon":"https:\/\/ps.w.org\/typo-hunter\/assets\/icon.svg?rev=3447098","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Typo Reporter \u2013 Spelling &amp; Proofreading is a lightweight proofreading tool for WordPress. A reader spots a typo, selects the incorrect text, and submits a correction in a simple modal. You get the report; your content gets better.<\/p>\n\n<p>No external service. No complicated workflow. Just a fast way to turn readers into helpful contributors.<\/p>\n\n<h3>Core Features<\/h3>\n\n<p>\ud83c\udfaf <strong>Simple typo reporting<\/strong><\/p>\n\n<p>Visitors can click the \u201cReport a typo\u201d link below a post or select text and use <code>Ctrl+Enter<\/code> (<code>Cmd+Enter<\/code> on Mac) to open the reporting form.<\/p>\n\n<p>\ud83d\udcdd <strong>A focused review workflow<\/strong><\/p>\n\n<p>All reports are collected in the WordPress admin area, with the incorrect text, suggested correction, post, URL, and date available at a glance.<\/p>\n\n<p>\ud83d\udee1\ufe0f <strong>Built-in abuse protection<\/strong><\/p>\n\n<p>Rate limiting and duplicate detection help keep the report queue useful without adding another anti-spam service. Reports provide an in-modal submitting state and success\/error feedback without browser dialogs.<\/p>\n\n<p>\u26a1 <strong>Lightweight on the front end<\/strong><\/p>\n\n<p>Typo Reporter \u2013 Spelling &amp; Proofreading loads its assets only on single posts and pages. Report submissions use AJAX, so the plugin works well with page caching.<\/p>\n\n<p>\ud83c\udfa8 <strong>Easy to customize<\/strong><\/p>\n\n<p>The interface uses regular HTML and predictable <code>typohunter-*<\/code> CSS classes, making it straightforward to adapt to your theme.<\/p>\n\n<p>\ud83d\udd12 <strong>Privacy-conscious by design<\/strong><\/p>\n\n<p>IP addresses are hashed for rate limiting and are not stored with reports. Inputs are sanitized, validated, and protected with WordPress nonces.<\/p>\n\n<h3>Pro Features<\/h3>\n\n<p>Typo Reporter \u2013 Spelling &amp; Proofreading Pro adds:<\/p>\n\n<ul>\n<li>Analytics with trends and most-reported posts<\/li>\n<li>Instant, daily, or weekly email notifications<\/li>\n<li>CSV and PDF report exports<\/li>\n<li>30 reports per hour instead of 5<\/li>\n<li>Priority support<\/li>\n<\/ul>\n\n<h3>How It Works<\/h3>\n\n<ol>\n<li>A reader finds a typo in a post or page.<\/li>\n<li>They select the incorrect text and press <code>Ctrl+Enter<\/code> or <code>Cmd+Enter<\/code>, or click the report link.<\/li>\n<li>They enter the suggested correction and submit the report.<\/li>\n<li>You review the report in <strong>Typo Reporter \u2013 Spelling &amp; Proofreading &gt; Reports<\/strong>.<\/li>\n<li>You correct the content and keep publishing with confidence.<\/li>\n<\/ol>\n\n<p>Approved comments also include their own \u201cReport a typo\u201d link. Comment reports are linked to the specific comment in the admin report list.\nComment reporting is available to free and Pro users and can be enabled or disabled from <strong>Settings &gt; Comment Reporting<\/strong>.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>In WordPress, go to <strong>Plugins &gt; Add New<\/strong>.<\/li>\n<li>Search for <strong>Typo Reporter \u2013 Spelling &amp; Proofreading<\/strong>.<\/li>\n<li>Install and activate the plugin.<\/li>\n<li>Open <strong>Typo Reporter \u2013 Spelling &amp; Proofreading<\/strong> from the WordPress admin menu.<\/li>\n<li>In <strong>Settings<\/strong>, choose whether to enable text highlighting and database logging.<\/li>\n<\/ol>\n\n<p>You can also install Typo Reporter \u2013 Spelling &amp; Proofreading manually:<\/p>\n\n<ol>\n<li>Download the plugin ZIP file.<\/li>\n<li>Go to <strong>Plugins &gt; Add New &gt; Upload Plugin<\/strong>.<\/li>\n<li>Upload the ZIP file, install it, and activate the plugin.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20visitors%20report%20a%20typo%3F\"><h3>How do visitors report a typo?<\/h3><\/dt>\n<dd><p>They can click the \u201cReport a typo\u201d link displayed below single posts or, when enabled in Pro, after approved comments. They can also select text and press <code>Ctrl+Enter<\/code> on Windows\/Linux or <code>Cmd+Enter<\/code> on macOS. The form shows progress and submission feedback inside the modal.<\/p><\/dd>\n<dt id=\"where%20do%20i%20review%20reports%3F\"><h3>Where do I review reports?<\/h3><\/dt>\n<dd><p>Open <strong>Typo Reporter \u2013 Spelling &amp; Proofreading &gt; Reports<\/strong> in the WordPress admin menu. Reports include the selected text, correction, post, URL, and submission date. Reports from comments also link to the specific comment.<\/p><\/dd>\n<dt id=\"does%20typo%20reporter%20%E2%80%93%20spelling%20%26%20proofreading%20work%20with%20any%20theme%3F\"><h3>Does Typo Reporter \u2013 Spelling &amp; Proofreading work with any theme?<\/h3><\/dt>\n<dd><p>It is designed to work with any WordPress theme. The report link is added to enabled singular post types and approved comments, and the markup can be styled with your own CSS.<\/p><\/dd>\n<dt id=\"will%20typo%20reporter%20%E2%80%93%20spelling%20%26%20proofreading%20slow%20down%20my%20site%3F\"><h3>Will Typo Reporter \u2013 Spelling &amp; Proofreading slow down my site?<\/h3><\/dt>\n<dd><p>The front-end CSS and JavaScript load only on single posts and pages. Report submissions are handled asynchronously, and report data uses indexed database queries.<\/p><\/dd>\n<dt id=\"can%20i%20disable%20the%20keyboard%20shortcut%3F\"><h3>Can I disable the keyboard shortcut?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Typo Reporter \u2013 Spelling &amp; Proofreading &gt; Settings<\/strong> and disable <strong>Enable Text Highlighting<\/strong>. Visitors can still use the report link.<\/p><\/dd>\n<dt id=\"how%20does%20the%20plugin%20prevent%20spam%3F\"><h3>How does the plugin prevent spam?<\/h3><\/dt>\n<dd><p>Free users can submit up to 5 reports per IP per one-hour rate-limit window. Pro users can submit up to 30. Duplicate reports for the same location, text, and correction within five minutes are rejected. The IP is hashed for the cache key and the raw address is not stored.<\/p><\/dd>\n<dt id=\"can%20i%20disable%20comment%20reporting%3F\"><h3>Can I disable comment reporting?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Typo Reporter \u2013 Spelling &amp; Proofreading &gt; Settings<\/strong> and uncheck <strong>Comment Reporting<\/strong>. Comment reporting is enabled by default unless the option is explicitly unchecked.<\/p><\/dd>\n<dt id=\"is%20personal%20information%20stored%3F\"><h3>Is personal information stored?<\/h3><\/dt>\n<dd><p>Typo Reporter \u2013 Spelling &amp; Proofreading does not store IP addresses with reports. A hashed IP address is used temporarily for rate limiting. Review your own privacy policy and site configuration to determine the disclosures required for your installation.<\/p><\/dd>\n<dt id=\"can%20i%20export%20reports%3F\"><h3>Can I export reports?<\/h3><\/dt>\n<dd><p>Yes. Typo Reporter \u2013 Spelling &amp; Proofreading Pro can export reports to CSV or PDF, with optional date and post filters.<\/p><\/dd>\n<dt id=\"are%20wp-cli%20commands%20available%3F\"><h3>Are WP-CLI commands available?<\/h3><\/dt>\n<dd><p>Yes. Administrators can use <code>wp typo-hunter stats<\/code>, <code>wp typo-hunter reports list<\/code>, and <code>wp typo-hunter reports export<\/code>. Maintenance commands include <code>wp typo-hunter reports delete-old --before=YYYY-MM-DD --yes<\/code> and <code>wp typo-hunter cache flush<\/code>.<\/p><\/dd>\n<dt id=\"can%20i%20customize%20the%20report%20link%3F\"><h3>Can I customize the report link?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Typo Reporter \u2013 Spelling &amp; Proofreading &gt; Settings<\/strong> and change the report link text. You can also override the plugin\u2019s CSS classes in your theme.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.7.6 - August 2026<\/h4>\n\n<ul>\n<li>Added an optional Pro setting to enable or disable typo reporting on approved comments.<\/li>\n<li>Added comment-reporting protection on the server side for non-Pro users and disabled reports.<\/li>\n<li>Replaced browser alert dialogs with in-modal validation, loading, success, and error feedback.<\/li>\n<li>Added a submitting spinner and disabled form controls while reports are sent.<\/li>\n<\/ul>\n\n<h4>1.7.0 - August 2026<\/h4>\n\n<ul>\n<li>Made rate limiting atomic with short-lived object-cache locks for concurrent submissions.<\/li>\n<li>Added versioned cache-key invalidation for reports, counts, statistics, trends, and rankings.<\/li>\n<li>Added WP-CLI commands for statistics, report listing\/export, cleanup, and cache flushing.<\/li>\n<li>Added automated PHPUnit coverage for concurrency contention and bulk cache invalidation.<\/li>\n<li>Added a Pro setting to select the public post types where the reporter loads.<\/li>\n<\/ul>","raw_excerpt":"Typo Reporter \u2013 Spelling &amp; Proofreading helps you publish error-free content. Let visitors report spelling mistakes and typos directly from your c &hellip;","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/272748","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=272748"}],"author":[{"embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/skyminds"}],"wp:attachment":[{"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=272748"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=272748"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=272748"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=272748"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=272748"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fon.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=272748"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}