Navigation überspringen

Dies ist das technische Support-Forum für WPML – das mehrsprachige WordPress-Plugin.

Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.

Sun Mon Tue Wed Thu Fri Sat
- 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 9:00 – 13:00 -
- 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 14:00 – 18:00 -

Unterstützt die Zeitzone: Europe/Madrid (GMT+01:00)

Dieses Thema enthält 0 Antworten, hat 0 Stimmen.

Zuletzt aktualisiert von Marcel Vor 1 Woche, 5 Tage.

Assistiert von: Marcel.

Verfasser Beiträge
Januar 15, 2025 unter 4:38 pm #16598396

christinaG-4

Background of the issue:
I am trying to use a filter on the page versteckter Link called 'Type'. It should work normally when translated, allowing me to get the English posts when I choose at least the first two options.

Symptoms:
The filter doesn't work when translated. It only works if I set it to copy, but it retrieves the German posts instead of the English posts.

Questions:
Why doesn't the filter work when translated?
How can I get the filter to show English posts when translated?

Januar 15, 2025 unter 5:12 pm #16598486

Marcel
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+01:00)

Hallo,

haben Sie eine Testumgebung wo ich mir dies genau ansehen könnte?

Dazu bräuchte ich bitte temporären Zugriff (WP-Admin und FTP) auf Ihre Seite, vorzugsweise zu einer Test/Staging Seite, an der das Problem nach Möglichkeit repliziert wurde.

Die dafür benötigten Felder finden Sie unterhalb des Kommentarbereichs. Die Informationen, die Sie eingeben, sind privat, d.h. nur Sie und ich können sie sehen und haben Zugriff darauf.

WICHTIG
Bitte erstellen Sie eine Sicherungskopie der Site-Dateien und der Datenbank, bevor Sie uns Zugang gewähren.
-Wenn Sie die wp-admin/FTP-Felder nicht sehen, bedeutet dies, dass Ihre Post- und Website-Login-Daten ÖFFENTLICH gemacht werden. Posten Sie Ihre Website-Details NICHT, wenn Sie die erforderlichen wp-admin/FTP-Felder nicht sehen. Wenn Sie das nicht tun, bitten Sie mich, die private Box zu aktivieren. Die private Box sieht wie folgt aus:
versteckter Link

Viele Grüße
Marcel

Januar 16, 2025 unter 12:10 pm #16601871

Marcel
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+01:00)

Hallo,

ich bekomme einen 403 Fehler statt der Loginmaske:

Fehler 403: Ihr Zugriff auf diese Seite wurde verweigert
Mögliche Ursachen für diesen Fehler sind:

Es wurde keine Index-Seite (z.B. index.html oder index.php) hinterlegt
Ihre Anfrage wurde von unserer Web Application Firewall unterbunden. Sofern Sie der Betreiber dieser Website sind, können Sie die Web Application Firewall in unserem Control Panel web***.dogado.net:8443 anpassen oder deaktivieren.

Haben Sie ggf. eine IP-Safelist aktiv? Via VPN von anderen Ländern ist es identisch.

Viele Grüße
Marcel

Januar 16, 2025 unter 12:49 pm #16601957

christinaG-4

Können Sie nochmal Überprüfen? das muss jetzt funktioniert.

Januar 16, 2025 unter 6:46 pm #16603568

Marcel
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+01:00)

Hallo,

der Typ wird korrekt in die Übersetzung übergeben (nur die Download-Files scheinbar nicht). Das Feld "downloads-typ" ist korrekt auf "Übersetzbar". Ich sehe im Frontend keinen Unterschied, wenn ich das Feld auf "Copy" setze. Sprechen wir vom identischen Feld?

Soweit ich sehe, ist im versteckter Link">EN-Post der "Typ" korrekt definiert. Ich sehe keinen Grund, warum "Handling recommendations" nicht auswählbar ist.
Lt. der Doku scheint es zu stimmen: versteckter Link.

Bitte posten Sie Ihre exakte Vorgehensweiße der Anlage, damit ich dies reproduzieren kann.

Mir ist ebenso noch aufgefallen, dass in Elementor auf der Download Seite keine Filter selektiert sind. Wenn ich dies mache, bleibt die Ausgabe gleich. Wenn ich es jedoch wieder entferne, ist das Feld defekt und der Selectfilter verschwindet für die Übersetzung. Haben Sie dazu im Verlauf der Anlage etwas an der Selektierung angepasst? Siehe

versteckter Link
versteckter Link

Elementor lässt sich scheinbar in der Default-Sprache nicht immer öffnen, ich benötige mehrere Anläufe dies überhaupt öffnen zu können.

Viele Grüße
Marcel

Januar 17, 2025 unter 7:13 am #16604477

christinaG-4

ok, ich habe den Filter auf dieser Seite wieder repariert:
versteckter Link
Es wird ohne Probleme übersetzt.
Der Unterschied zwischen dem Ändern des benutzerdefinierten Feldes zum Kopieren oder Übersetzen besteht darin, dass es beim Kopieren funktioniert, aber die deutschen Elemente auf der englischen Seite angezeigt werden und nicht die übersetzten Elemente.
Es geht also nicht um den Filter selbst, sondern darum, dass die Elemente aus der anderen Sprache kopiert werden und die übersetzten Elemente ignoriert werden.
Der Filter ist auf der übersetzten Seite leer, weil die WPML-Übersetzung so funktioniert, und Sie können sehen, dass der Filter selbst im Frontend korrekt angezeigt wird, obwohl er in der übersetzten Sprache leer ist.
Das Problem ist, wie Sie sehen können, dass es nicht mehr auswählbar ist, obwohl es Beiträge gibt, die dieses benutzerdefinierte Feld haben. Der Filter sollte also zumindest mit „Safety Data sheets“ und „Handling recommendations“ aktiv sein, aber er ist deaktiviert.
Der Filter stammt von Jet Filters (Smart Filters), die Schleife von Elementor Loop.
----------------------------------
Ich habe nur ein Snippet verwendet, um den Platzhalter zu übersetzen:

// Register the placeholder strings with WPML for translation
function register_jet_filters_strings() {
// Registering strings for the search input
do_action('wpml_register_single_string', 'JetSmartFilters', 'Search Placeholder', 'Suchen');
// Registering strings for the first select input
do_action('wpml_register_single_string', 'JetSmartFilters-select', 'Select Placeholder', 'Typ');
// Registering strings for the second select input
do_action('wpml_register_single_string', 'JetSmartFilters-select', 'Select Placeholder 2', 'Anwendungen');
// Registering strings for the third select input
do_action('wpml_register_single_string', 'JetSmartFilters-select', 'Select Placeholder 3', 'Standort');
// Registering strings for the fourth select input
do_action('wpml_register_single_string', 'JetSmartFilters-select', 'Select Placeholder 4', 'Region');

}
add_action('init', 'register_jet_filters_strings');

// Return the translated string for the search input
function translate_jet_filters_strings() {
return apply_filters('wpml_translate_single_string', 'Suchen', 'JetSmartFilters', 'Search Placeholder');
}

// Return the translated string for the first select placeholder
function translate_jet_filters_select_placeholder() {
return apply_filters('wpml_translate_single_string', 'Typ', 'JetSmartFilters-select', 'Select Placeholder');
}

// Return the translated string for the second select placeholder
function translate_jet_filters_select_placeholder_2() {
return apply_filters('wpml_translate_single_string', 'Anwendungen', 'JetSmartFilters-select', 'Select Placeholder 2');
}

// Return the translated string for the third select placeholder
function translate_jet_filters_select_placeholder_3() {
return apply_filters('wpml_translate_single_string', 'Standort', 'JetSmartFilters-select', 'Select Placeholder 3');
}

// Return the translated string for the fourth select placeholder
function translate_jet_filters_select_placeholder_4() {
return apply_filters('wpml_translate_single_string', 'Region', 'JetSmartFilters-select', 'Select Placeholder 4');
}

// Add JavaScript to update the placeholders on the front end
function update_jet_filters_placeholder_script() {
// Fetch the translated string for the search input and both selects
$translated_search_placeholder = translate_jet_filters_strings();
$translated_select_placeholder = translate_jet_filters_select_placeholder();
$translated_select_placeholder_2 = translate_jet_filters_select_placeholder_2();
$translated_select_placeholder_3 = translate_jet_filters_select_placeholder_3();
$translated_select_placeholder_4 = translate_jet_filters_select_placeholder_4();

echo <<<EOD
<script>
function updatePlaceholders() {
// Update search input placeholder
var searchInput = document.querySelector('.jet-search-filter__input');
if (searchInput) {
searchInput.placeholder = '{$translated_search_placeholder}';
}

// Update the first select placeholder
var selectElement = document.querySelector('.jet-select__control[name="downloads-typ"]');
if (selectElement && selectElement.options[0].text === 'Typ') {
selectElement.options[0].text = '{$translated_select_placeholder}';
}

// Update the second select placeholder
var selectElement2 = document.querySelector('.jet-select__control[name="anwendungen"]');
if (selectElement2 && selectElement2.options[0].text === 'Anwendungen') {
selectElement2.options[0].text = '{$translated_select_placeholder_2}';
}

// Update the third select placeholder
var selectElement3 = document.querySelector('.jet-select__control[name="standort_filter"]');
if (selectElement3 && selectElement3.options[0].text === 'Standort') {
selectElement3.options[0].text = '{$translated_select_placeholder_3}';
}

// Update the fourth select placeholder
var selectElement4 = document.querySelector('.jet-select__control[name="region"]');
if (selectElement4 && selectElement4.options[0].text === 'Region') {
selectElement4.options[0].text = '{$translated_select_placeholder_4}';
}
}

document.addEventListener("DOMContentLoaded", updatePlaceholders);
jQuery(document).on('jet-smart-filters/ready', updatePlaceholders); // Handle dynamic content
</script>
EOD;
}
add_action('wp_footer', 'update_jet_filters_placeholder_script');

function register_downloads_typ_options_for_translation() {
// Define the option values for the 'downloads-typ' field
$option_values = [
'Handhabungsempfehlungen' => 'Handhabungsempfehlungen',
'Sicherheitsdatenblätter' => 'Sicherheitsdatenblätter',
'Technische Datenblätter' => 'Technische Datenblätter',
'Kataloge' => 'Kataloge',
'Anwendungsbeispiele' => 'Anwendungsbeispiele'

];

// Register each option value for translation
foreach ($option_values as $value) {
do_action('wpml_register_single_string', 'JetEngine-downloads-typ', $value, $value);
}
}
add_action('init', 'register_downloads_typ_options_for_translation');

-----------------------------

weil die Platzhalter standardmäßig nicht übersetzt werden.
Das ist also alles.
Ich habe meine Einstellungen für WPML bereits gepostet und Sie haben Zugriff darauf, sodass Sie sie überprüfen können.
Benötigen Sie weitere Informationen?

Januar 17, 2025 unter 2:29 pm #16606600

Marcel
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+01:00)

Hallo,

Mein Debugging auf einer Live-Seite ist leider eingeschränkt. Bitte beachten Sie, dass unser Support kein Custom Coding umfasst. Es scheint nicht an den String-Übersetzungen zu liegen, aber es wäre notwendig, alle möglichen Ursachen zuerst zu isolieren, um das Problem einzuschränken. Gerade function register_downloads_typ_options_for_translation() wäre hier interessant, ob die SPrache überhaupt abgefrag wird. Dann können wir, falls notwendig versuchen, dies von Grund auf nachzustellen

Da Sie keine Staging-Umgebung haben, stellen Sie bitte eine versteckter Link">Duplicator-Kopie Ihrer Seite für lokales Debugging bereit. So können wir alles außer dem Filter entfernen und im Debugger genau prüfen, welche Variable übergeben wird.

Viele Grüße
Marcel

Januar 20, 2025 unter 6:51 am #16611791

christinaG-4

ok, ich werde versuchen, eine Staging-Umgebung einzurichten, aber nicht mit einem Plugin, das 200 $ kostet.
Ich werde Ihnen die Zugangsinformationen schicken, sobald es fertig ist.

Januar 20, 2025 unter 8:32 am #16612016

Marcel
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: Europe/Madrid (GMT+01:00)

Hallo,

die freie Version sollte leicht ausreichend sein: https://wordpress.org/plugins/duplicator/. Alternativ gibt es ebenso https://wordpress.org/plugins/all-in-one-wp-migration/, ebenso frei verfügbar.

Viele Grüße
Marcel