Skip to content

SnipShare includes a moderation queue where administrators and editors can review pastes that have been flagged by users.

Requires Content Reporting to be enabled in Settings → General, and the snipshare/moderate ability (editor and administrator roles by default).


Go to SnipShare → Moderation in the WordPress admin.

Moderation queue

A badge on the Moderation menu item shows the number of pending reports.


When a logged-in user reports a paste, they choose one of these reasons:

Reason Description
Spam Promotional or repetitive content
Inappropriate Offensive or unsuitable content
Malicious Potentially harmful code (malware, exploits)
Copyright Unauthorised use of copyrighted material
Other Any other reason (with optional details)

Users can also provide an optional explanation in a text field.


The moderation page has three status tabs:

Tab Description
Pending New reports awaiting review
Reviewed Reports that have been actioned
Dismissed Reports that were closed without action

Each report card shows:

  • The reported paste (title, link, code preview)
  • Reporter username and timestamp
  • Report reason and details
  • Action buttons

For each pending report you have two options:

Confirms you’ve reviewed the content. Optionally check Trash the paste to move it to trash status at the same time.

  • Changes report status to reviewed
  • Records your user ID in reviewed_by and the current timestamp in reviewed_at
  • Fires the snipshare_report_reviewed action

Closes the report without taking action (e.g., the report was unfounded).

  • Changes report status to dismissed
  • No action is taken on the paste

Users with the snipshare/moderate ability can:

  • Access the Moderation admin page
  • Review and dismiss reports via the admin UI
  • Trash any paste via the REST API regardless of ownership (PUT /wp-json/snipshare/v1/admin/pastes/{id}/status)
  • Access the admin reports endpoint (GET /wp-json/snipshare/v1/admin/reports)

By default, editors and administrators have this ability. See Permissions Settings for how to customise role assignments.


Terminal window
GET /wp-json/snipshare/v1/admin/reports?status=pending
X-WP-Nonce: YOUR_NONCE

Requires the snipshare/moderate ability. Filter by ?status=pending, ?status=reviewed, or ?status=dismissed.

Terminal window
PUT /wp-json/snipshare/v1/admin/reports/{id}
X-WP-Nonce: YOUR_NONCE
Content-Type: application/json
{
"status": "reviewed",
"trash_paste": true
}
Terminal window
PUT /wp-json/snipshare/v1/admin/pastes/{id}/status
X-WP-Nonce: YOUR_NONCE
Content-Type: application/json
{ "status": "trashed" }