Skip to content

PTC accessibility-checker (1985): Automatic Translations August 06, 2025 17:05:39460717 - #1177

Closed
SteveJonesDev wants to merge 16 commits into
developfrom
automatic_translations_august-06-2025-17-05-39460717
Closed

PTC accessibility-checker (1985): Automatic Translations August 06, 2025 17:05:39460717#1177
SteveJonesDev wants to merge 16 commits into
developfrom
automatic_translations_august-06-2025-17-05-39460717

Conversation

@SteveJonesDev

@SteveJonesDev SteveJonesDev commented Aug 6, 2025

Copy link
Copy Markdown
Member

For more information go to https://app.ptc.wpml.org/#/dashboard/merge-requests-history/1985

Summary by CodeRabbit

  • New Features

    • Added new translation entries in multiple languages for messages related to clearing accessibility issues, including prompts, status updates, and error messages.
    • Expanded localization for promotional messages and site health accessibility checks, including new discount offers, upgrade prompts, and review requests.
  • Bug Fixes

    • Updated and extended translations to cover new frontend and site health features, ensuring consistent user experience across supported languages.
  • Style

    • Reformatted translation files from multi-line to compact single-line JSON for improved efficiency and consistency.
  • Documentation

    • Updated translation references and metadata, including creation dates and source references in translation files.

@coderabbitai

coderabbitai Bot commented Aug 6, 2025

Copy link
Copy Markdown
Contributor

Walkthrough

This update reformats numerous language JSON files for the Accessibility Checker plugin from multi-line, pretty-printed structures to single-line minified JSON. Additionally, new translation keys related to clearing issues and error handling are added across several locales. Corresponding .po translation files are also updated with new promotional, site health, and frontend UI messages.

Changes

Cohort / File(s) Change Summary
Minified JSON Formatting
languages/accessibility-checker-*-2babf73ad0b848216944ffff693aa351.json, ...-4aeb45733c7671c6641789798428b69d.json, ...-95b093794875bec5eeac2e02bfe32541.json, ...-c6b6e50c6acd7c42c9d09e857f9ed6b0.json, ...-ffd08c762bdabd23386ea03007811e0f.json
Reformatted translation JSON files from multi-line to single-line minified JSON. No changes to translation keys or values; only whitespace and formatting were altered.
New Issue Clearing & Error Translations
languages/accessibility-checker-*-b93b9e514c44a41f97246123aa57f5c4.json, languages/accessibility-checker-fi_FI-b93b9e514c44a41f97246123aa57f5c4.json
Added new translation keys for "Clear Issues," related confirmation, status, and error messages. Existing translations preserved, now in minified JSON format.
.po File Updates for Promotions & Site Health
languages/accessibility-checker-*.po, languages/accessibility-checker-fi.po, languages/accessibility-checker-fi_FI-b93b9e514c44a41f97246123aa57f5c4.json
Updated translation files with new promotional messages (e.g., Black Friday, GAAD), site health accessibility check strings, frontend UI messages, and new error handling entries. Outdated promotions removed or replaced.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant UI
    participant TranslationFile
    participant Backend

    User->>UI: Click "Clear Issues"
    UI->>TranslationFile: Fetch "Clear Issues" prompt
    UI->>User: Show confirmation prompt
    User-->>UI: Confirm action
    UI->>Backend: Request to clear issues
    Backend-->>UI: Respond with status (success/failure/error)
    UI->>TranslationFile: Fetch appropriate status message
    UI->>User: Display result message
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~15–25 minutes

Possibly related PRs

Poem

In a warren of code, translations did sprawl,
Now minified neat, they’re a joy for us all.
New messages for clearing, with errors in tow,
Site health and promos in every locale now show.
A hop, a skip, and a carrot to cheer—
This rabbit says: “Great changes are here!” 🥕✨

Note

⚡️ Unit Test Generation is now available in beta!

Learn more here, or try it out under "Finishing Touches" below.

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch automatic_translations_august-06-2025-17-05-39460717

🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai generate unit tests to generate unit tests for this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Summary of Changes

Hello @SteveJonesDev, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request primarily focuses on updating and reformatting the localization files for the accessibility-checker plugin across multiple languages. It introduces new strings for upcoming promotional events and enhances the messaging around site health checks related to accessibility. The changes streamline the JSON translation files into a single-line format and update the .po files with the latest translated content and new feature-related texts.

Highlights

  • Automated Localization Updates: The pull request includes an automated update to various language localization files, reformatting some JSON files to a single line and updating translation strings.
  • New Promotional Content: New promotional messages related to 'Black Friday special' and 'Global Accessibility Awareness Day' have been added to the translation files.
  • Site Health Check Enhancements: Strings for enhanced site health checks, focusing on accessibility issues and post type configurations, have been introduced.
  • Improved Issue Management Messaging: New translation strings related to clearing issues have been added, which might indicate new functionality or improved messaging for managing accessibility issues.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments or fill out our survey to provide feedback.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@github-actions

github-actions Bot commented Aug 6, 2025

Copy link
Copy Markdown
Contributor

The POT or JSON translation files have changed. Please update the translation files in your PR to keep translations up to date.
The updated files are available in the artifacts of this workflow run: https://github.com/equalizedigital/accessibility-checker/actions/runs/16784596494

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Code Review

This pull request appears to be an automated update for translations. It includes minification of JSON language files and updates to PO files with new translation strings for multiple languages.

My review focuses on the structure and completeness of these translation files. I've found a couple of untranslated strings in the Turkish localization file (tr_TR.po) that should be addressed. Otherwise, the changes look good.


#: admin/class-admin-notices.php:130
msgid "Upgrade to a paid version of Accessibility Checker from November 25th to December 3rd and get 30% off! Full site scanning, site-wide open issues report, ignore logs, and more."
msgstr "Upgrade to a paid version of Accessibility Checker from November 25th to December 3rd and get 30% off! Full site scanning, site-wide open issues report, ignore logs, and more."

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

medium

This translation string appears to be untranslated. The msgstr is the same as the msgid. Please provide the Turkish translation for this marketing message.

#: admin/class-admin-notices.php:288
#: admin/class-admin-notices.php:216
msgid "🎉 Get 25% off Accessibility Checker Pro in honor of Global Accessibility Awareness Day! 🎉"
msgstr "🎉 Get 25% off Accessibility Checker Pro in honor of Global Accessibility Awareness Day! 🎉"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

medium

This translation string appears to be untranslated. The msgstr is the same as the msgid. Please provide the Turkish translation for this marketing message.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 40

🔭 Outside diff range comments (2)
languages/accessibility-checker-sk_SK.po (1)

5-13: Add mandatory gettext headers (Plural-Forms, Last-Translator, Language-Team).

The updated POT creation date is recorded (Line 12), yet the critical PO headers that localisation tooling relies on are still placeholders / missing:

  • Plural-Forms is absent – Slovak requires nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;
  • Last-Translator and Language-Team still contain boiler-plate placeholders.

Without these, msgfmt compilation may warn/fail and plural strings will not be selected correctly at runtime.

 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language-Team: Slovak Translation Team <translations@example.com>\n"
+"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"

Please replace the placeholders with real values and add the Plural-Forms line before generating the .mo.

languages/accessibility-checker-da_DK.po (1)

3-15: Add Plural-Forms header to prevent compilation/runtime failures

The PO header is still missing a Plural-Forms: entry for Danish (e.g. Plural-Forms: nplurals=2; plural=(n != 1);\n).
Without it, msgstr[1] plural branches introduced elsewhere in this file will be ignored or trigger a compile-time error in msgfmt, breaking translations at runtime.
Please add the appropriate header line before committing.

♻️ Duplicate comments (28)
languages/accessibility-checker-uk-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Same minification concern noted earlier

See the comment on the Vietnamese file; the same readability trade-off applies here.

languages/accessibility-checker-sk_SK-4aeb45733c7671c6641789798428b69d.json (1)

1-1: Same minification concern noted earlier

See the comment on the Vietnamese file; the same readability trade-off applies here.

languages/accessibility-checker-bg_BG-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Same minification concern noted earlier

See the comment on the Vietnamese file; the same readability trade-off applies here.

languages/accessibility-checker-et-ffd08c762bdabd23386ea03007811e0f.json (2)

1-1: Same metadata issues found – lang:"en" and placeholder date

The Estonian file also reports lang:"en" while the locale is et. Confirm this is intentional or regenerate with correct headers.


1-1: Re-evaluate decision to store minified JSON in VCS

As noted for Bulgarian, pretty-printed JSON eases code-review and merge conflict resolution.

languages/accessibility-checker-hu_HU-2babf73ad0b848216944ffff693aa351.json (2)

1-1: Header metadata mismatch (lang:"en" vs hu)

Same concern applies to the Hungarian file—please verify.


1-1: Minified JSON impacts maintainability

See earlier remark; consider keeping pretty-printed sources.

languages/accessibility-checker-nb_NO-4aeb45733c7671c6641789798428b69d.json (2)

1-1: Locale header inconsistent

lang:"en" inside a Norwegian Bokmål file; confirm correctness.


1-1: Minification trade-off

Same readability trade-off applies.

languages/accessibility-checker-da_DK-ffd08c762bdabd23386ea03007811e0f.json (2)

1-1: Metadata validation required

Danish file still declares lang:"en" and contains a placeholder revision date. Validate regeneration pipeline.


1-1: Minified JSON note

Refer to earlier comment on keeping human-readable JSON in VCS.

languages/accessibility-checker-lv-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Same lang header mismatch as noted for id_ID

The "lang" field is "en" but this is a Latvian bundle. See previous comment; the concern applies here as well.

languages/accessibility-checker-tr_TR-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Same lang header mismatch as noted for id_ID

"lang" is "en" instead of "tr_TR". Please verify.

languages/accessibility-checker-da_DK-2babf73ad0b848216944ffff693aa351.json (1)

1-1: Same lang header mismatch as noted for id_ID

Header shows "lang":"en"; expected "da_DK".

languages/accessibility-checker-id_ID-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Same lang header mismatch as noted for id_ID

The second Indonesian bundle also carries "lang":"en".

languages/accessibility-checker-sl_SI-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Same plural-forms issue in the editor bundle

Replicate the 4-form plural rule here as well to keep both Slovenian JSON bundles consistent.

languages/accessibility-checker-nb_NO-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Same lang metadata mismatch as noted in the Hungarian file.

The value should be nb (or nb_NO) instead of en; otherwise the Norwegian bundle may never load.
See earlier comment for details.

languages/accessibility-checker-ko_KR-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Repeated lang field error – still set to en.

For Korean the correct value is ko.
Please apply the same fix.

languages/accessibility-checker-nb_NO-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: lang value incorrect (copy-paste of English).

Change "lang":"en""lang":"nb" so the frontend highlighter bundle can resolve the Norwegian strings.

languages/accessibility-checker-sk_SK-ffd08c762bdabd23386ea03007811e0f.json (1)

1-1: Incorrect lang metadata – should be sk.

The Slovak translation file still advertises en; please correct.

languages/accessibility-checker-hu_HU-ffd08c762bdabd23386ea03007811e0f.json (1)

1-1: See earlier note about translation-revision-date placeholder

languages/accessibility-checker-lv-ffd08c762bdabd23386ea03007811e0f.json (1)

1-1: See earlier note about translation-revision-date placeholder

languages/accessibility-checker-nb_NO-2babf73ad0b848216944ffff693aa351.json (1)

1-1: See earlier note about translation-revision-date placeholder

languages/accessibility-checker-bg_BG-2babf73ad0b848216944ffff693aa351.json (1)

1-1: See earlier note about translation-revision-date placeholder

languages/accessibility-checker-ko_KR-2babf73ad0b848216944ffff693aa351.json (1)

1-1: Same lang mismatch as noted for cs_CZ – value is "en" but should be "ko".
See earlier comment for details and fix.

languages/accessibility-checker-sk_SK-2babf73ad0b848216944ffff693aa351.json (1)

1-1: Duplicate of the lang property issue – replace "en" with "sk".

languages/accessibility-checker-ko_KR-b93b9e514c44a41f97246123aa57f5c4.json (1)

1-1: Duplicate of the lang property issue – replace "en" with "ko".

languages/accessibility-checker-sl_SI-b93b9e514c44a41f97246123aa57f5c4.json (1)

1-1: Duplicate of the lang property issue – replace "en" with "sl".

🧹 Nitpick comments (29)
languages/accessibility-checker-uk-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Placeholder translation-revision-date still present

The translation-revision-date field is set to the default YEAR-MO-DA HO:MI+ZONE placeholder emitted by WP-CLI. Please replace it with an actual timestamp (or remove the field) before shipping; otherwise WordPress treats the file as stale and may not load it correctly.

-"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE"
+"translation-revision-date":"2025-08-06 17:05+0000"
languages/accessibility-checker-lv-2babf73ad0b848216944ffff693aa351.json (1)

1-1: Minifying source translation files hurts diff readability

Shipping minified JSON is fine for production, but committing it minified removes all diff granularity and makes code-review practically impossible. Consider:

  1. Keeping the pretty-printed .json in the repository.
  2. Minifying as a build artefact (e.g., build/ or release ZIP) via CI.

This preserves reviewability while still delivering the lean payload to users.

languages/accessibility-checker-uk-ffd08c762bdabd23386ea03007811e0f.json (1)

1-1: Placeholder translation-revision-date not replaced

The value "YEAR-MO-DA HO:MI+ZONE" is a scaffold placeholder. Leaving it unchanged makes it impossible to know when the file was generated and causes warnings in translation tooling. Replace with an ISO timestamp, e.g. 2025-08-06 17:05+0000.

languages/accessibility-checker-et-2babf73ad0b848216944ffff693aa351.json (1)

1-1: Consider committing pretty-printed JSON for diff readability

Storing translation files as one ultra-long line complicates reviews and source-control diffs while providing negligible size savings in a git repository. Running wp i18n make-json --no-purge --pretty-print (or piping through jq .) before committing keeps the file readable without affecting how WordPress consumes it.

languages/accessibility-checker-vi-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Missing newly-added “Clear Issues” UI strings – regenerate JSON for this locale

The Vietnamese .po file in the PR contains the new strings ("Clear Issues", confirmation prompt, status messages, error text, etc.) but they are absent from this JSON.
Without them, the editor UI will fall back to English for those messages at runtime.

Please re-run wp i18n make-json (or the project-specific build step) for the vi locale so the JSON bundle for editorApp.bundle.js is generated and committed.

languages/accessibility-checker-vi-4aeb45733c7671c6641789798428b69d.json (1)

1-1: Consider keeping pretty-printed source and generating minified JSON at build time

Storing translations as a single-line blob makes diffs and manual reviews difficult. A common pattern is to commit human-readable, pretty-printed files and run a minifier during the release/build pipeline so production assets stay compact while the repo remains review-friendly.

languages/accessibility-checker-bg_BG-ffd08c762bdabd23386ea03007811e0f.json (1)

1-1: One-line minification hurts diff readability

Minified JSON is smaller but almost impossible to review in future diffs. Consider committing prettified JSON and letting the build process handle minification.

languages/accessibility-checker-ko_KR-ffd08c762bdabd23386ea03007811e0f.json (1)

1-1: Minification-only change is fine, but consider repository readability

No semantic content changed—just whitespace removal—so this is functionally safe.
For future PRs, think about keeping human-readable, pretty-printed JSON in VCS and performing minification as a build-step artifact to avoid giant one-line diffs that are hard to review.

languages/accessibility-checker-nb_NO-b93b9e514c44a41f97246123aa57f5c4.json (1)

1-1: Same readability concern as other locale files

The minified one-liner is functionally OK, but consider storing formatted JSON and generating minified assets during build to keep diffs approachable.

languages/accessibility-checker-cs_CZ-2babf73ad0b848216944ffff693aa351.json (1)

1-1: Minification is technically fine, but consider keeping human-readable sources.

Storing fully-minified JSON in git makes future diff reviews and manual translation tweaks harder. A common pattern is:

  1. Commit pretty-printed .json (or rely on the canonical .po) for translators/reviewers.
  2. Generate the single-line bundle during the build/release step.

That keeps diffs meaningful while still shipping a minified asset.

languages/accessibility-checker-cs_CZ-4aeb45733c7671c6641789798428b69d.json (1)

1-1: Placeholder translation-revision-date not replaced

"YEAR-MO-DA HO:MI+ZONE" should be substituted by WP-CLI during the build.
Ship a real timestamp or omit the field to avoid misleading metadata.

languages/accessibility-checker-id_ID-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Missing real revision date

Same placeholder issue as the Czech file – please populate or drop.

languages/accessibility-checker-lt_LT-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Placeholder revision date

Populate translation-revision-date before committing.

languages/accessibility-checker-sk_SK-95b093794875bec5eeac2e02bfe32541.json (1)

1-1: Timestamp placeholder not replaced

Fill in translation-revision-date.

languages/accessibility-checker-bg_BG-c6b6e50c6acd7c42c9d09e857f9ed6b0.json (1)

1-1: Replace the translation-revision-date placeholder with an actual timestamp

The value YEAR-MO-DA HO:MI+ZONE is a template token that should be replaced (e.g., 2025-08-06 15:30+0000). WordPress core does not fail on a placeholder, but shipping production files with it violates the meta-data spec and can cause confusion when debugging localisation issues.

languages/accessibility-checker-cs_CZ-b93b9e514c44a41f97246123aa57f5c4.json (1)

1-1: Replace placeholder translation-revision-date.

"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE" is a template stub. Populate it with the build timestamp so WP considers the catalog up-to-date.

-"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE"
+"translation-revision-date":"2025-08-06 17:05:39+0000"
languages/accessibility-checker-sl_SI.po (2)

12-14: Header placeholders left in production file

Last-Translator, Language-Team, and PO-Revision-Date are still the default placeholders.
Leaving them unchanged prevents anyone from tracing responsibility for the translations and can break tooling that relies on a valid revision date.

-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: Janez Novak <janez@example.si>\n"
+"PO-Revision-Date: 2025-08-06 18:15+0200\n"

167-184: Minor linguistic polish – capitalisation & style

The month names “Novembra” and “Decembra” should start with a lower-case letter in Slovenian (“novembra”, “decembra”).
While not a functional bug, it is inconsistent with the rest of the file and will look odd in the UI.

-msgstr "Nadgradi na plačljivo različico Accessibility Checkerja od 25. Novembra do 3. decembra in prihrani 30 %! Celovito skeniranje spletnega mesta, poročilo o odprtih težavah na celotnem spletnem mestu, dnevniki prezrtih težav in še več."
+msgstr "Nadgradi na plačljivo različico Accessibility Checkerja od 25. novembra do 3. decembra in prihrani 30 %! Celovito skeniranje spletnega mesta, poročilo o odprtih težavah na celotnem spletnem mestu, dnevniki prezrtih težav in še več."
languages/accessibility-checker-cs_CZ.po (3)

167-176: Czech date capitalization & inflection need adjustment

“25. Listopadu” should read “25. listopadu” (lower-case month) to follow Czech orthographic rules.
While not a functional bug, inconsistent casing looks unpolished next to earlier translations that already use lower-case months.


203-210: Inconsistent casing in GAAD promotion copy

"od 13. Do 21. května" – the “Do” should be lower-case (“do”) to keep the sentence flow and match Czech grammar.

Minor, but worth fixing before strings are shipped.


4502-4504: String added without translator comment/context

"Error: Missing required parameters." was added without developer-provided context.
Add #. translators: comment so future translators know where the string appears (AJAX error vs. UI notification) and which parameters are meant.

languages/accessibility-checker-bg_BG.po (1)

4109-4113: Duplicate translation for “Clear Issues”
The string is already translated earlier in this file (Lines 4104-4107).
Keeping two identical entries increases merge noise and may generate msgmerge
conflicts later. Consider removing one of them or adding a msgctxt if the UI
really needs two different contexts.

languages/accessibility-checker-uk-b93b9e514c44a41f97246123aa57f5c4.json (1)

1-1: Replace placeholder “translation-revision-date”.

"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE" still contains the stub generated by wp i18n make-json.
WordPress uses this field when deciding whether a JSON file is stale. If it remains the literal placeholder the file can be considered outdated and ignored in favour of another translation source.

Diff-size is one line:

-"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE"
+"translation-revision-date":"2025-08-06 17:05+0000"

(Use the actual UTC timestamp of the build step.)

languages/accessibility-checker-lv.po (1)

167-184: Month names should be lowercase in Latvian

In the two promotional strings the months “Novembra”, “Decembra” and “Maija” start with capital letters. Latvian month names are normally written in lowercase. Consider adjusting them to “novembra”, “decembra”, “maija” for a more natural-sounding translation.

languages/accessibility-checker-uk.po (1)

69-72: Capitalise product name in the translated string

msgstr "Отримати pro" should keep “Pro” capitalised to match the official product name that appears everywhere else in the UI (“Get Pro”, “Accessibility Checker Pro”, etc.).

-msgstr "Отримати pro"
+msgstr "Отримати Pro"
languages/accessibility-checker-id_ID.po (3)

641-657: Inconsistent translation of “post type”
Lines 645–657 translate “post type(s)” as “Jenis post”, while earlier entries (e.g., Line 487) use “Jenis pos”. Mixing English “post” with Indonesian “pos” is jarring and hurts search-/filter-ability inside WP-Admin. Pick one spelling (WordPress-id_ID core uses “pos”) and apply globally.

- msgstr "Jenis post dikonfigurasi untuk pemeriksaan aksesibilitas"
+ msgstr "Jenis pos dikonfigurasi untuk pemeriksaan aksesibilitas"

Repeat for the other “Jenis post” occurrences in this hunk.


688-690: Informal pronoun “kamu” breaks tone consistency
Most strings address users with the formal “Anda”. Line 689 switches to “kamu”, producing an uneven voice. Use “Anda” (or rewrite without pronoun) for consistency with WordPress-id_ID style-guide.

-msgstr "Belum ada post yang dipindai. Jalankan pemindaian situs lengkap untuk mulai memeriksa konten kamu untuk masalah aksesibilitas."
+msgstr "Belum ada pos yang dipindai. Jalankan pemindaian situs lengkap untuk mulai memeriksa konten Anda terhadap masalah aksesibilitas."

701-706: Redundant plural forms for Indonesian locale
Indonesian has nplurals=1; plural=0;. Providing both msgstr[0] and msgstr[1] isn’t harmful, but it is wasted bytes and may confuse translators. Consider keeping only msgstr[0].

languages/accessibility-checker-vi.po (1)

4502-4504: Minor nit – missing trailing period

msgstr "Lỗi: Thiếu các tham số bắt buộc." mirrors English perfectly except the English source ends with a period.
Consider keeping punctuation consistent to avoid fuzzy matches in the future:

- msgstr "Lỗi: Thiếu các tham số bắt buộc."
+ msgstr "Lỗi: Thiếu các tham số bắt buộc."

(This is optional – Vietnamese usually omits the full stop after UI alerts.)

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["\u0417\u0430\u043f\u0430\u0437\u0438"],"Clear Issues":["\u0418\u0437\u0447\u0438\u0441\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435"],"Saving...":["\u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435..."],"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 \u0441\u0430 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e. \u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 %s\u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430%s \u0438 \u0434\u0430 \u0437\u0430\u043f\u0430\u0437\u0438\u0442\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430, \u0437\u0430 \u0434\u0430 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u0442\u0435 \u043e\u0442\u043d\u043e\u0432\u043e \u0438 \u043f\u0440\u0435\u043c\u0430\u0445\u043d\u0435\u0442\u0435 \u043a\u043e\u0440\u0438\u0433\u0438\u0440\u0430\u043d\u0438\u0442\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438 \u043e\u0442 \u043e\u0442\u0447\u0435\u0442\u0438\u0442\u0435 \u043d\u0430 Accessibility Checker."],"Settings saved successfully.":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 \u0441\u0430 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e."],"Saving failed.":["\u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0435 \u0443\u0441\u043f\u044f."],"Fix Settings":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0437\u0430 \u043a\u043e\u0440\u0435\u043a\u0446\u0438\u0438"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0422\u043e\u0432\u0430 \u0449\u0435 \u0438\u0437\u0447\u0438\u0441\u0442\u0438 \u0432\u0441\u0438\u0447\u043a\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438 \u0437\u0430 \u0442\u0430\u0437\u0438 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f. \u0429\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435, \u0437\u0430 \u0434\u0430 \u0441\u0435 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430 \u043d\u043e\u0432\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430. \u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438\u0442\u0435?"],"Clearing...":["\u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435..."],"Issues cleared successfully.":["\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435 \u0441\u0430 \u0438\u0437\u0447\u0438\u0441\u0442\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e."],"Failed to clear issues.":["\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435."],"An error occurred while clearing issues.":["\u0412\u044a\u0437\u043d\u0438\u043a\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0438\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435."],"Close fixes modal":["\u0417\u0430\u0442\u0432\u0430\u0440\u044f \u043c\u043e\u0434\u0430\u043b\u043d\u0438\u044f \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446 \u0441 \u043f\u043e\u043f\u0440\u0430\u0432\u043a\u0438"],"Rescan This Page":["\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u0439 \u043e\u0442\u043d\u043e\u0432\u043e \u0442\u0430\u0437\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430"],"Disable Page Styles":["\u0414\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u0441\u0442\u0438\u043b\u043e\u0432\u0435\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430"],"Disable Styles":["\u0414\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u0441\u0442\u0438\u043b\u043e\u0432\u0435\u0442\u0435"],"An error occurred when loading the issues.":["\u0412\u044a\u0437\u043d\u0438\u043a\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435."],"Show Code":["\u041f\u043e\u043a\u0430\u0436\u0438 \u043a\u043e\u0434\u0430"],"Issue type:":["\u0422\u0438\u043f \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430:"],"Enable Styles":["\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u0441\u0442\u0438\u043b\u043e\u0432\u0435\u0442\u0435"],"There are no settings to display.":["\u041d\u044f\u043c\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0437\u0430 \u043f\u043e\u043a\u0430\u0437\u0432\u0430\u043d\u0435."],"These settings enable global fixes across your entire site. Pages may need to be resaved or a full site scan run to see fixes reflected in reports.":["\u0422\u0435\u0437\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0442 \u0433\u043b\u043e\u0431\u0430\u043b\u043d\u0438 \u043f\u043e\u043f\u0440\u0430\u0432\u043a\u0438 \u0432 \u0446\u0435\u043b\u0438\u044f \u0432\u0438 \u0441\u0430\u0439\u0442. \u041c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043d\u0430\u043b\u043e\u0436\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0438\u0442\u0435 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u043e\u0442\u043d\u043e\u0432\u043e \u0438\u043b\u0438 \u0434\u0430 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0438 \u043f\u044a\u043b\u043d\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u0430\u0439\u0442\u0430, \u0437\u0430 \u0434\u0430 \u0441\u0435 \u0432\u0438\u0434\u044f\u0442 \u043e\u0442\u0440\u0430\u0437\u0435\u043d\u0438\u0442\u0435 \u043f\u043e\u043f\u0440\u0430\u0432\u043a\u0438 \u0432 \u043e\u0442\u0447\u0435\u0442\u0438\u0442\u0435."],"No issues detected.":["\u041d\u0435 \u0441\u0430 \u043e\u0442\u043a\u0440\u0438\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438."],"error":["\u0433\u0440\u0435\u0448\u043a\u0430","\u0433\u0440\u0435\u0448\u043a\u0438"],"warning":["\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435","\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f"],"and":["\u0438"],"ignored issue":["\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0430\u043d \u043f\u0440\u043e\u0431\u043b\u0435\u043c","\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0430\u043d\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438"],"detected.":["\u043e\u0442\u043a\u0440\u0438\u0442\u0438."],"Scanner function not found.":["\u0424\u0443\u043d\u043a\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0435 \u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0430."],"Scanning...":["\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435..."],"No violations found, skipping save.":["\u041d\u0435 \u0441\u0430 \u043e\u0442\u043a\u0440\u0438\u0442\u0438 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u044f, \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435\u0442\u043e."],"Missing postId or nonce.":["\u041b\u0438\u043f\u0441\u0432\u0430 postId \u0438\u043b\u0438 nonce."],"Accessibility scan error.":["\u0413\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u043e\u0441\u0442\u0442\u0430."],"Error saving scan results.":["\u0413\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438\u0442\u0435 \u043e\u0442 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435\u0442\u043e."],"Error: Missing required parameters.":["\u0413\u0440\u0435\u0448\u043a\u0430: \u041b\u0438\u043f\u0441\u0432\u0430\u0442 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438."]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Header metadata uses wrong lang code and plural-form rule – JS translations will not load

The locale header shows "lang":"en" and a generic nplurals=2; plural=(n != 1);.
For Bulgarian this should be "lang":"bg_BG" (or at minimum "bg") and the plural-form rule must stay in sync with GlotPress: nplurals=2; plural=(n != 1); is actually correct for BG, so only the lang field is wrong here.

Because wp.i18n.setLocaleData() keys the bundle by language, WordPress will ignore the file and JS strings will fall back to English.

Fix by regenerating the JSON with wp i18n make-json or patching the header:

-{"translation-revision-date":"...","locale_data":{"messages":{"":{"domain":"messages","lang":"en",
+{"translation-revision-date":"...","locale_data":{"messages":{"":{"domain":"messages","lang":"bg_BG",
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["\u0417\u0430\u043f\u0430\u0437\u0438"],"Clear Issues":["\u0418\u0437\u0447\u0438\u0441\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435"],"Saving...":["\u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435..."],"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 \u0441\u0430 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e. \u0422\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 %s\u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435 \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440\u0430%s \u0438 \u0434\u0430 \u0437\u0430\u043f\u0430\u0437\u0438\u0442\u0435 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430, \u0437\u0430 \u0434\u0430 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u0442\u0435 \u043e\u0442\u043d\u043e\u0432\u043e \u0438 \u043f\u0440\u0435\u043c\u0430\u0445\u043d\u0435\u0442\u0435 \u043a\u043e\u0440\u0438\u0433\u0438\u0440\u0430\u043d\u0438\u0442\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438 \u043e\u0442 \u043e\u0442\u0447\u0435\u0442\u0438\u0442\u0435 \u043d\u0430 Accessibility Checker."],"Settings saved successfully.":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438\u0442\u0435 \u0441\u0430 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e."],"Saving failed.":["\u0417\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0435 \u0443\u0441\u043f\u044f."],"Fix Settings":["\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0437\u0430 \u043a\u043e\u0440\u0435\u043a\u0446\u0438\u0438"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0422\u043e\u0432\u0430 \u0449\u0435 \u0438\u0437\u0447\u0438\u0441\u0442\u0438 \u0432\u0441\u0438\u0447\u043a\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438 \u0437\u0430 \u0442\u0430\u0437\u0438 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f. \u0429\u0435 \u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435, \u0437\u0430 \u0434\u0430 \u0441\u0435 \u0437\u0430\u0434\u0435\u0439\u0441\u0442\u0432\u0430 \u043d\u043e\u0432\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435\u0442\u043e \u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430. \u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438\u0442\u0435?"],"Clearing...":["\u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435..."],"Issues cleared successfully.":["\u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435 \u0441\u0430 \u0438\u0437\u0447\u0438\u0441\u0442\u0435\u043d\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e."],"Failed to clear issues.":["\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0438\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435 \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435."],"An error occurred while clearing issues.":["\u0412\u044a\u0437\u043d\u0438\u043a\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0438\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435."],"Close fixes modal":["\u0417\u0430\u0442\u0432\u0430\u0440\u044f \u043c\u043e\u0434\u0430\u043b\u043d\u0438\u044f \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446 \u0441 \u043f\u043e\u043f\u0440\u0430\u0432\u043a\u0438"],"Rescan This Page":["\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u0439 \u043e\u0442\u043d\u043e\u0432\u043e \u0442\u0430\u0437\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430"],"Disable Page Styles":["\u0414\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u0441\u0442\u0438\u043b\u043e\u0432\u0435\u0442\u0435 \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430"],"Disable Styles":["\u0414\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u0441\u0442\u0438\u043b\u043e\u0432\u0435\u0442\u0435"],"An error occurred when loading the issues.":["\u0412\u044a\u0437\u043d\u0438\u043a\u043d\u0430 \u0433\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0437\u0430\u0440\u0435\u0436\u0434\u0430\u043d\u0435\u0442\u043e \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435."],"Show Code":["\u041f\u043e\u043a\u0430\u0436\u0438 \u043a\u043e\u0434\u0430"],"Issue type:":["\u0422\u0438\u043f \u043d\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430:"],"Enable Styles":["\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u0441\u0442\u0438\u043b\u043e\u0432\u0435\u0442\u0435"],"There are no settings to display.":["\u041d\u044f\u043c\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0437\u0430 \u043f\u043e\u043a\u0430\u0437\u0432\u0430\u043d\u0435."],"These settings enable global fixes across your entire site. Pages may need to be resaved or a full site scan run to see fixes reflected in reports.":["\u0422\u0435\u0437\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0442 \u0433\u043b\u043e\u0431\u0430\u043b\u043d\u0438 \u043f\u043e\u043f\u0440\u0430\u0432\u043a\u0438 \u0432 \u0446\u0435\u043b\u0438\u044f \u0432\u0438 \u0441\u0430\u0439\u0442. \u041c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043d\u0430\u043b\u043e\u0436\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0438\u0442\u0435 \u0434\u0430 \u0431\u044a\u0434\u0430\u0442 \u0437\u0430\u043f\u0430\u0437\u0435\u043d\u0438 \u043e\u0442\u043d\u043e\u0432\u043e \u0438\u043b\u0438 \u0434\u0430 \u0441\u0435 \u0438\u0437\u0432\u044a\u0440\u0448\u0438 \u043f\u044a\u043b\u043d\u043e \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u0430\u0439\u0442\u0430, \u0437\u0430 \u0434\u0430 \u0441\u0435 \u0432\u0438\u0434\u044f\u0442 \u043e\u0442\u0440\u0430\u0437\u0435\u043d\u0438\u0442\u0435 \u043f\u043e\u043f\u0440\u0430\u0432\u043a\u0438 \u0432 \u043e\u0442\u0447\u0435\u0442\u0438\u0442\u0435."],"No issues detected.":["\u041d\u0435 \u0441\u0430 \u043e\u0442\u043a\u0440\u0438\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438."],"error":["\u0433\u0440\u0435\u0448\u043a\u0430","\u0433\u0440\u0435\u0448\u043a\u0438"],"warning":["\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435","\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f"],"and":["\u0438"],"ignored issue":["\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0430\u043d \u043f\u0440\u043e\u0431\u043b\u0435\u043c","\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0430\u043d\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438"],"detected.":["\u043e\u0442\u043a\u0440\u0438\u0442\u0438."],"Scanner function not found.":["\u0424\u0443\u043d\u043a\u0446\u0438\u044f\u0442\u0430 \u0437\u0430 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0435 \u0435 \u043d\u0430\u043c\u0435\u0440\u0435\u043d\u0430."],"Scanning...":["\u0421\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435..."],"No violations found, skipping save.":["\u041d\u0435 \u0441\u0430 \u043e\u0442\u043a\u0440\u0438\u0442\u0438 \u043d\u0430\u0440\u0443\u0448\u0435\u043d\u0438\u044f, \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u043d\u0435 \u043d\u0430 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435\u0442\u043e."],"Missing postId or nonce.":["\u041b\u0438\u043f\u0441\u0432\u0430 postId \u0438\u043b\u0438 nonce."],"Accessibility scan error.":["\u0413\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u043e\u0441\u0442\u0442\u0430."],"Error saving scan results.":["\u0413\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0437\u0430\u043f\u0430\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 \u0440\u0435\u0437\u0443\u043b\u0442\u0430\u0442\u0438\u0442\u0435 \u043e\u0442 \u0441\u043a\u0430\u043d\u0438\u0440\u0430\u043d\u0435\u0442\u043e."],"Error: Missing required parameters.":["\u0413\u0440\u0435\u0448\u043a\u0430: \u041b\u0438\u043f\u0441\u0432\u0430\u0442 \u0437\u0430\u0434\u044a\u043b\u0436\u0438\u0442\u0435\u043b\u043d\u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438."]}}}
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"bg_BG","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["\u0417\u0430\u043f\u0430\u0437\u0438"],"Clear Issues":["\u0418\u0437\u0447\u0438\u0441\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435"], /* …rest of translations… */}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-bg_BG-b93b9e514c44a41f97246123aa57f5c4.json
at line 1, the locale header incorrectly sets "lang" to "en" instead of "bg_BG"
or at least "bg". This causes WordPress to ignore the translation file for
Bulgarian and fallback to English. Fix this by regenerating the JSON file using
the command `wp i18n make-json` to ensure the correct "lang" value is set, or
manually update the "lang" field in the header to "bg_BG" while keeping the
plural-form rule unchanged.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/pageScanner.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["\u043e\u0442\u0432\u0430\u0440\u044f \u0441\u0435 \u0432 \u043d\u043e\u0432 \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446"],"new window":["\u043d\u043e\u0432 \u043f\u0440\u043e\u0437\u043e\u0440\u0435\u0446"],"new tab":["\u043d\u043e\u0432 \u0440\u0430\u0437\u0434\u0435\u043b"],"click":["\u0449\u0440\u0430\u043a\u043d\u0435\u0442\u0435"],"click here":["\u0449\u0440\u0430\u043a\u043d\u0435\u0442\u0435 \u0442\u0443\u043a"],"here":["\u0442\u0443\u043a"],"go here":["\u043e\u0442\u0438\u0434\u0435\u0442\u0435 \u0442\u0443\u043a"],"more":["\u043e\u0449\u0435"],"more...":["\u043e\u0449\u0435..."],"more\u2026":["\u043e\u0449\u0435\u2026"],"details":["\u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438"],"more details":["\u043f\u043e\u0432\u0435\u0447\u0435 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e\u0441\u0442\u0438"],"link":["\u0432\u0440\u044a\u0437\u043a\u0430"],"this page":["\u0442\u0430\u0437\u0438 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430"],"continue":["\u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0435\u0442\u0435"],"continue reading":["\u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0435\u0442\u0435 \u0434\u0430 \u0447\u0435\u0442\u0435\u0442\u0435"],"read more":["\u043f\u0440\u043e\u0447\u0435\u0442\u0435\u0442\u0435 \u043e\u0449\u0435"],"open":["\u043e\u0442\u0432\u043e\u0440\u0438"],"download":["\u0438\u0437\u0442\u0435\u0433\u043b\u0438"],"button":["\u0431\u0443\u0442\u043e\u043d"],"keep reading":["\u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0435\u0442\u0435 \u0434\u0430 \u0447\u0435\u0442\u0435\u0442\u0435"],"learn more":["\u043d\u0430\u0443\u0447\u0435\u0442\u0435 \u043f\u043e\u0432\u0435\u0447\u0435"]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

💡 Verification agent

❓ Verification inconclusive

Header shows lang:"en" & placeholder date – verify locale metadata

"lang":"en" does not match the bg_BG locale and translation-revision-date still contains the placeholder. Incorrect metadata can break plural-form selection or prevent translations from loading.

You can quickly scan the repository for other mismatches:


🏁 Script executed:

#!/bin/bash
# List JSON translation headers whose "lang" prop doesn't match the filename locale.
fd --extension json languages | while read -r f; do
  locale=$(basename "$f" | cut -d'-' -f2)
  jq -r '.locale_data.messages[""].lang' "$f" | grep -vq "${locale%%_*}" && echo "Mismatch: $f"
done

Length of output: 43


🏁 Script executed:

#!/bin/bash
# Re-scan JSON translation headers with correct locale extraction (3rd hyphen-delimited field)
fd --extension json languages | while read -r f; do
  locale_field=$(basename "$f" | cut -d'-' -f3)
  expected_lang=${locale_field%%_*}
  actual_lang=$(jq -r '.locale_data.messages[""].lang' "$f")
  if [[ "$actual_lang" != "$expected_lang" ]]; then
    echo "Mismatch: $f (lang=\"$actual_lang\", expected=\"$expected_lang\")"
  fi
done

Length of output: 43


Update translation JSON metadata

The Bulgarian translation header still shows the placeholder date and "lang":"en", which will break plural-form logic and prevent loading the correct locale. Please:

  • In languages/accessibility-checker-bg_BG-<hash>.json:
    • Change
      "translation-revision-date":"YEAR-MO-DA HO:MI+ZONE"
      to the current revision timestamp, e.g.
      "translation-revision-date":"2025-08-15 14:30+00:00"
    • Change
      "lang":"en"
      to
      "lang":"bg"
  • Run a quick scan to catch any other mismatches:
    fd --extension json languages | while read -r f; do
      locale_field=$(basename "$f" | cut -d'-' -f3)
      expected=${locale_field%%_*}
      actual=$(jq -r '.locale_data.messages[""].lang' "$f")
      [[ "$actual" != "$expected" ]] && printf "Mismatch in %s: got %s, expected %s\n" "$f" "$actual" "$expected"
    done
🤖 Prompt for AI Agents
In languages/accessibility-checker-bg_BG-ffd08c762bdabd23386ea03007811e0f.json
at line 1, update the translation metadata by replacing the placeholder
"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE" with the current timestamp
in the format "YYYY-MM-DD HH:MM+00:00" and change the "lang" field from "en" to
"bg" to match the Bulgarian locale. After these changes, run the provided shell
script to scan all JSON translation files for any other lang field mismatches
and correct them accordingly.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/emailOptIn.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"There was a problem. Please try again.":["Vyskytl se probl\u00e9m. Zkuste to pros\u00edm znovu."],"Sorry, your submission failed. Please shorten your responses and try again.":["Omlouv\u00e1me se, va\u0161e odesl\u00e1n\u00ed selhalo. Zkra\u0165te pros\u00edm sv\u00e9 odpov\u011bdi a zkuste to znovu."],"Sorry, your submission failed. Please try again.":["Omlouv\u00e1me se, va\u0161e odesl\u00e1n\u00ed se nezda\u0159ilo. Zkuste to pros\u00edm znovu."]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Duplicate key – later entry silently overrides earlier one

The string “Sorry, your submission failed. Please try again.” appears twice.
Only the last occurrence will be honoured, the first is dead weight and confuses translators.

Please remove the duplicate or merge the two variants into distinct keys.

🤖 Prompt for AI Agents
In languages/accessibility-checker-cs_CZ-4aeb45733c7671c6641789798428b69d.json
at line 1, there are duplicate keys for the string "Sorry, your submission
failed. Please try again." Remove one of the duplicate entries or merge them by
creating distinct keys to avoid silent overrides and confusion for translators.

⚠️ Potential issue

lang header is hard-coded to “en” – breaks JS translation loading

locale_data.messages[""].lang must contain the locale slug (cs_CZ).
Leaving it as "en" prevents WordPress from picking the file up for Czech users.

- "lang":"en"
+ "lang":"cs_CZ"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/emailOptIn.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"There was a problem. Please try again.":["Vyskytl se probl\u00e9m. Zkuste to pros\u00edm znovu."],"Sorry, your submission failed. Please shorten your responses and try again.":["Omlouv\u00e1me se, va\u0161e odesl\u00e1n\u00ed selhalo. Zkra\u0165te pros\u00edm sv\u00e9 odpov\u011bdi a zkuste to znovu."],"Sorry, your submission failed. Please try again.":["Omlouv\u00e1me se, va\u0161e odesl\u00e1n\u00ed se nezda\u0159ilo. Zkuste to pros\u00edm znovu."]}}}
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/emailOptIn.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"cs_CZ","plural-forms":"nplurals=2; plural=(n != 1);"},"There was a problem. Please try again.":["Vyskytl se problém. Zkuste to prosím znovu."],"Sorry, your submission failed. Please shorten your responses and try again.":["Omlouváme se, vaše odeslání selhalo. Zkraťte prosím své odpovědi a zkuste to znovu."],"Sorry, your submission failed. Please try again.":["Omlouváme se, vaše odeslání se nezdařilo. Zkuste to prosím znovu."]}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-cs_CZ-4aeb45733c7671c6641789798428b69d.json
at line 1, the "lang" field inside locale_data.messages[""] is hard-coded to
"en". Update this "lang" value to "cs_CZ" to match the locale slug so that
WordPress correctly loads the translation for Czech users.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendFixes.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["otev\u0159e se v nov\u00e9m okn\u011b"],"EDAC: Did not find a matching target ID on the page for the skip link.":["EDAC: Na str\u00e1nce nebyl nalezen odpov\u00eddaj\u00edc\u00ed c\u00edlov\u00fd ID pro odkaz p\u0159esko\u010den\u00ed."],"EDAC: Error updating history for skip link.":["EDAC: Chyba p\u0159i aktualizaci historie pro odkaz p\u0159esko\u010den\u00ed."]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Locale metadata incorrectly set to "en"

locale_data.messages[""].lang is still "en", so WordPress will think this is an English catalog and skip it.
Change it to the correct locale code ("cs_CZ").

-"lang":"en"
+"lang":"cs_CZ"
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendFixes.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["otev\u0159e se v nov\u00e9m okn\u011b"],"EDAC: Did not find a matching target ID on the page for the skip link.":["EDAC: Na str\u00e1nce nebyl nalezen odpov\u00eddaj\u00edc\u00ed c\u00edlov\u00fd ID pro odkaz p\u0159esko\u010den\u00ed."],"EDAC: Error updating history for skip link.":["EDAC: Chyba p\u0159i aktualizaci historie pro odkaz p\u0159esko\u010den\u00ed."]}}}
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendFixes.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"cs_CZ","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["otev\u0159e se v nov\u00e9m okn\u011b"],"EDAC: Did not find a matching target ID on the page for the skip link.":["EDAC: Na str\u00e1nce nebyl nalezen odpov\u00eddaj\u00edc\u00edc\u00ed c\u00edlov\u00fd ID pro odkaz p\u0159esko\u010den\u00ed."],"EDAC: Error updating history for skip link.":["EDAC: Chyba p\u0159i aktualizaci historie pro odkaz p\u0159esko\u010den\u00ed."]}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-cs_CZ-95b093794875bec5eeac2e02bfe32541.json
at line 1, the locale metadata lang field is incorrectly set to "en". Update the
"locale_data.messages[\"\"].lang" value from "en" to "cs_CZ" to correctly
reflect the Czech locale and ensure WordPress recognizes the catalog properly.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["Ulo\u017eit"],"Clear Issues":["Vymazat probl\u00e9my"],"Saving...":["Ukl\u00e1d\u00e1n\u00ed..."],"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["Nastaven\u00ed \u00fasp\u011b\u0161n\u011b ulo\u017eena. Mus\u00edte %snav\u0161t\u00edvit editor%s a ulo\u017eit p\u0159\u00edsp\u011bvek, aby se provedlo op\u011btovn\u00e9 skenov\u00e1n\u00ed a odstranily se opraven\u00e9 probl\u00e9my ze zpr\u00e1v Accessibility Checkeru."],"Settings saved successfully.":["Nastaven\u00ed \u00fasp\u011b\u0161n\u011b ulo\u017eeno."],"Saving failed.":["Ukl\u00e1d\u00e1n\u00ed selhalo."],"Fix Settings":["Nastaven\u00ed oprav"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["T\u00edmto se vyma\u017eou v\u0161echny probl\u00e9my pro tento p\u0159\u00edsp\u011bvek. Bude nutn\u00e9 ulo\u017een\u00ed, aby se spustilo nov\u00e9 skenov\u00e1n\u00ed obsahu p\u0159\u00edsp\u011bvku. Chcete pokra\u010dovat?"],"Clearing...":["Maz\u00e1n\u00ed..."],"Issues cleared successfully.":["Probl\u00e9my \u00fasp\u011b\u0161n\u011b vymaz\u00e1ny."],"Failed to clear issues.":["Nepoda\u0159ilo se vymazat probl\u00e9my."],"An error occurred while clearing issues.":["P\u0159i maz\u00e1n\u00ed probl\u00e9m\u016f do\u0161lo k chyb\u011b."],"Close fixes modal":["Zav\u0159\u00edt mod\u00e1ln\u00ed okno oprav"],"Rescan This Page":["Znovu prohledat tuto str\u00e1nku"],"Disable Page Styles":["Vypnout styly str\u00e1nky"],"Disable Styles":["Zak\u00e1zat styly"],"An error occurred when loading the issues.":["P\u0159i na\u010d\u00edt\u00e1n\u00ed probl\u00e9m\u016f do\u0161lo k chyb\u011b."],"Show Code":["Zobrazit k\u00f3d"],"Issue type:":["Typ probl\u00e9mu:"],"Enable Styles":["Povolit styly"],"There are no settings to display.":["Nejsou k dispozici \u017e\u00e1dn\u00e1 nastaven\u00ed k zobrazen\u00ed."],"These settings enable global fixes across your entire site. Pages may need to be resaved or a full site scan run to see fixes reflected in reports.":["Tato nastaven\u00ed umo\u017e\u0148uj\u00ed glob\u00e1ln\u00ed opravy nap\u0159\u00ed\u010d cel\u00fdm va\u0161\u00edm webem. M\u016f\u017ee b\u00fdt nutn\u00e9 znovu ulo\u017eit str\u00e1nky nebo spustit kompletn\u00ed skenov\u00e1n\u00ed webu, aby se opravy projevily v reportech."],"No issues detected.":["Nebyly zji\u0161t\u011bny \u017e\u00e1dn\u00e9 probl\u00e9my."],"error":["chyba","chyb"],"warning":["varov\u00e1n\u00ed","varov\u00e1n\u00ed"],"and":["a"],"ignored issue":["ignorovan\u00fd probl\u00e9m","ignorovan\u00fdch probl\u00e9m\u016f"],"detected.":["zji\u0161t\u011bno."],"Scanner function not found.":["Funkce skeneru nebyla nalezena."],"Scanning...":["Skenov\u00e1n\u00ed..."],"No violations found, skipping save.":["Nebyly nalezeny \u017e\u00e1dn\u00e9 chyby, p\u0159eskakuji ukl\u00e1d\u00e1n\u00ed."],"Missing postId or nonce.":["Chyb\u00ed postId nebo nonce."],"Accessibility scan error.":["Chyba p\u0159i skenov\u00e1n\u00ed p\u0159\u00edstupnosti."],"Error saving scan results.":["Chyba p\u0159i ukl\u00e1d\u00e1n\u00ed v\u00fdsledk\u016f skenov\u00e1n\u00ed."],"Error: Missing required parameters.":["Chyba: Chyb\u00ed povinn\u00e9 parametry."]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

💡 Verification agent

🧩 Analysis chain

Fix lang mismatch for Czech locale (should be cs, not en).

WordPress ignores translation files whose lang metadata does not match the locale slug. This Czech file still declares "lang":"en", so none of its strings will load.

-... "lang":"en","plural-forms":"nplurals=2; plural=(n != 1);" ...
+... "lang":"cs","plural-forms":"nplurals=2; plural=(n != 1);" ...

While touching the file, double-check whether the JS strings are registered under the messages domain or the plugin’s accessibility-checker text domain. If the code calls wp.i18n.__( string, 'accessibility-checker' ), the JSON must nest under "locale_data":{"accessibility-checker":{...}} instead of "messages".
Please verify before merging.


🏁 Script executed:

#!/bin/bash
# Search for loadTranslations usage in JS code
rg -n "loadTranslations" -t js

# Search for import from '@wordpress/i18n'
rg -n "from ['\"]@wordpress/i18n['\"]" -t js

# Search for __ and domain in JS
rg -n "__\(.+?,\s*['\"][^'\"]+['\"]\)" -t js

Length of output: 962


🏁 Script executed:

#!/bin/bash
# Search for wp_set_script_translations usage in PHP
rg -n "wp_set_script_translations" -t php

Length of output: 884


🏁 Script executed:

#!/bin/bash
# Search for __ calls with two arguments (indicating use of a specific text domain)
rg -n "__\(\s*['\"][^'\"]+['\"],\s*['\"][^'\"]+['\"]\)" -t js

# Search for __ calls with only one argument
rg -n "__\(\s*['\"][^'\"]+['\"]\)" -t js

Length of output: 124


Update JSON metadata to match Czech locale and plugin text domain

WordPress will ignore JSON translation files whose lang or domain metadata doesn’t match the locale slug and your registered text domain. In this file, you need to:

• Change the locale code from English to Czech (lang: "cs")
• Point the domain to your plugin’s text domain ("accessibility-checker") instead of "messages"
• Rename the locale_data block from messages to accessibility-checker

File: languages/accessibility-checker-cs_CZ-b93b9e514c44a41f97246123aa57f5c4.json
Lines: 1–2

-{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI/2.12.0","source":"build/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{
+{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI/2.12.0","source":"build/frontendHighlighterApp.bundle.js","domain":"accessibility-checker","lang":"cs","locale_data":{"accessibility-checker":{

After updating, verify that your PHP calls to wp_set_script_translations( …, 'accessibility-checker', … ) will correctly load these strings in JavaScript.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["Ulo\u017eit"],"Clear Issues":["Vymazat probl\u00e9my"],"Saving...":["Ukl\u00e1d\u00e1n\u00ed..."],"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["Nastaven\u00ed \u00fasp\u011b\u0161n\u011b ulo\u017eena. Mus\u00edte %snav\u0161t\u00edvit editor%s a ulo\u017eit p\u0159\u00edsp\u011bvek, aby se provedlo op\u011btovn\u00e9 skenov\u00e1n\u00ed a odstranily se opraven\u00e9 probl\u00e9my ze zpr\u00e1v Accessibility Checkeru."],"Settings saved successfully.":["Nastaven\u00ed \u00fasp\u011b\u0161n\u011b ulo\u017eeno."],"Saving failed.":["Ukl\u00e1d\u00e1n\u00ed selhalo."],"Fix Settings":["Nastaven\u00ed oprav"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["T\u00edmto se vyma\u017eou v\u0161echny probl\u00e9my pro tento p\u0159\u00edsp\u011bvek. Bude nutn\u00e9 ulo\u017een\u00ed, aby se spustilo nov\u00e9 skenov\u00e1n\u00ed obsahu p\u0159\u00edsp\u011bvku. Chcete pokra\u010dovat?"],"Clearing...":["Maz\u00e1n\u00ed..."],"Issues cleared successfully.":["Probl\u00e9my \u00fasp\u011b\u0161n\u011b vymaz\u00e1ny."],"Failed to clear issues.":["Nepoda\u0159ilo se vymazat probl\u00e9my."],"An error occurred while clearing issues.":["P\u0159i maz\u00e1n\u00ed probl\u00e9m\u016f do\u0161lo k chyb\u011b."],"Close fixes modal":["Zav\u0159\u00edt mod\u00e1ln\u00ed okno oprav"],"Rescan This Page":["Znovu prohledat tuto str\u00e1nku"],"Disable Page Styles":["Vypnout styly str\u00e1nky"],"Disable Styles":["Zak\u00e1zat styly"],"An error occurred when loading the issues.":["P\u0159i na\u010d\u00edt\u00e1n\u00ed probl\u00e9m\u016f do\u0161lo k chyb\u011b."],"Show Code":["Zobrazit k\u00f3d"],"Issue type:":["Typ probl\u00e9mu:"],"Enable Styles":["Povolit styly"],"There are no settings to display.":["Nejsou k dispozici \u017e\u00e1dn\u00e1 nastaven\u00ed k zobrazen\u00ed."],"These settings enable global fixes across your entire site. Pages may need to be resaved or a full site scan run to see fixes reflected in reports.":["Tato nastaven\u00ed umo\u017e\u0148uj\u00ed glob\u00e1ln\u00ed opravy nap\u0159\u00ed\u010d cel\u00fdm va\u0161\u00edm webem. M\u016f\u017ee b\u00fdt nutn\u00e9 znovu ulo\u017eit str\u00e1nky nebo spustit kompletn\u00ed skenov\u00e1n\u00ed webu, aby se opravy projevily v reportech."],"No issues detected.":["Nebyly zji\u0161t\u011bny \u017e\u00e1dn\u00e9 probl\u00e9my."],"error":["chyba","chyb"],"warning":["varov\u00e1n\u00ed","varov\u00e1n\u00ed"],"and":["a"],"ignored issue":["ignorovan\u00fd probl\u00e9m","ignorovan\u00fdch probl\u00e9m\u016f"],"detected.":["zji\u0161t\u011bno."],"Scanner function not found.":["Funkce skeneru nebyla nalezena."],"Scanning...":["Skenov\u00e1n\u00ed..."],"No violations found, skipping save.":["Nebyly nalezeny \u017e\u00e1dn\u00e9 chyby, p\u0159eskakuji ukl\u00e1d\u00e1n\u00ed."],"Missing postId or nonce.":["Chyb\u00ed postId nebo nonce."],"Accessibility scan error.":["Chyba p\u0159i skenov\u00e1n\u00ed p\u0159\u00edstupnosti."],"Error saving scan results.":["Chyba p\u0159i ukl\u00e1d\u00e1n\u00ed v\u00fdsledk\u016f skenov\u00e1n\u00ed."],"Error: Missing required parameters.":["Chyba: Chyb\u00ed povinn\u00e9 parametry."]}}}
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI/2.12.0","source":"build/frontendHighlighterApp.bundle.js","domain":"accessibility-checker","lang":"cs","locale_data":{"accessibility-checker":{
"":{"domain":"accessibility-checker","lang":"cs","plural-forms":"nplurals=2; plural=(n != 1);"},
"Save":["Ulo\u017eit"],
"Clear Issues":["Vymazat probl\u00e9my"],
"Saving...":["Ukl\u00e1d\u00e1n\u00ed..."],
"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["Nastaven\u00ed \u00fasp\u011b\u0161n\u011b ulo\u017eena. Mus\u00edte %snav\u0161t\u00edvit editor%s a ulo\u017eit p\u0159\u00edsp\u011bvek, aby se provedlo op\u011btovn\u00e9 skenov\u00e1n\u00ed a odstranily se opraven\u00e9 probl\u00e9my ze zpr\u00e1v Accessibility Checkeru."],
// …all the rest of your translations…
}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-cs_CZ-b93b9e514c44a41f97246123aa57f5c4.json
at lines 1 to 2, update the JSON metadata by changing the "lang" value from "en"
to "cs" to reflect the Czech locale, change the "domain" value from "messages"
to "accessibility-checker" to match your plugin's text domain, and rename the
"locale_data" key from "messages" to "accessibility-checker". This ensures
WordPress recognizes and loads the translation file correctly with your plugin.

Comment on lines +203 to 206
#: admin/class-admin-notices.php:216
msgid "🎉 Get 25% off Accessibility Checker Pro in honor of Global Accessibility Awareness Day! 🎉"
msgstr "🎉 Get 25% off Accessibility Checker Pro in honor of Global Accessibility Awareness Day! 🎉"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Translate GAAD promotional notice

The msgstr remains English; this breaks the locale consistency.

-msgstr "🎉 Get 25% off Accessibility Checker Pro in honor of Global Accessibility Awareness Day! 🎉"
+msgstr "🎉 Küresel Erişilebilirlik Farkındalık Günü’ne özel Accessibility Checker Pro’da %25 indirim! 🎉"
🤖 Prompt for AI Agents
In languages/accessibility-checker-tr_TR.po around lines 203 to 206, the msgstr
for the GAAD promotional notice is still in English, which breaks locale
consistency. Translate the msgstr into Turkish to match the target language
while preserving the original message's meaning and emojis.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/pageScanner.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["\u0432\u0456\u0434\u043a\u0440\u0438\u0432\u0430\u0454 \u043d\u043e\u0432\u0435 \u0432\u0456\u043a\u043d\u043e"],"new window":["\u043d\u043e\u0432\u0435 \u0432\u0456\u043a\u043d\u043e"],"new tab":["\u043d\u043e\u0432\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0430"],"click":["\u043a\u043b\u0430\u0446\u043d\u0456\u0442\u044c"],"click here":["\u043a\u043b\u0430\u0446\u043d\u0456\u0442\u044c \u0442\u0443\u0442"],"here":["\u0442\u0443\u0442"],"go here":["\u043f\u0435\u0440\u0435\u0439\u0434\u0456\u0442\u044c \u0441\u044e\u0434\u0438"],"more":["\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0456\u0448\u0435"],"more...":["\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0456\u0448\u0435..."],"more\u2026":["\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0456\u0448\u0435\u2026"],"details":["\u0434\u0435\u0442\u0430\u043b\u0456"],"more details":["\u0431\u0456\u043b\u044c\u0448\u0435 \u0434\u0435\u0442\u0430\u043b\u0435\u0439"],"link":["\u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f"],"this page":["\u0446\u044f \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0430"],"continue":["\u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438"],"continue reading":["\u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438 \u0447\u0438\u0442\u0430\u043d\u043d\u044f"],"read more":["\u0447\u0438\u0442\u0430\u0442\u0438 \u0434\u0430\u043b\u0456"],"open":["\u0432\u0456\u0434\u043a\u0440\u0438\u0442\u0438"],"download":["\u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0438\u0442\u0438"],"button":["\u043a\u043d\u043e\u043f\u043a\u0430"],"keep reading":["\u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438 \u0447\u0438\u0442\u0430\u043d\u043d\u044f"],"learn more":["\u0434\u0456\u0437\u043d\u0430\u0442\u0438\u0441\u044f \u0431\u0456\u043b\u044c\u0448\u0435"]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Incorrect locale metadata (lang, plural-forms) will break Ukrainian translations

lang is set to "en" and the English 2-form plural rule is used, but the file is for Ukrainian (uk, 3 plural forms). WordPress will ignore the file because the metadata doesn’t match the locale, so none of these strings will load.

-{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"}
+{"":{"domain":"messages","lang":"uk","plural-forms":"nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"}
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/pageScanner.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["\u0432\u0456\u0434\u043a\u0440\u0438\u0432\u0430\u0454 \u043d\u043e\u0432\u0435 \u0432\u0456\u043a\u043d\u043e"],"new window":["\u043d\u043e\u0432\u0435 \u0432\u0456\u043a\u043d\u043e"],"new tab":["\u043d\u043e\u0432\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0430"],"click":["\u043a\u043b\u0430\u0446\u043d\u0456\u0442\u044c"],"click here":["\u043a\u043b\u0430\u0446\u043d\u0456\u0442\u044c \u0442\u0443\u0442"],"here":["\u0442\u0443\u0442"],"go here":["\u043f\u0435\u0440\u0435\u0439\u0434\u0456\u0442\u044c \u0441\u044e\u0434\u0438"],"more":["\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0456\u0448\u0435"],"more...":["\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0456\u0448\u0435..."],"more\u2026":["\u0434\u0435\u0442\u0430\u043b\u044c\u043d\u0456\u0448\u0435\u2026"],"details":["\u0434\u0435\u0442\u0430\u043b\u0456"],"more details":["\u0431\u0456\u043b\u044c\u0448\u0435 \u0434\u0435\u0442\u0430\u043b\u0435\u0439"],"link":["\u043f\u043e\u0441\u0438\u043b\u0430\u043d\u043d\u044f"],"this page":["\u0446\u044f \u0441\u0442\u043e\u0440\u0456\u043d\u043a\u0430"],"continue":["\u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438"],"continue reading":["\u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438 \u0447\u0438\u0442\u0430\u043d\u043d\u044f"],"read more":["\u0447\u0438\u0442\u0430\u0442\u0438 \u0434\u0430\u043b\u0456"],"open":["\u0432\u0456\u0434\u043a\u0440\u0438\u0442\u0438"],"download":["\u0437\u0430\u0432\u0430\u043d\u0442\u0430\u0436\u0438\u0442\u0438"],"button":["\u043a\u043d\u043e\u043f\u043a\u0430"],"keep reading":["\u043f\u0440\u043e\u0434\u043e\u0432\u0436\u0438\u0442\u0438 \u0447\u0438\u0442\u0430\u043d\u043d\u044f"],"learn more":["\u0434\u0456\u0437\u043d\u0430\u0442\u0438\u0441\u044f \u0431\u0456\u043b\u044c\u0448\u0435"]}}}
{
"translation-revision-date": "YEAR-MO-DA HO:MI+ZONE",
"generator": "WP-CLI/2.12.0",
"source": "build/pageScanner.bundle.js",
"domain": "messages",
"locale_data": {
"messages": {
"": {
"domain": "messages",
"lang": "uk",
"plural-forms": "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);"
},
"opens a new window": [
"відкриває нове вікно"
],
"new window": [
"нове вікно"
],
"new tab": [
"нова вкладка"
],
"click": [
"кликнути"
],
"click here": [
"кликнути тут"
],
"here": [
"тут"
],
"go here": [
"перейдiть сюди"
],
"more": [
"дeтальніше"
],
"more...": [
"дeтальніше..."
],
"more\u2026": [
"дeтальніше\u2026"
],
"details": [
"деталі"
],
"more details": [
"бiльше деталей"
],
"link": [
"посилання"
],
"this page": [
"ця сторiнка"
],
"continue": [
"продовжити"
],
"continue reading": [
"продовжити читання"
],
"read more": [
"читати далі"
],
"open": [
"відкрити"
],
"download": [
"завантажити"
],
"button": [
"кнопка"
],
"keep reading": [
"продовжити читання"
],
"learn more": [
"дізнатися більше"
]
}
}
}
🤖 Prompt for AI Agents
In languages/accessibility-checker-uk-ffd08c762bdabd23386ea03007811e0f.json at
line 1, the locale metadata incorrectly sets "lang" to "en" and uses English
plural-forms, but the file is for Ukrainian. Update the "lang" value to "uk" and
replace the plural-forms with the correct Ukrainian plural rule to ensure
WordPress loads the translations properly.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["L\u01b0u"],"Clear Issues":["X\u00f3a v\u1ea5n \u0111\u1ec1"],"Saving...":["\u0110ang l\u01b0u..."],"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["\u0110\u00e3 l\u01b0u c\u00e0i \u0111\u1eb7t th\u00e0nh c\u00f4ng. B\u1ea1n ph\u1ea3i %struy c\u1eadp tr\u00ecnh so\u1ea1n th\u1ea3o%s v\u00e0 l\u01b0u b\u00e0i vi\u1ebft \u0111\u1ec3 qu\u00e9t l\u1ea1i v\u00e0 x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1 \u0111\u00e3 \u0111\u01b0\u1ee3c kh\u1eafc ph\u1ee5c kh\u1ecfi b\u00e1o c\u00e1o c\u1ee7a Accessibility Checker."],"Settings saved successfully.":["\u0110\u00e3 l\u01b0u c\u00e0i \u0111\u1eb7t th\u00e0nh c\u00f4ng."],"Saving failed.":["L\u01b0u kh\u00f4ng th\u00e0nh c\u00f4ng."],"Fix Settings":["C\u00e0i \u0111\u1eb7t s\u1eeda l\u1ed7i"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0110i\u1ec1u n\u00e0y s\u1ebd x\u00f3a t\u1ea5t c\u1ea3 c\u00e1c v\u1ea5n \u0111\u1ec1 cho b\u00e0i vi\u1ebft n\u00e0y. C\u1ea7n ph\u1ea3i l\u01b0u \u0111\u1ec3 k\u00edch ho\u1ea1t qu\u00e9t m\u1edbi n\u1ed9i dung b\u00e0i vi\u1ebft. B\u1ea1n c\u00f3 mu\u1ed1n ti\u1ebfp t\u1ee5c kh\u00f4ng?"],"Clearing...":["\u0110ang x\u00f3a..."],"Issues cleared successfully.":["\u0110\u00e3 x\u00f3a v\u1ea5n \u0111\u1ec1 th\u00e0nh c\u00f4ng."],"Failed to clear issues.":["Kh\u00f4ng th\u1ec3 x\u00f3a v\u1ea5n \u0111\u1ec1."],"An error occurred while clearing issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1."],"Close fixes modal":["\u0110\u00f3ng c\u1eeda s\u1ed5 s\u1eeda l\u1ed7i"],"Rescan This Page":["Qu\u00e9t l\u1ea1i trang n\u00e0y"],"Disable Page Styles":["T\u1eaft ki\u1ec3u trang"],"Disable Styles":["T\u1eaft ki\u1ec3u"],"An error occurred when loading the issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi t\u1ea3i c\u00e1c v\u1ea5n \u0111\u1ec1."],"Show Code":["Hi\u1ec3n th\u1ecb m\u00e3"],"Issue type:":["Lo\u1ea1i v\u1ea5n \u0111\u1ec1:"],"Enable Styles":["B\u1eadt ki\u1ec3u"],"There are no settings to display.":["Kh\u00f4ng c\u00f3 c\u00e0i \u0111\u1eb7t n\u00e0o \u0111\u1ec3 hi\u1ec3n th\u1ecb."],"These settings enable global fixes across your entire site. Pages may need to be resaved or a full site scan run to see fixes reflected in reports.":["Nh\u1eefng c\u00e0i \u0111\u1eb7t n\u00e0y cho ph\u00e9p s\u1eeda l\u1ed7i to\u00e0n c\u1ee5c tr\u00ean to\u00e0n b\u1ed9 trang web c\u1ee7a b\u1ea1n. C\u00f3 th\u1ec3 c\u1ea7n ph\u1ea3i l\u01b0u l\u1ea1i c\u00e1c trang ho\u1eb7c ch\u1ea1y qu\u00e9t to\u00e0n b\u1ed9 trang web \u0111\u1ec3 th\u1ea5y c\u00e1c s\u1eeda \u0111\u1ed5i \u0111\u01b0\u1ee3c ph\u1ea3n \u00e1nh trong b\u00e1o c\u00e1o."],"No issues detected.":["Kh\u00f4ng ph\u00e1t hi\u1ec7n v\u1ea5n \u0111\u1ec1 n\u00e0o."],"error":["l\u1ed7i","l\u1ed7i"],"warning":["c\u1ea3nh b\u00e1o","c\u1ea3nh b\u00e1o"],"and":["v\u00e0"],"ignored issue":["v\u1ea5n \u0111\u1ec1 b\u1ecb b\u1ecf qua","v\u1ea5n \u0111\u1ec1 b\u1ecb b\u1ecf qua"],"detected.":["\u0111\u00e3 ph\u00e1t hi\u1ec7n."],"Scanner function not found.":["Kh\u00f4ng t\u00ecm th\u1ea5y ch\u1ee9c n\u0103ng qu\u00e9t."],"Scanning...":["\u0110ang qu\u00e9t..."],"No violations found, skipping save.":["Kh\u00f4ng t\u00ecm th\u1ea5y vi ph\u1ea1m, b\u1ecf qua vi\u1ec7c l\u01b0u."],"Missing postId or nonce.":["Thi\u1ebfu postId ho\u1eb7c nonce."],"Accessibility scan error.":["L\u1ed7i qu\u00e9t kh\u1ea3 n\u0103ng truy c\u1eadp."],"Error saving scan results.":["L\u1ed7i khi l\u01b0u k\u1ebft qu\u1ea3 qu\u00e9t."],"Error: Missing required parameters.":["L\u1ed7i: Thi\u1ebfu c\u00e1c tham s\u1ed1 b\u1eaft bu\u1ed9c."]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Incorrect lang header value – should be vi, not en.

"lang":"en" inside the header of a Vietnamese locale file may cause WP-i18n to mis-classify or ignore the JSON. Update to the correct locale code ("vi") to ensure these strings load for Vietnamese users.

- {"domain":"messages","lang":"en","plural-forms":
+ {"domain":"messages","lang":"vi","plural-forms":
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["L\u01b0u"],"Clear Issues":["X\u00f3a v\u1ea5n \u0111\u1ec1"],"Saving...":["\u0110ang l\u01b0u..."],"Settings saved successfully. You must %svisit the editor%s and save the post to rescan and remove fixed issues from Accessibility Checker reports.":["\u0110\u00e3 l\u01b0u c\u00e0i \u0111\u1eb7t th\u00e0nh c\u00f4ng. B\u1ea1n ph\u1ea3i %struy c\u1eadp tr\u00ecnh so\u1ea1n th\u1ea3o%s v\u00e0 l\u01b0u b\u00e0i vi\u1ebft \u0111\u1ec3 qu\u00e9t l\u1ea1i v\u00e0 x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1 \u0111\u00e3 \u0111\u01b0\u1ee3c kh\u1eafc ph\u1ee5c kh\u1ecfi b\u00e1o c\u00e1o c\u1ee7a Accessibility Checker."],"Settings saved successfully.":["\u0110\u00e3 l\u01b0u c\u00e0i \u0111\u1eb7t th\u00e0nh c\u00f4ng."],"Saving failed.":["L\u01b0u kh\u00f4ng th\u00e0nh c\u00f4ng."],"Fix Settings":["C\u00e0i \u0111\u1eb7t s\u1eeda l\u1ed7i"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0110i\u1ec1u n\u00e0y s\u1ebd x\u00f3a t\u1ea5t c\u1ea3 c\u00e1c v\u1ea5n \u0111\u1ec1 cho b\u00e0i vi\u1ebft n\u00e0y. C\u1ea7n ph\u1ea3i l\u01b0u \u0111\u1ec3 k\u00edch ho\u1ea1t qu\u00e9t m\u1edbi n\u1ed9i dung b\u00e0i vi\u1ebft. B\u1ea1n c\u00f3 mu\u1ed1n ti\u1ebfp t\u1ee5c kh\u00f4ng?"],"Clearing...":["\u0110ang x\u00f3a..."],"Issues cleared successfully.":["\u0110\u00e3 x\u00f3a v\u1ea5n \u0111\u1ec1 th\u00e0nh c\u00f4ng."],"Failed to clear issues.":["Kh\u00f4ng th\u1ec3 x\u00f3a v\u1ea5n \u0111\u1ec1."],"An error occurred while clearing issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1."],"Close fixes modal":["\u0110\u00f3ng c\u1eeda s\u1ed5 s\u1eeda l\u1ed7i"],"Rescan This Page":["Qu\u00e9t l\u1ea1i trang n\u00e0y"],"Disable Page Styles":["T\u1eaft ki\u1ec3u trang"],"Disable Styles":["T\u1eaft ki\u1ec3u"],"An error occurred when loading the issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi t\u1ea3i c\u00e1c v\u1ea5n \u0111\u1ec1."],"Show Code":["Hi\u1ec3n th\u1ecb m\u00e3"],"Issue type:":["Lo\u1ea1i v\u1ea5n \u0111\u1ec1:"],"Enable Styles":["B\u1eadt ki\u1ec3u"],"There are no settings to display.":["Kh\u00f4ng c\u00f3 c\u00e0i \u0111\u1eb7t n\u00e0o \u0111\u1ec3 hi\u1ec3n th\u1ecb."],"These settings enable global fixes across your entire site. Pages may need to be resaved or a full site scan run to see fixes reflected in reports.":["Nh\u1eefng c\u00e0i \u0111\u1eb7t n\u00e0y cho ph\u00e9p s\u1eeda l\u1ed7i to\u00e0n c\u1ee5c tr\u00ean to\u00e0n b\u1ed9 trang web c\u1ee7a b\u1ea1n. C\u00f3 th\u1ec3 c\u1ea7n ph\u1ea3i l\u01b0u l\u1ea1i c\u00e1c trang ho\u1eb7c ch\u1ea1y qu\u00e9t to\u00e0n b\u1ed9 trang web \u0111\u1ec3 th\u1ea5y c\u00e1c s\u1eeda \u0111\u1ed5i \u0111\u01b0\u1ee3c ph\u1ea3n \u00e1nh trong b\u00e1o c\u00e1o."],"No issues detected.":["Kh\u00f4ng ph\u00e1t hi\u1ec7n v\u1ea5n \u0111\u1ec1 n\u00e0o."],"error":["l\u1ed7i","l\u1ed7i"],"warning":["c\u1ea3nh b\u00e1o","c\u1ea3nh b\u00e1o"],"and":["v\u00e0"],"ignored issue":["v\u1ea5n \u0111\u1ec1 b\u1ecb b\u1ecf qua","v\u1ea5n \u0111\u1ec1 b\u1ecb b\u1ecf qua"],"detected.":["\u0111\u00e3 ph\u00e1t hi\u1ec7n."],"Scanner function not found.":["Kh\u00f4ng t\u00ecm th\u1ea5y ch\u1ee9c n\u0103ng qu\u00e9t."],"Scanning...":["\u0110ang qu\u00e9t..."],"No violations found, skipping save.":["Kh\u00f4ng t\u00ecm th\u1ea5y vi ph\u1ea1m, b\u1ecf qua vi\u1ec7c l\u01b0u."],"Missing postId or nonce.":["Thi\u1ebfu postId ho\u1eb7c nonce."],"Accessibility scan error.":["L\u1ed7i qu\u00e9t kh\u1ea3 n\u0103ng truy c\u1eadp."],"Error saving scan results.":["L\u1ed7i khi l\u01b0u k\u1ebft qu\u1ea3 qu\u00e9t."],"Error: Missing required parameters.":["L\u1ed7i: Thi\u1ebfu c\u00e1c tham s\u1ed1 b\u1eaft bu\u1ed9c."]}}}
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/frontendHighlighterApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"vi","plural-forms":"nplurals=2; plural=(n != 1);"},"Save":["L\u01b0u"],"Clear Issues":["X\u00f3a v\u1ea5n \u0111\u1ec1"],"Saving...":["\u0110ang l\u01b0u..."], /* …rest of translations… */}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-vi-b93b9e514c44a41f97246123aa57f5c4.json at
line 1, the lang header value is incorrectly set to "en" for a Vietnamese locale
file. Change the "lang" value from "en" to "vi" to correctly specify the
Vietnamese locale and ensure proper loading of the translation strings.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/editorApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Clear Issues":["X\u00f3a v\u1ea5n \u0111\u1ec1"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0110i\u1ec1u n\u00e0y s\u1ebd x\u00f3a t\u1ea5t c\u1ea3 c\u00e1c v\u1ea5n \u0111\u1ec1 cho b\u00e0i vi\u1ebft n\u00e0y. C\u1ea7n ph\u1ea3i l\u01b0u \u0111\u1ec3 k\u00edch ho\u1ea1t qu\u00e9t m\u1edbi n\u1ed9i dung b\u00e0i vi\u1ebft. B\u1ea1n c\u00f3 mu\u1ed1n ti\u1ebfp t\u1ee5c kh\u00f4ng?"],"Clearing...":["\u0110ang x\u00f3a..."],"Issues cleared successfully.":["\u0110\u00e3 x\u00f3a v\u1ea5n \u0111\u1ec1 th\u00e0nh c\u00f4ng."],"Failed to clear issues.":["Kh\u00f4ng th\u1ec3 x\u00f3a v\u1ea5n \u0111\u1ec1."],"An error occurred while clearing issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1."]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

💡 Verification agent

🧩 Analysis chain

Incorrect text-domain ‘messages’ – must be ‘accessibility-checker’

All user-facing strings in this plugin should be keyed under the plugin’s own text domain to ensure they are loaded by load_plugin_textdomain(). Using the generic 'messages' domain breaks that contract and the translations won’t be picked up in production.

-{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/editorApp.bundle.js","domain":"messages",
+{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/editorApp.bundle.js","domain":"accessibility-checker",

Follow-up verification script to catch any other offenders:


🏁 Script executed:

#!/bin/bash
# List JSON translation files that still use the wrong text domain
fd -e json | xargs grep -n '"domain":"messages"' || echo "✅  No remaining occurrences."

Length of output: 148121


Replace generic text domain in all JSON translation files
All of your plugin’s .json language packs under languages/ are currently keyed to the "messages" domain. They must use "accessibility-checker" so that WordPress loads them via your plugin’s own text domain.

• Affected files (examples):

  • languages/accessibility-checker-vi-*.json
  • languages/accessibility-checker-bg_BG-*.json
  • languages/accessibility-checker-cs_CZ-*.json
  • …and every other languages/accessibility-checker-*.json containing "domain":"messages".

Apply a find-and-replace across the languages/ directory. For example:

- "domain":"messages"
+ "domain":"accessibility-checker"

After updating, rebuild your JSON packs or rerun wp i18n make-json so the new domain is embedded correctly.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/editorApp.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Clear Issues":["X\u00f3a v\u1ea5n \u0111\u1ec1"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0110i\u1ec1u n\u00e0y s\u1ebd x\u00f3a t\u1ea5t c\u1ea3 c\u00e1c v\u1ea5n \u0111\u1ec1 cho b\u00e0i vi\u1ebft n\u00e0y. C\u1ea7n ph\u1ea3i l\u01b0u \u0111\u1ec3 k\u00edch ho\u1ea1t qu\u00e9t m\u1edbi n\u1ed9i dung b\u00e0i vi\u1ebft. B\u1ea1n c\u00f3 mu\u1ed1n ti\u1ebfp t\u1ee5c kh\u00f4ng?"],"Clearing...":["\u0110ang x\u00f3a..."],"Issues cleared successfully.":["\u0110\u00e3 x\u00f3a v\u1ea5n \u0111\u1ec1 th\u00e0nh c\u00f4ng."],"Failed to clear issues.":["Kh\u00f4ng th\u1ec3 x\u00f3a v\u1ea5n \u0111\u1ec1."],"An error occurred while clearing issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1."]}}}
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/editorApp.bundle.js","domain":"accessibility-checker","locale_data":{"messages":{"":{"domain":"accessibility-checker","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"Clear Issues":["X\u00f3a v\u1ea5n \u0111\u1ec1"],"This will clear all issues for this post. A save will be required to trigger a fresh scan of the post content. Do you want to continue?":["\u0110i\u1ec1u n\u00e0y s\u1ebd x\u00f3a t\u1ea5t c\u1ea3 c\u00e1c v\u1ea5n \u0111\u1ec1 cho b\u00e0i vi\u1ebft n\u00e0y. C\u1ea7n ph\u1ea3i l\u01b0u \u0111\u1ec3 k\u00edch ho\u1ea1t qu\u00e9t m\u1edbi n\u1ed9i dung b\u00e0i vi\u1ebft. B\u1ea1n c\u00f3 mu\u1ed1n ti\u1ebfp t\u1ee5c kh\u00f4ng?"],"Clearing...":["\u0110ang x\u00f3a..."],"Issues cleared successfully.":["\u0110\u00e3 x\u00f3a v\u1ea5n \u0111\u1ec1 th\u00e0nh c\u00f4ng."],"Failed to clear issues.":["Kh\u00f4ng th\u1ec3 x\u00f3a v\u1ea5n \u0111\u1ec1."],"An error occurred while clearing issues.":["\u0110\u00e3 x\u1ea3y ra l\u1ed7i khi x\u00f3a c\u00e1c v\u1ea5n \u0111\u1ec1."]}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-vi-c6b6e50c6acd7c42c9d09e857f9ed6b0.json at
line 1, the JSON translation file uses the generic "messages" text domain
instead of the plugin-specific "accessibility-checker" domain. Replace all
occurrences of "domain":"messages" with "domain":"accessibility-checker"
throughout this file and all other JSON translation files in the languages/
directory. After making these replacements, rebuild the JSON language packs or
rerun the wp i18n make-json command to embed the updated domain correctly.

}
}
} No newline at end of file
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/pageScanner.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["m\u1edf c\u1eeda s\u1ed5 m\u1edbi"],"new window":["c\u1eeda s\u1ed5 m\u1edbi"],"new tab":["tab m\u1edbi"],"click":["nh\u1ea5p"],"click here":["nh\u1ea5p v\u00e0o \u0111\u00e2y"],"here":["t\u1ea1i \u0111\u00e2y"],"go here":["\u0111i \u0111\u1ebfn \u0111\u00e2y"],"more":["th\u00eam"],"more...":["th\u00eam..."],"more\u2026":["th\u00eam\u2026"],"details":["chi ti\u1ebft"],"more details":["th\u00eam chi ti\u1ebft"],"link":["li\u00ean k\u1ebft"],"this page":["trang n\u00e0y"],"continue":["ti\u1ebfp t\u1ee5c"],"continue reading":["\u0111\u1ecdc ti\u1ebfp"],"read more":["\u0111\u1ecdc th\u00eam"],"open":["m\u1edf"],"download":["t\u1ea3i xu\u1ed1ng"],"button":["n\u00fat"],"keep reading":["ti\u1ebfp t\u1ee5c \u0111\u1ecdc"],"learn more":["t\u00ecm hi\u1ec3u th\u00eam"]}}} No newline at end of file

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue

Incorrect lang header & placeholder translation-revision-date will break Vietnamese translations

The metadata still shows "lang":"en" and keeps the placeholder
"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE".
WordPress uses these fields to decide whether to load the file; if they’re wrong/empty the JSON is skipped and the vi strings will never appear.

Fix (excerpt):

- "translation-revision-date":"YEAR-MO-DA HO:MI+ZONE",
+ "translation-revision-date":"2025-08-06 17:05+0000",

- "lang":"en",
+ "lang":"vi",

Re-generate the file with wp i18n make-json (or similar) so the metadata matches the locale.

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
{"translation-revision-date":"YEAR-MO-DA HO:MI+ZONE","generator":"WP-CLI\/2.12.0","source":"build\/pageScanner.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"en","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["m\u1edf c\u1eeda s\u1ed5 m\u1edbi"],"new window":["c\u1eeda s\u1ed5 m\u1edbi"],"new tab":["tab m\u1edbi"],"click":["nh\u1ea5p"],"click here":["nh\u1ea5p v\u00e0o \u0111\u00e2y"],"here":["t\u1ea1i \u0111\u00e2y"],"go here":["\u0111i \u0111\u1ebfn \u0111\u00e2y"],"more":["th\u00eam"],"more...":["th\u00eam..."],"more\u2026":["th\u00eam\u2026"],"details":["chi ti\u1ebft"],"more details":["th\u00eam chi ti\u1ebft"],"link":["li\u00ean k\u1ebft"],"this page":["trang n\u00e0y"],"continue":["ti\u1ebfp t\u1ee5c"],"continue reading":["\u0111\u1ecdc ti\u1ebfp"],"read more":["\u0111\u1ecdc th\u00eam"],"open":["m\u1edf"],"download":["t\u1ea3i xu\u1ed1ng"],"button":["n\u00fat"],"keep reading":["ti\u1ebfp t\u1ee5c \u0111\u1ecdc"],"learn more":["t\u00ecm hi\u1ec3u th\u00eam"]}}}
{"translation-revision-date":"2025-08-06 17:05+0000","generator":"WP-CLI\/2.12.0","source":"build\/pageScanner.bundle.js","domain":"messages","locale_data":{"messages":{"":{"domain":"messages","lang":"vi","plural-forms":"nplurals=2; plural=(n != 1);"},"opens a new window":["m\u1edf c\u1eeda s\u1ed5 m\u1edbi"],"new window":["c\u1eada s\u1ed5 m\u1edbi"],"new tab":["tab m\u1edbi"],"click":["nh\u1ea5p"],"click here":["nh\u1ea5p v\u00e0o \u0111\u00e2y"],"here":["t\u1ea1i \u0111\u00e2y"],"go here":["\u0111i \u0111\u1ebfn \u0111\u00e2y"],"more":["th\u00eam"],"more...":["th\u00eam..."],"more\u2026":["th\u00eam\u2026"],"details":["chi ti\u1ebft"],"more details":["th\u00eam chi ti\u1ebft"],"link":["li\u00ean k\u1ebft"],"this page":["trang n\u00e0y"],"continue":["ti\u1ebfp t\u1ee5c"],"continue reading":["\u0111\u1ecdc ti\u1ebfp"],"read more":["\u0111\u1ecdc th\u00eam"],"open":["m\u1edf"],"download":["t\u1ea3i xu\u1ed1ng"],"button":["n\u00fat"],"keep reading":["ti\u1ebfp t\u1ee5c \u0111\u1ecdc"],"learn more":["t\u00ecm hi\u1ec3u th\u00eam"]}}}
🤖 Prompt for AI Agents
In languages/accessibility-checker-vi-ffd08c762bdabd23386ea03007811e0f.json at
line 1, the lang header is incorrectly set to "en" and the
translation-revision-date is a placeholder, causing WordPress to skip loading
the Vietnamese translations. To fix this, regenerate the JSON file using the
appropriate WordPress i18n tool such as `wp i18n make-json` to ensure the lang
field is set to "vi" and the translation-revision-date is correctly populated
with the actual revision date and time.

@pattonwebz pattonwebz closed this Aug 6, 2025
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.

2 participants