Skip to content

Releases: aliafshany/wp-where-is-this-text

v1.0.1 — WordPress.org submission ready

Choose a tag to compare

@aliafshany aliafshany released this 01 Sep 10:36

Prepares the plugin for the WordPress.org directory review queue.

  • All functions and constants renamed from the wit_/WIT_ prefix to wheretext_/WHERETEXT_. Three-letter prefixes collide in WordPress's shared global namespace and reviewers reject on it.
  • The submitted search term now passes through sanitize_text_field(). It was already safe — used only as a prepared LIKE value and escaped on output — but reviewers require visible sanitisation of superglobals.
  • Adds readme.txt, the format the directory parses for the plugin page. It is separate from README.md, which the directory ignores.

Filter names changed with the prefix. If you used them, update wit_option_location to wheretext_option_location, wit_variants to wheretext_variants, and wit_results to wheretext_results.

No change to what the plugin does or finds.

The attached ZIP is the exact package for WordPress.org submission.

v1.0.0 — Where Is This Text

Choose a tag to compare

@aliafshany aliafshany released this 01 Sep 10:24

First release.

Paste a line of text you can see on your site and get the exact admin screen that edits it, with a button that goes there. Read-only — it never changes anything.

What it finds that other search plugins miss

  • Page-builder content. json_encode() escapes non-ASCII by default, so Elementor's _elementor_data holds no readable Persian, Arabic, Hebrew, Greek, Cyrillic, CJK or accented Latin at all — only \uXXXX sequences. Searching for the text as displayed can never match it. This searches the escaped form too.
  • Look-alike letters. Arabic ي/ك and Persian ی/ک are different code points that render almost identically. Both spellings are searched.
  • Widgets, properly. Resolves the specific instance and names the sidebar it sits in, and says whether it is live or parked in Inactive Widgets — so you don't edit the dead copy.

When nothing matches, it narrows

The usual cause of "found nothing" is a heading and its subtitle pasted as one line, which no single row contains. It retries with shorter phrases and tells you which one hit.

Safety

SELECT statements only, no writes, no outbound requests. The single add_action() sits behind an is_admin() guard, so a visitor request attaches no callback and runs no query. manage_options plus a nonce, $wpdb->prepare() with esc_like() throughout, escaped output, capped rows, long columns truncated in SQL.

Install

Upload the ZIP under Plugins → Add New, or drop where-is-this-text.php into wp-content/mu-plugins/. Requires WordPress 5.6+ and PHP 7.4+. No dependencies, no settings page.

Docs: English · فارسی