Fix wp.org review r2: Plugin URI 404 and CPT prefix#33
Conversation
- Plugin URI and footer link to plugins.ettic.nl/opentrust (was 404) - Rename CPT slugs eotc_ to ettotc_ (fits 20-char post_type limit) - Bump to 1.2.1, changelog, scrub old URL from pot/po
📝 WalkthroughWalkthroughThis patch release (1.2.1) corrects the custom post type slug namespace from ChangesCPT slug normalization and version bump
🎯 2 (Simple) | ⏱️ ~10 minutes Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (2)
languages/open-trust-center-by-ettic.pot (1)
5-5:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winRegenerate the POT file to update the version header and satisfy CI.
While the Plugin URI msgid was correctly updated at line 25, the
Project-Id-Versionheader at line 5 still references1.2.0instead of1.2.1. Additionally, the pipeline is failing with an explicit error that the translation template is stale.Regenerate the POT file by running the WP-CLI command locally:
wp i18n make-pot . languages/open-trust-center-by-ettic.pot --slug=open-trust-center-by-ettic --domain=open-trust-center-by-ettic --exclude=dist,vendor,node_modules,languagesThis will ensure the version header is correct and all translatable strings are current.
Also applies to: 25-25
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@languages/open-trust-center-by-ettic.pot` at line 5, The POT file's Project-Id-Version header ("Project-Id-Version") is stale (shows 1.2.0) and the translation template must be regenerated; run the provided WP-CLI command (wp i18n make-pot . languages/open-trust-center-by-ettic.pot --slug=open-trust-center-by-ettic --domain=open-trust-center-by-ettic --exclude=dist,vendor,node_modules,languages) locally to rebuild the .pot so the Project-Id-Version header updates to 1.2.1 and all translatable strings (e.g., the Plugin URI msgid) are refreshed, then commit the regenerated POT.languages/open-trust-center-by-ettic-nl_NL.po (1)
4-4:⚠️ Potential issue | 🟡 Minor | ⚡ Quick winUpdate the Project-Id-Version header to 1.2.1.
The Plugin URI msgid was correctly updated at line 26, but the version string in the catalog header still references
1.2.0. This should be1.2.1to match the plugin version being released.📝 Proposed fix
-"Project-Id-Version: Open Trust Center by Ettic 1.2.0\n" +"Project-Id-Version: Open Trust Center by Ettic 1.2.1\n"🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@languages/open-trust-center-by-ettic-nl_NL.po` at line 4, Update the PO catalog header Project-Id-Version value from "1.2.0" to "1.2.1": locate the "Project-Id-Version: Open Trust Center by Ettic 1.2.0\n" entry in the PO file and change the version suffix to 1.2.1 so it matches the updated Plugin URI and release version.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@uninstall.php`:
- Around line 24-28: The uninstall cleanup only targets post types with the
'ettotc_' prefix (the array listing 'ettotc_policy', 'ettotc_subprocessor',
'ettotc_certification', 'ettotc_data_practice', 'ettotc_faq'), leaving legacy
'eotc_*' posts behind; update the uninstall logic to include legacy post types
as well by adding the equivalent 'eotc_policy', 'eotc_subprocessor',
'eotc_certification', 'eotc_data_practice', 'eotc_faq' entries to the
$ot_post_types array (or create a second legacy array and merge it before
deletion) so functions like the post deletion loop remove both namespaces.
---
Outside diff comments:
In `@languages/open-trust-center-by-ettic-nl_NL.po`:
- Line 4: Update the PO catalog header Project-Id-Version value from "1.2.0" to
"1.2.1": locate the "Project-Id-Version: Open Trust Center by Ettic 1.2.0\n"
entry in the PO file and change the version suffix to 1.2.1 so it matches the
updated Plugin URI and release version.
In `@languages/open-trust-center-by-ettic.pot`:
- Line 5: The POT file's Project-Id-Version header ("Project-Id-Version") is
stale (shows 1.2.0) and the translation template must be regenerated; run the
provided WP-CLI command (wp i18n make-pot .
languages/open-trust-center-by-ettic.pot --slug=open-trust-center-by-ettic
--domain=open-trust-center-by-ettic
--exclude=dist,vendor,node_modules,languages) locally to rebuild the .pot so the
Project-Id-Version header updates to 1.2.1 and all translatable strings (e.g.,
the Plugin URI msgid) are refreshed, then commit the regenerated POT.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 9bd3cb81-4be6-498a-9e2c-3c8079d650b4
📒 Files selected for processing (16)
assets/js/admin.jsincludes/class-ettic-otc-catalog.phpincludes/class-ettic-otc-chat-summarizer.phpincludes/class-ettic-otc-cpt.phpincludes/class-ettic-otc-io.phpincludes/data/certification-catalog.phpincludes/data/data-practice-catalog.phpincludes/data/faq-catalog.phpincludes/data/subprocessor-catalog.phplanguages/open-trust-center-by-ettic-nl_NL.polanguages/open-trust-center-by-ettic.potopen-trust-center-by-ettic.phpreadme.txttemplates/trust-center.phpuninstall.phpwpml-config.xml
| 'ettotc_policy', | ||
| 'ettotc_subprocessor', | ||
| 'ettotc_certification', | ||
| 'ettotc_data_practice', | ||
| 'ettotc_faq', |
There was a problem hiding this comment.
Include legacy eotc_* CPTs in uninstall cleanup.
Right now only ettotc_* post types are deleted. If legacy eotc_* posts still exist, uninstall will leave plugin content behind. Please include both namespaces in $ot_post_types (or a fallback second list) to guarantee full data removal.
💡 Suggested patch
$ot_post_types = [
+ // Current CPT slugs.
'ettotc_policy',
'ettotc_subprocessor',
'ettotc_certification',
'ettotc_data_practice',
'ettotc_faq',
+ // Legacy CPT slugs from early builds (cleanup on uninstall).
+ 'eotc_policy',
+ 'eotc_subprocessor',
+ 'eotc_certification',
+ 'eotc_data_practice',
+ 'eotc_faq',
];🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@uninstall.php` around lines 24 - 28, The uninstall cleanup only targets post
types with the 'ettotc_' prefix (the array listing 'ettotc_policy',
'ettotc_subprocessor', 'ettotc_certification', 'ettotc_data_practice',
'ettotc_faq'), leaving legacy 'eotc_*' posts behind; update the uninstall logic
to include legacy post types as well by adding the equivalent 'eotc_policy',
'eotc_subprocessor', 'eotc_certification', 'eotc_data_practice', 'eotc_faq'
entries to the $ot_post_types array (or create a second legacy array and merge
it before deletion) so functions like the post deletion loop remove both
namespaces.
Resolves the two issues in the WordPress.org 22 May review.
Plugin URI 404
CPT prefix
Housekeeping
Plugin Check on a clean distributable: 0 errors. Reviewer reply drafted in wporg-review/REPLY-2026-05-22.md.
Summary by CodeRabbit
Chores
Bug Fixes