Skip to content

Releases: generoi/gds-content-translation

v1.0.6

Choose a tag to compare

@JonatanStorlund JonatanStorlund released this 25 Aug 07:31
1204d10

Translation status admin

  • New: Copy original. Each missing translation can now be created as a verbatim copy of the source language, with no machine translation involved — useful when the wording should stay put, and available even when DeepL is unconfigured or out of quota.
  • The existing machine translation button is relabelled AI translation.

Both actions run through the same Polylang Pro pipeline, so blocks, internal links, post IDs, terms and metas are remapped to the target language, and the translation is created as a draft and opened in the editor. The copy path is gated on GeneroWP\ContentTranslation\MachineTranslation::isCopyAvailable() (Polylang Pro only), the AI path still on a configured service.

v1.0.5

Choose a tag to compare

@oxyc oxyc released this 12 Aug 12:58
2623218

Fixed

  • Internal links now keep their query string and fragment when rewritten to another language. url_to_postid() resolves on the path alone and get_permalink() rebuilds the URL from scratch, so a link like /konfiguroi/?tuote=window#tiedot lost everything after the path — on every frontend render, source language included. Covers both the render_block_data path and Polylang's sync path (#2).

Developer

  • PHPUnit suite covering the Polylang block filters, run against WordPress + Polylang via wp-env (#2, #3).
  • Test workflow runs lint and PHPUnit on every pull request.
  • CI dispatches a Satis rebuild when a release is cut (#1).

v1.0.4

Choose a tag to compare

@JonatanStorlund JonatanStorlund released this 24 Jun 14:05

Summary

  • Add instant title search to the Content translation status admin table.
  • Client-side filtering hides non-matching rows as you type — no page reload.
  • Smart matching: case- and diacritic-insensitive, multi-word (all terms must match), with fuzzy subsequence fallback for typos.
  • Live match count, clear button, Escape to reset, and empty-state row when nothing matches.

Test plan

  • Open Polylang → Content translation status for a post type with many rows
  • Typing in the search field instantly filters the table
  • Multi-word queries narrow results (e.g. contact about)
  • Clear and Escape restore the full list

v1.0.3

Choose a tag to compare

@JonatanStorlund JonatanStorlund released this 24 Jun 13:20

Summary

  • Add Content translation settings admin page (Polylang submenu) to hide post types from the status dashboard tabs.
  • Wire BlockPostIdTranslation and MetaRules into plugin bootstrap for post/attachment ID sync and translatable post meta export.
  • Expand README with theme filter documentation for block rules, link URLs, post meta, and ACF field modes.

Test plan

  • Polylang → Content translation settings saves hidden post types
  • Hidden types no longer appear as tabs on Content translation status
  • Machine translation still syncs block post IDs and exports configured post meta