Skip to content

Address WordPress.org review: rename to Renderbit FAQ Structured Data (4.0.0) - #58

Merged
soham2008xyz merged 6 commits into
mainfrom
fix/wporg-review-cpt-prefix
Oct 23, 2026
Merged

soham2008xyz merged 6 commits into
mainfrom
fix/wporg-review-cpt-prefix

Conversation

@soham2008xyz

@soham2008xyz soham2008xyz commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

Pull Request

Description

Fixes everything raised in the WordPress.org Plugin Directory review of the 3.0.1 submission ("Review in Progress: FAQ JSON-LD Manager", 2026-10-20).

Name, slug and prefix (commit c716dc6)

  • The plugin is now Renderbit FAQ Structured Data, with slug and text domain renderbit-faq-structured-data and main file renderbit-faq-structured-data.php.
  • The review asks for prefixes of at least 4 characters, so every fqj_ / FQJ_ / fqj- name is now rfsd_ / RFSD_ / rfsd-. That covers functions, constants, the CPT (rfsd_faq), tables, options, meta keys, cron hooks, AJAX actions, nonces, menu slugs, script handles, JS globals, public filters and the WP-CLI command (wp rfsd, class RFSD\Rfsd_Cli).
  • No deprecated fqj_* filter aliases are kept. The changelog lists the new names.

Import from the old plugin (commit e5b9ffc)

  • The new slug makes this a separate plugin. rfsd_import_legacy_data() runs once per site, on plugins_loaded priority 5 and on activation (on every site with network activation), and:
    • moves faq_item posts and their fqj_assoc_* meta to rfsd_faq / rfsd_assoc_*. The old plugin then stops printing duplicate FAQPage output, and its uninstall can't delete them;
    • copies the settings, the URL migration report and the mapping rows. The data version is copied only when rows were copied, so data migration 3 still finds the old post rows; with no rows copied, the data migration reindexes every FAQ;
    • clears the old plugin's cron events.
  • The legacy names are read in one place, rfsd_legacy_storage_names().
  • Uninstall no longer touches faq_item posts.

Other review items (commit be884f2, carried over)

  • Guideline 11: the queue notice shows only on the plugin's own screens, and its text is translatable.
  • Select2 goes from 4.0.13 to 4.1.0.

Release (commit fe06ad6)

  • Version 4.0.0, because the slug and public names changed.
  • Changelog, upgrade notice, and a readme FAQ "I used FAQ JSON-LD Manager. How do I switch?": activate the new plugin first, then delete the old one.

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • Breaking change: new slug, post type, filters and WP-CLI command names
  • Documentation update

Checklist

  • My code follows the project's code style and conventions
  • I have read the CONTRIBUTING.md file
  • I have tested my changes thoroughly
  • I have added tests where appropriate (if applicable)
  • I have updated documentation where needed
  • All existing tests pass (if applicable)
  • The plugin activates and runs without errors: covered by the test suite, not yet checked by hand on a live site
  • Changes do not introduce security issues

Testing Instructions

  • composer lint: clean
  • composer test: 302 OK
  • composer test:multisite: 314 OK
  • npm test: 31 OK
  • composer build-zip && composer check-zip: OK; the zip folder is renderbit-faq-structured-data/

tests/php/test-legacy-import.php covers:

  • a fresh site
  • a full import from a data-version-2 site, through migration 3
  • an import with no old table
  • an existing new setting that is kept
  • a once-per-site run
  • hook order
  • activation

test-multisite.php covers network activation.

By hand: on a site running FAQ JSON-LD Manager 3.x with some FAQs, install this zip next to it and activate it. Check that the FAQs appear under the new menu and print JSON-LD once on their posts. Then deactivate and delete the old plugin, and check that nothing is lost.

Additional Notes

  • The GitHub repo name and Plugin URI are unchanged.
  • deploy-wporg.yml now deploys to the renderbit-faq-structured-data SVN slug. WordPress.org has to approve that slug first.

🤖 Generated with Claude Code

…ct2 4.1.0

- Register FAQs as `fqj_faq` (FQJ_POST_TYPE) instead of the generic
  `faq_item`. fqj_migrate_legacy_post_types() renames rows stored under a
  type in FQJ_LEGACY_POST_TYPES once per site, on plugins_loaded priority 5
  and on activation, so the schema upgrade, data migration 3 and the
  activation FAQ check all see the new type. Uninstall deletes both types.
- Show the queue notice only on the plugin's own screens (Guideline 11),
  and make its text translatable.
- Update the bundled Select2 from 4.0.13 to 4.1.0.
- Bump to 3.1.1.

Co-Authored-By: Claude <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-23T09:57:25.739451Z be884f2 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@codacy-production

codacy-production Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

🟢 Metrics 203 complexity · 9 duplication

Metric Results
Complexity 203
Duplication 9

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: be884f2c97

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread faq-jsonld.php Resolved
Comment thread assets/vendor/select2/select2.css Resolved
soham2008xyz and others added 3 commits October 23, 2026 15:29
WordPress.org review: the name and slug were too generic, and prefixes
must be at least 4 characters. Plugin name, slug and text domain become
renderbit-faq-structured-data; every fqj_/FQJ_/fqj- name becomes
rfsd_/RFSD_/rfsd-, including the CPT (rfsd_faq), tables, options, meta,
hooks, public filters, AJAX actions, JS globals and the WP-CLI command
(wp rfsd). The main file is renderbit-faq-structured-data.php.

Co-Authored-By: Claude <noreply@anthropic.com>
The new slug makes this a separate plugin, so sites switch by installing
it next to FAQ JSON-LD Manager. rfsd_import_legacy_data() runs once per
site (plugins_loaded priority 5 and activation) and:
- moves faq_item posts and their association meta to rfsd_faq, so the old
  plugin stops printing duplicate FAQPage output and its uninstall cannot
  delete them;
- copies settings, the URL migration report and the mapping rows (with the
  data version only when rows were copied, so migration 3 still sees the
  old post rows; otherwise the data migration reindexes everything);
- clears the old plugin's cron events.
Uninstall no longer deletes faq_item posts, which belong to the old plugin.

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
@soham2008xyz soham2008xyz changed the title Address WordPress.org review: prefixed post type, scoped notice, Select2 4.1.0 Address WordPress.org review: rename to Renderbit FAQ Structured Data (4.0.0) Oct 23, 2026
soham2008xyz and others added 2 commits October 23, 2026 15:37
…t2 4.0 result styles

- rfsd_import_legacy_data() now requires fqj_db_version or fqj_settings,
  which only FAQ JSON-LD Manager writes, so another plugin's faq_item posts
  are never taken over.
- When a reused Select2 script has no known stylesheet, the bundled 4.1 CSS
  gets the 4.0 aria-selected result rules inline, so the highlighted and
  selected results stay visible.

Co-Authored-By: Claude <noreply@anthropic.com>
The JS file renames made Codacy report the existing no-undef (rfsdAdmin,
rfsdHealth from wp_localize_script) and no-redeclare (select) findings as
new.

Co-Authored-By: Claude <noreply@anthropic.com>
@soham2008xyz
soham2008xyz merged commit 1676324 into main Oct 23, 2026
17 checks passed
@soham2008xyz
soham2008xyz deleted the fix/wporg-review-cpt-prefix branch October 23, 2026 13:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant