=== Scinet Multilingual ===
Contributors: scinet
Donate link: https://www.scinet.eu/danke-sagen/
Tags: multilingual, translation, languages, hreflang, gutenberg
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 1.6.1
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Create and manage multilingual WordPress content with clear workflows, flexible URLs, SEO metadata and optional booking translations.

== Description ==

Scinet Multilingual connects normal WordPress posts, pages, custom post types and taxonomy terms as translations. Your content stays in native WordPress objects, including Gutenberg blocks, revisions and permissions.

Scinet Multilingual is maintained and published by scinet studio - Denise Hollstein. All plugin features are free and licensed under GPL-2.0-or-later.

The guided administration dashboard shows setup progress and provides direct links to the next task. A central content overview filters missing, open and potentially outdated translations and opens the correct editor or creates a linked draft in one click. Language presets, URL previews, translation status and clear actions help editors work without learning technical terminology.

When editing a secondary-language page or post, a reference drawer keeps the readable original content available beside the WordPress editor. The original can also be opened in a separate browser tab.

Choose between fully prefixed URLs, an unprefixed locked default language, or a dedicated domain per language. The plugin also adds language-specific menus, canonical and hreflang output, a configurable responsive Gutenberg language switcher and an optional editor for Scinet Booking translations.

Existing content remains untouched and is treated as content in the configured default language.

Every feature is included free of charge. There are no license keys, trial periods, usage limits or paid feature unlocks.

== Installation ==

1. Upload the plugin folder to `/wp-content/plugins/`.
2. Activate Scinet Multilingual.
3. Open Multilingual > Overview and follow the setup checklist.
4. Open Multilingual > Translate content to find missing translations and create linked drafts.
5. Configure the language switcher under Multilingual > Languages & URLs and add its block to the global header or desired content area.

== Frequently Asked Questions ==

= Does the plugin duplicate my content automatically? =

No. Editors explicitly create each translated draft. This keeps publishing decisions under editorial control.

= Why are taxonomy translations created immediately? =

WordPress has no draft status for categories, tags or other taxonomy terms. Scinet Multilingual therefore asks for the translated name before creating the term and clearly labels the action as immediate.

= What happens to content without a language assignment? =

It remains visible in the default language and nowhere else.

= Are theme and plugin interface strings translated automatically? =

No. Source-code strings use the standard WordPress gettext system. The plugin chooses the request locale; the corresponding theme or plugin language catalog supplies the translated text.

= Is data removed when the plugin is deleted? =

Only if the administrator explicitly enables data deletion in the plugin settings before uninstalling it.

= Does the plugin send data to external services? =

No. Scinet Multilingual makes no external service requests, adds no tracking and sets no frontend cookies. Language relationships and translated fields remain in the local WordPress database.

= Does the Scinet Booking integration send booking data elsewhere? =

Not through this plugin. Scinet Multilingual exchanges translated field values only with a locally installed Scinet Booking plugin. Any external calendar, video-conference or email services are configured and disclosed by that separate plugin.

= Does voluntary support unlock additional features? =

No. All features and regular updates remain available without payment. Voluntary support does not change the plugin's functionality or usage.

== Voluntary support ==

If Scinet Multilingual helps you, you can voluntarily [say thank you](https://www.scinet.eu/danke-sagen/) and support its continued development. The plugin embeds no payment widget, script, image or tracker. The external page is contacted only after you deliberately follow the link.

== Privacy ==

Scinet Multilingual stores language relationships and administrator-entered field translations in the local WordPress database. It does not collect telemetry, create visitor profiles, set frontend cookies or transmit data to third parties. Uninstall preserves this data unless an administrator explicitly enables permanent deletion beforehand.

== Changelog ==

= 1.6.1 =
* Do not offer unpublished static front-page translations as public language links.
* Prevent shared caches from storing query/header-selected language redirects.
* Support bare language-switcher shortcodes on WordPress 6.4.
* Extend release regression coverage for first installation and PHP 8.5.

= 1.6.0 =
* Hardens canonical language URLs, domain origins, REST/editor compatibility and request validation.
* Makes multisite activation, deactivation and uninstall processing batched and failure-safe.
* Adds safe post-meta copy rules, idempotent translation creation and honest term-translation creation.
* Adds complete editor-script localization, accessible booking tabs and explicit persistence errors.
* Adds formal licensing provenance, official Plugin Check automation and an isolated WordPress lifecycle matrix.

= 1.5.1 =

* Added the canonical voluntary-support link and documented that every plugin feature remains free.
* Added one discreet, translatable "DANKE sagen" link to the plugin's own overview page without frontend output or external embeds.
* Extended release validation to reject an incorrect support URL.
* Applied WordPress request unslashing consistently before normalization.

= 1.5.0 =

* Aligned the administration with the shared Scinet plugin design language.
* Kept the calm card-based structure while replacing generic blue and violet accents with restrained Scinet red and neutral charcoal.
* Unified primary actions, active navigation, focus states, setup panels and visual previews with Scinet Booking.

= 1.4.1 =

* Prevented unpublished translation drafts from being exposed as public language-switcher, canonical or alternate URLs.

= 1.4.0 =

* Added global language-switcher settings with a live preview and documented block, shortcode and PHP integration.
* Added responsive direct-link and dropdown layouts with automatic selection for larger language sets.
* Improved accessibility, active-language behavior and configurable handling of missing page translations.

= 1.3.0 =

* Added a central content overview for missing, open, potentially outdated and current translations.
* Added filters by target language, content type, translation status and title with direct create/edit actions.
* Added an original-content reference drawer beside the WordPress editor for secondary-language content.

= 1.2.1 =

* Fixed the booking translation search incorrectly triggering the unsaved-changes warning.

= 1.2.0 =

* Added a dedicated Multilingual dashboard, setup checklist and direct workflow links.
* Added language presets, responsive language cards and a live preview of language URLs.
* Added guarded language removal, clearer validation and unsaved-change protection.
* Improved page, taxonomy and booking translation workflows with completion status, tabs, search and collapsible forms.
* Prepared metadata, privacy documentation and release structure for a future WordPress.org submission.

= 1.1.0 =

* Added three selectable URL strategies: prefixes for all languages, an unprefixed locked default language, and a dedicated domain per language.
* Added validated per-language domain configuration, host-based request detection, cross-domain canonical redirects, REST URLs and hreflang output.
* Added backward-compatible migration from the previous prefix setting.

= 1.0.0 =

* Initial production release.
* Added language-prefixed routing, post and term relations, query isolation and translated front-page support.
* Added language-specific menus, canonical and hreflang metadata, language switcher block and REST endpoint.
* Added optional Scinet Booking field and notification integration.
