LinkSentry – Broken Content Reporter

Apraksts

LinkSentry is a lightweight WordPress plugin that allows your blog readers to easily report broken content. Whether it’s a broken download link, a dead external link, or a missing image, LinkSentry makes it simple for visitors to notify you.

Features:

  • Shortcode [linksentry] and Gutenberg block “Report Issue (LinkSentry)”
  • Accessible modal dialog with keyboard navigation and ARIA labels
  • Issue type selection (Download, Link, Image, Other)
  • Optional message and email fields
  • Stores reports as a custom post type with metadata
  • Per-IP throttling to prevent spam
  • Nonce verification and honeypot field for security
  • Optional email notifications to site administrators
  • Lightweight: assets only load where the shortcode/block is used
  • Fully internationalized (ready for translation)

Security:

  • Nonce verification on all submissions
  • Honeypot anti-spam field
  • Input sanitization and output escaping
  • Per-IP rate limiting via WordPress transients
  • IP addresses are hashed before storage

Admin Features:

  • View all reports in the WordPress admin
  • Custom columns: Issue Type, Page URL, Message, Submitted date
  • Settings page under Settings LinkSentry
  • Configure notification email, enable/disable notifications, throttle window
  • Customizable button and form labels

Shortcode Usage

The [linksentry] shortcode can be used anywhere in your posts, pages, or widgets.

Basic usage:
[linksentry]

With button style options:
[linksentry buttonStyle="button"]
[linksentry buttonStyle="text-link"]
[linksentry buttonStyle="large-box"]

With custom info text (for large-box style):
[linksentry buttonStyle="large-box" infoText="Found an issue? Let us know!"]

Available button styles:
* button – Default button style with icon (default)
* text-link – Text link with icon, underline on hover
* large-box – Full-width gray box with info text and button

Ekrānuzņēmumi

Bloki

Šis spraudnis nodrošina 1 bloku.

  • Report Issue (LinkSentry) Adds a Report an Issue button and modal for readers to report broken links, downloads, or images.

Uzstādīšana

  1. Upload the linksentry-broken-content-reporter folder to /wp-content/plugins/
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Insert the block “Report Issue (LinkSentry)” in any post/page, or use the shortcode [linkbrco] (or [linksentry] for backward compatibility)
  4. Configure settings under Settings LinkSentry (optional)

BUJ

Can guests submit reports?

Yes. Submissions are protected by nonce verification, honeypot field, and per-IP throttling. No login required.

Where do I see reports?

Reports appear in the WordPress admin sidebar under “Reports”. You can view, edit, and manage them like regular posts.

How does throttling work?

By default, each IP address can submit one report per 60 seconds. This can be adjusted in Settings LinkSentry.

Can I customize the button text?

Yes. Go to Settings LinkSentry to customize the box title and submit button label.

Are reports deleted when I uninstall the plugin?

No. Reports are kept by default when you uninstall. This prevents accidental data loss. You can manually delete them if needed.

Atsauksmes

Par šo spraudni nav atsauksmju.

Autori un izstrādātāji

“LinkSentry – Broken Content Reporter” ir atvērtā pirmkoda programmatūra. Šo spraudni ir veidojuši šādi cilvēki.

Līdzdalībnieki

Izmaiņu žurnāls

1.0.1

  • Fixed: Fatal error when using the [linksentry] / [linkbrco] shortcode without attributes (strict typing).
  • Fixed: Wrong page URL on sub-directory installs (duplicated sub-path).
  • Fixed: Duplicate HTML element IDs when multiple report boxes appear on one page (accessibility/validity).
  • Fixed: Block alignment selected in the editor is now applied on the front end.
  • Fixed: Block editor script now declares its dependencies for reliable loading.
  • Fixed: “Issue Type” admin column is now actually sortable.
  • Fixed: Notification emails no longer HTML-escape plain-text content.
  • Improved: Lighter unread-count query for the menu badge (runs once per request).
  • Removed: Debug logging and brittle third-party mail-plugin detection.
  • Fixed: Block now uses block API version 3 for WordPress 7.0+ iframe editor compatibility.
  • Fixed: Dashicons stylesheet is now loaded on the front end so button/modal icons render for logged-out visitors.
  • Fixed: Unread-count menu badge now uses the native WordPress red bubble and shows correctly on every admin page (previously unstyled outside the Reports screen).
  • Fixed: Notification email setting — an invalid stored address no longer silently disables notifications; it now falls back to the admin email, the field can be left empty as documented, and invalid input shows a settings error.
  • Compatibility: Tested up to WordPress 7.0.

1.0.0

  • Initial release
  • Custom post type for reports
  • Shortcode and Gutenberg block
  • AJAX submission with security features
  • Email notifications
  • Admin settings page
  • Full internationalization support
  • Multiple button styles (button, text-link, large-box) for block and shortcode
  • Report content visible in editor with full message display
  • Report details meta box showing all report information
  • Menu badge showing count of unread reports
  • Automatic email notifications to admin on new reports
  • Delete all reports functionality in settings
  • Option to delete reports on plugin uninstall
  • Reports marked as read when viewed
  • Removed “Add New Report” capability from backend
  • Improved email notification formatting with report links