Cybokron Consent Manager Translations for YOOtheme Pro

ຄຳອະທິບາຍ

Cybokron Consent Manager Translations for YOOtheme Pro allows you to customize all text strings in the YOOtheme Pro 5 Consent Manager directly from your WordPress admin panel.

Features:

  • Translate all 21 Consent Manager strings
  • 36 pre-configured language presets
  • Locale-scoped overrides for multilingual setups
  • Easy-to-use tabbed interface
  • Live preview, inline QA checks, and compatibility health panel
  • Snapshot history with rollback support
  • Import/Export settings as JSON
  • WordPress.org update status panel with site-wide periodic checks
  • No coding required
  • Compatible with WPML and Polylang

Supported Strings:

  • Banner text and buttons (Accept, Reject, Manage Settings)
  • Privacy Settings modal content
  • Category titles (Functional, Preferences, Statistics, Marketing)
  • Category descriptions
  • Modal buttons (Accept all, Reject all, Save)
  • Show/Hide Services toggles

Pre-configured Languages (36):

English, Chinese, Spanish, French, Portuguese, Russian, Japanese, Indonesian, Italian, Dutch, Polish, Vietnamese, Thai, Ukrainian, Czech, Greek, Romanian, Hungarian, Swedish, Danish, Finnish, Norwegian, Hebrew, Malay, Bengali, Persian, Tamil, Telugu, Marathi, Swahili, Filipino, Turkish, Hindi, Korean, Arabic, German

ພາບໜ້າຈໍ

  • Main settings page with locale scope, update status, compatibility health panel, and translation tabs
  • Banner strings translation with inline QA checks and field-level validation
  • Live preview, action buttons, and snapshot rollback panel

ການຕິດຕັ້ງ

  1. Upload the cybokron-consent-manager-translations-yootheme folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Go to Settings Cybokron Consent Manager Translations for YOOtheme Pro to configure

ຄຳຖາມທີ່ພົບເລື້ອຍ

Does this plugin require YOOtheme Pro?

Yes, this plugin is designed specifically for translating the YOOtheme Pro 5 Consent Manager. It won’t have any effect without YOOtheme Pro installed.

Can I add my own custom language?

Yes! Simply select any language preset and modify the texts to your needs. Your custom translations will override the preset values.

Does it work with multilingual plugins?

The plugin supports locale-scoped settings (for example en_US, tr_TR) so you can maintain different overrides per locale while still using shared language presets.

How do I backup my translations?

Use the Export button to download a JSON file of your current settings. You can Import this file later to restore your translations.

How does the updater panel work?

Enable periodic checks from plugin settings. The plugin reads WordPress core update metadata every 12 hours and shows current update status in the updater panel. Use “Check Now” for an immediate refresh.

My translations are not showing up

  1. Make sure the plugin is enabled (check the toggle in settings)
  2. Clear any caching plugins
  3. Clear your browser cache
  4. Make sure you’re using YOOtheme Pro 5 with the Consent Manager enabled

ການຣີວິວ

ບໍ່ມີການຣີວິວສຳລັບປລັກອິນນີ້.

ຜູ້ຮ່ວມພັດທະນາ ແລະ ຜູ້ພັດທະນາ

“Cybokron Consent Manager Translations for YOOtheme Pro” ແມ່ນຊອຟແວໂອເພັນຊອດ (Open Source). ບຸກຄົນຕໍ່ໄປນີ້ໄດ້ມີສ່ວນຮ່ວມໃນການພັດທະນາປລັກອິນນີ້.

ຜູ້ຮ່ວມພັດທະນາ

“Cybokron Consent Manager Translations for YOOtheme Pro” ໄດ້ຖືກແປເປັນ 1 ພາສາທ້ອງຖິ່ນ. ຂໍຂອບໃຈ ທີມງານຜູ້ແປ ສຳລັບການປະກອບສ່ວນຂອງເຂົາເຈົ້າ.

ແປ “Cybokron Consent Manager Translations for YOOtheme Pro” ເປັນພາສາຂອງເຈົ້າ.

ສົນໃຈຮ່ວມພັດທະນາບໍ່?

ເບິ່ງລະຫັດ, ກວດເບິ່ງ ຄັງເກັບ SVN, ຫຼື ຕິດຕາມ ບັນທຶກການພັດທະນາ ຜ່ານ RSS.

ບັນທຶກການປ່ຽນແປງ

1.4.3

  • Fixed: WPML/Polylang compatibility — translations now auto-detect from WordPress locale when no locale-specific settings exist, fixing missing translations on multilingual sites.
  • Changed: Default language setting changed from ‘en’ to ‘auto’ for better out-of-the-box multilingual support.
  • Packaging: Removed .distignore and .github from distribution to resolve Plugin Check errors.
  • Tested up to WordPress 6.9.

1.4.2

  • Changed: Admin sidebar and settings page header now use white plugin icon for better visibility on dark admin backgrounds.

1.4.1

  • CI: Fixed ABSPATH guard validation to accept WP_UNINSTALL_PLUGIN as valid guard for uninstall.php.

1.4.0

  • New: Plugin icon now displayed in WordPress admin sidebar menu.
  • New: Plugin icon added to settings page header.
  • Changed: Plugin menu moved to top-level admin menu with custom icon for better visibility.

1.3.19

  • CI: Added GitHub Actions workflow for automatic WordPress.org SVN deployment on release.

1.3.18

  • Fixed Contributors field: removed invalid WordPress.org username ercanatay, kept only valid cybokron account.

1.3.17

  • Removed discouraged load_plugin_textdomain() call per Plugin Check (WordPress 4.6+ loads translations automatically for WordPress.org hosted plugins).

1.3.16

  • Security: added wp_kses output sanitization to gettext filter for defense-in-depth against stored XSS in custom translation strings.
  • Security: added type check after maybe_unserialize in locale option scan to prevent object injection.
  • Performance: added rate-limiting (1-hour interval) to health report DB persistence to avoid writes on every frontend page load.
  • Improvement: replaced uniqid() with wp_generate_uuid4() for snapshot IDs (cryptographically stronger, WordPress-native).
  • Improvement: replaced file_get_contents with wp_json_file_decode (WP 5.9+) for language JSON loading with legacy fallback.
  • Improvement: implemented load_plugin_textdomain() for proper i18n text domain loading.
  • Cleanup: removed unnecessary flush_rewrite_rules() calls from activation/deactivation hooks.

1.3.15

  • Text domain: corrected all gettext text domain values from cybokron-consent-manager-translations-yootheme-main to cybokron-consent-manager-translations-yootheme to match the plugin slug exactly.
  • Packaging: removed tests/ and scripts/ directories from the distribution package entirely.
  • Added .distignore to prevent development-only files from being included in future release archives.

1.3.14

  • Plugin Check compatibility: aligned plugin header and gettext text domain to cybokron-consent-manager-translations-yootheme matching the plugin slug.
  • Packaging cleanup: removed hidden/workflow root entries from plugin root (.distignore, .github) to avoid Plugin Check warnings.

1.3.13

  • WordPress.org review compliance: aligned all gettext text domains with plugin slug cybokron-consent-manager-translations-yootheme.
  • Refactor: replaced generic identifiers with a unique plugin prefix (cybocoma_ / CYBOCOMA_) across classes, constants, hooks, options, and AJAX actions.
  • Packaging: added .distignore guidance and prepared release distribution to exclude non-production paths such as tests/ and scripts/.
  • Metadata: updated contributors list and synchronized plugin/readme/composer versions to 1.3.13.

1.3.12

  • i18n fix: restored plugin text domain usage to cybokron-consent-manager-translations-yootheme across plugin/admin/health/strings/updater modules for Plugin Check compatibility.
  • Updated plugin header Text Domain to cybokron-consent-manager-translations-yootheme.
  • Synced plugin metadata/versioning to 1.3.12.

1.3.11

  • Renamed plugin display name and slug to Cybokron Consent Manager Translations for YOOtheme Pro / cybokron-consent-manager-translations-yootheme for WordPress.org naming compliance.
  • Updated plugin metadata, admin settings page slug, text domain, and package file naming to align with the new slug.
  • QA: reran tests, PHP syntax checks, and static scan with clean results.
  • Synced plugin metadata/versioning to 1.3.11.

1.3.10

  • Bugfix (i18n): localized admin statistics summary text generated in JavaScript via wp_localize_script.
  • QA: reran tests, PHP syntax checks, JSON validation, and static scan with clean results.
  • Synced plugin metadata/versioning to 1.3.10.

1.3.9

  • Security: Sanitized admin live-preview link HTML to only preserve safe anchor output (<a href title>) and forced rel="noopener noreferrer".
  • SQL safety: Removed redundant esc_sql() wrappers around $wpdb->esc_like() wildcard queries in scoped option scans and uninstall cleanup.
  • Performance: Persisted snapshot/health/updater internal options with autoload=false to reduce autoload pressure.
  • Uninstall hygiene: Added updater cron hook cleanup (cybocoma_updater_cron_check) for single-site and multisite uninstall paths, including WordPress pre-6.1 fallback logic.
  • Cache consistency: Reset translator original-string map during cache clear and aligned test bootstrap update_option() signature with current core usage.
  • Synced plugin metadata/versioning to 1.3.9.

1.3.8

  • Accessibility: added semantic ARIA roles/attributes for admin translation tabs (tablist, tab, tabpanel) with deterministic roving tabindex.
  • Keyboard UX: added Left/Right plus Home/End navigation support for tab controls.
  • Accessibility state sync: tab panels now consistently toggle both hidden and aria-hidden.
  • Packaging: removed accidental .Jules development artifact from release tree.
  • Synced plugin metadata/versioning to 1.3.8.

1.3.7

  • WordPress.org compliance: removed custom updater hooks that altered core update routines.
  • Updater refactor: switched updater state checks to WordPress core update metadata and human-readable admin status labels.
  • i18n: standardized text domain usage to cybokron-consent-manager-translations-yootheme across plugin files.
  • Compatibility: removed deprecated wp_targeted_link_rel() usage from admin sanitization flow.
  • Tests: added direct file access guards and updated updater tests for the new metadata-driven flow.
  • Synced plugin metadata/versioning to 1.3.7.

1.3.6

  • Security: Added reverse tabnabbing protection to sanitized consent links via wp_targeted_link_rel().
  • Security: Added admin AJAX security headers (X-Content-Type-Options and fallback X-Frame-Options) without overriding stricter pre-existing frame policies.
  • Tests: Added admin AJAX header regression coverage (tests/test_admin_headers.php) and bootstrap stubs for header helpers.
  • Packaging: Removed non-production .jules artifact from release tree.
  • Synced plugin metadata/versioning and text-domain references to 1.3.6.

1.3.5

  • Completed Romanian preset translation gap: updated button_accept from Accept to Acceptă.
  • Synced plugin metadata/versioning and text-domain references to 1.3.5.

1.3.4

  • Added GitHub stable auto-update channel using WordPress Upgrader with releases/latest + zipball_url fallback.
  • Added site-wide updater controls/status panel and manual “Check Now” action in settings.
  • Added 12-hour scheduled update checks (twicedaily) with retry-on-failure and persisted last-error reporting.
  • Added updater-focused test coverage and uninstall cleanup for updater options.
  • Synced plugin metadata/versioning to 1.3.4.

1.3.3

  • Full double-check release: reran syntax/tests/JSON/security scans across the plugin and validated clean results.
  • Maintenance: version/text-domain sync for current release packaging.

1.3.2

  • Plugin Check hardening: added sanitized filter_input() request handling in admin flows and clarified nonce handling for upload endpoints.
  • i18n: aligned all translatable strings with updated text domain and fixed ordered placeholder usage with translator guidance.
  • Packaging: removed non-production root artifacts flagged by Plugin Check (.github, .gitignore, shell runner, and daily markdown report).
  • Performance/quality: added cache layer for locale option scan and documented one-time uninstall wildcard query usage.

1.3.1

  • Fixed i18n coverage for snapshot/quality-check admin messages by replacing hardcoded JavaScript text with localized strings
  • Fixed uninstall script block structure for multisite cleanup flow
  • Removed redundant gmdate() test bootstrap shim to avoid dead-code shadowing in PHP environments
  • Docs: Clarified “add new language” workflow with explicit JSON-file requirements

1.3.0

  • Added locale-scoped settings storage for multilingual workflows (WPML/Polylang friendly)
  • Added compatibility health reporting for potential YOOtheme source string drift
  • Implemented documented extension APIs: cybocoma_translations filter and CYBOCOMA_DISABLED constant behavior
  • Added live preview panel, inline field validation, field-level reset actions, and unsaved-change protection
  • Added settings snapshots with one-click rollback
  • Added release-gate workflow and lightweight PHP tests

1.2.7

  • Performance: Replaced repeated array scans with constant-time lookup maps (isset) in language/placeholder validation paths
  • Improved: Added CYBOCOMA_Strings::is_valid_language() helper and reused it in admin validation flow
  • Quality: Minor internal cleanups and formatting consistency updates for admin/settings rendering
  • Tooling: Added security policy, daily review workflow, and maintenance scripts for code scanning/reporting
  • Docs: Updated contributor workflow and compatibility notes in repository documentation

1.2.6

  • Fixed: Auto language preset now resolves to detected WordPress locale in admin preview/load flows
  • Improved: custom_strings are now stored as diff-only values against selected preset (save/import normalization)
  • Validation: Save and import now block invalid privacy link strings missing required %s or %1$s placeholders

1.2.5

  • Code Style: Converted 4-space indentation to tabs in all PHP files
  • WordPress Coding Standards compliance
  • No functional changes, only whitespace formatting

1.2.4

  • Bugfix: Fixed missing strict comparison in has_placeholder() method (class-strings.php:390)

1.2.3

  • Security: Enforced POST method for settings export (removed GET support)
  • Added JSON validation script for language files (scripts/validate_json.py)
  • Code quality: Added strict comparison to all in_array() calls

1.2.2

  • Fixed: WordPress Plugin Check compliance – all warnings resolved
  • Added cybocoma_ prefix to all template variables
  • Improved input sanitization with wp_unslash()
  • Enhanced $_FILES validation

1.2.1

  • Fixed: Admin settings page not appearing due to hook timing issue
  • The admin_init hook was running after admin_menu, preventing menu registration

1.2.0

  • Major refactoring: moved translations to external JSON files
  • Each language now has its own JSON file (36 files)
  • Implemented lazy loading – only requested language is loaded
  • Reduced memory usage by ~95% on typical requests
  • Better code organization and maintainability

1.1.0

  • Added 30 new language presets (36 total)
  • Chinese, Spanish, French, Portuguese, Russian, Japanese
  • Indonesian, Italian, Dutch, Polish, Vietnamese, Thai
  • Ukrainian, Czech, Greek, Romanian, Hungarian, Swedish
  • Danish, Finnish, Norwegian, Hebrew, Malay, Bengali
  • Persian, Tamil, Telugu, Marathi, Swahili, Filipino
  • Extended WordPress locale mapping for auto-detection
  • Total translations: 756 (36 languages × 21 strings)

1.0.0

  • Initial release
  • 6 language presets included
  • 21 translatable strings
  • Import/Export functionality
  • Tabbed admin interface