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 beantwortet Anfragen im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.

Heute stehen keine Supporter zur Arbeit im German-Forum zur Verfügung. Sie können gern Tickets erstellen, die wir bearbeiten werden, sobald wir online sind. Vielen Dank für Ihr Verständnis.

Schlagwörter: 

This topic contains 11 Antworten, has 2 Teilnehmer.

Last updated by davidH-95 vor 1 Tag, 18 Stunden.

Assigned support staff: Marcel.

Autor Beiträge
November 12, 2019 um 8:59 pm

davidH-95

Ich versuche: Seiten zu öffnen (custom posts), welche mit WPML von Deutsch auf Englisch übersetzt wurden. Seit dem letzten Update von WPML funktionieren nicht mehr alle Übersetzungen. Es sind Fehler bei den Links/Permalinks vorhanden.

Es sind nicht alle Seiten betroffen. Auf den ersten Blick scheint es so, dass die letzten Übersetzungen mit dem Advanced Translation Editor betroffen sind. Ältere Übersetzungen funktionieren weiterhin noch.

Hier funktioniert es:
(Original) hidden link
(Übersetzung) hidden link

Hier funktioniert es nicht (400 bad request bei Englisch):
(original) hidden link
(übersetzung) hidden link

Es gibt noch viele weitere Beispiele mit "400 bad request".

November 13, 2019 um 9:09 am #4936723

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

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

Hallo David,

Vielen Dank, dass Sie den WPML Support kontaktiert haben.

Die englische URL ist falsch. Haben Sie den Zusatz %primary-website%/ manuell definiert? Da es immer auf diesen Zusatz weiterleitet, sieht sich nach einer falschen Rewrite Rule aus.

Freundliche Grüße
Marcel

November 16, 2019 um 7:32 am #4957461

davidH-95

Hallo Marcel

Ja das ist richtig, es gibt diesbezüglich auch schon Support-Threads von mir. Es gibt eine Rewrite Rule für die Post Types "angebot", auf Basis der Auswahl eines ACF-Felds. Auf Grund der Permalink-Struktur wird dann mit dem Plugin "Multiple Domain Mapping on single Site" (hidden link) die entsprechende Domain zugewiesen. Das hat jetzt alles super funktioniert die letzten zwei Jahre. Seit dem letzten WPML Update scheint die Rewrite Rule für einige bereits übersetzte Beiträge nicht mehr zu funktionieren.

Vielen Dank für eure Unterstützung.

David

November 18, 2019 um 9:21 am #4963357

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

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

Hallo David, danke für die Info,

das betroffene Plugin wurde bisher nicht mit WPML getestet, lt. WP-Repository schreibt der Autor bezüglich Multilingual Plugins:

"Generally we do not offer compatibility with these plugins yet, since they have their own functionality to use additional domains for specific languages. This is something we are going to test out in more detail for future versions."

Es lässt sich somit schwer nachvollziehen was genau dies verursacht. Sie können versuchen den Plugin Autor in unser Go-Gobal Programm einzuladen. Hier können wir dem Autor helfen sein Produkt WPML kompatibel zu machen.

Bitte um Info.

Freundliche Grüße
Marcel

November 21, 2019 um 9:17 pm #4993277

davidH-95

Hallo Marcel

Wie du jedoch siehst, hat der Fehler nicht wirklich etwas mit dem Plugin zu tun, denn das Plugin verändert den Link in keiner Weise. Es scheint so, dass WPML seit dem Update eine Rewrite-Rule blockiert oder sonst irgendetwas anders macht was die Permalink-Struktur angeht als vor dem Update.

Interessanterweise habe ich noch entdeckt, dass einige Beiträge plötzlich doppelte Einträge unter der Sprache "German" haben. (siehe Screenshot anbei) Wenn ich auf "All Languages" gehe, dann werden 3 statt 2 Einträge angezeigt. (normal wäre 1x deutsch als "original" und 1x englisch als "übersetzt").

Ich wäre euch sehr dankbar, wenn ihr mich auch bei diesen beiden Problemen hier so gut wie möglich unterstützen könnt, damit die Website ganz bald wieder korrekt funktioniert.

Freundliche Grüsse
David Hefti

November 22, 2019 um 8:50 am #4995029

Marcel
Supporter

Languages: Englisch (English ) Deutsch (Deutsch )

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

Hallo David,

bitte versuchen Sie das Problem auf folgender isolierten Sandbox Umgebung nachzustellen:

hidden link

Wenn der Fehler in Kombination mit dem Permalink Plugin auftritt oder WPML einen Redirect Fehler löst, können wir versuchen einen Workaround dafür zu finden. Dafür müssen wir den Fehler jedoch zuerst reproduzieren.

Freundliche Grüße
Marcel

Dezember 5, 2019 um 10:24 pm #5080635

davidH-95

Hallo Marcel

Wie bitte soll ich den Fehler in der isolierten Sandbox nachstellen? Da sind weder die entsprechenden Plugins installiert noch die Custom Post Types, bei welchen die Fehler auftreten.

Ich wäre euch sehr dankbar, wenn ihr das Problem an den 2nd Level Support weitergeben könnt, damit die Fehler nach dem WPML-Update behoben werden können (ev. auch mit einem Workaround).

Aktuell gibt es auf unserer Website überall fehlerhafte Links zu englischen Übersetzungen, das ist sehr ungünstig.

Bitte schaut euch bei meinem letzten Post auch den Screenshot an. Vor dem WPML-Update waren pro "Angebot" (post) nur ein Eintrag da (1x Deutsch, 1x Englisch). Jetzt gibt es einen dritten Eintrag...

Die Zugangsdaten für die WordPress-Installation habt ihr ja.

Vielen Dank für eure Unterstützung.

Freundliche Grüsse
David Hefti

Dezember 5, 2019 um 10:25 pm #5080637

davidH-95

.

Dezember 5, 2019 um 10:29 pm #5080667

davidH-95

example not working

Dezember 5, 2019 um 10:29 pm #5080691

davidH-95

example working

Dezember 5, 2019 um 10:32 pm #5080721

davidH-95

3 posts instead of only 2 after the update...

Dezember 6, 2019 um 6:08 am #5081313

davidH-95

So I think it's this filter in our functions.php which is no more working for some of the translated posts:

function wpse_5308_post_type_link( $link, $post ) {
    if ( $post->post_type === 'angebot' ) {
        if ( $website = get_field( 'primary_website',$post->ID ) )
            $link = str_replace( '%primary-website%', $website, $link );
    }

    return $link;
}

add_filter( 'post_type_link', 'wpse_5308_post_type_link', 10, 2 );

And these are the corresponding rewrite rules:

add_filter('rewrite_rules_array', 'mmp_rewrite_rules');
function mmp_rewrite_rules($rules) {
    $newRules  = array();
    $newRules['engadin-stmoritz/(.+)/?$'] = 'index.php?angebot=$matches[1]';
	$newRules['davosklosters/dk-(.+)/?$'] = 'index.php?post_type=page&pagename=davosklosters/dk-$matches[1]';
	$newRules['tagesskitouren/(.+)/?$'] = 'index.php?post_type=page&pagename=tagesskitouren/$matches[1]';
	$newRules['skitouren-bivio//(.+)/?$'] = 'index.php?post_type=page&pagename=skitouren-bivio/$matches[1]';
	$newRules['davosklosters/(.+)/?$'] = 'index.php?angebot=$matches[1]';
	$newRules['skitouren-bivio/(.+)/?$'] = 'index.php?angebot=$matches[1]';
    return array_merge($newRules, $rules);
}

Regarding the Domain Mapping Plugin this is the workaround suggested by you. And it is working. That's not the problem right now:

function mytheme_do_not_redirect_city_post_type( $redirect, $post_id, $query ) {
    if ( $GLOBALS['_SERVER']['HTTP_HOST'] === 'bergfuehrer-davosklosters.ch' OR $GLOBALS['_SERVER']['HTTP_HOST'] === 'skitourenbivio.ch' OR $GLOBALS['_SERVER']['HTTP_HOST'] === 'www.skitourenbivio.ch') {
       return false;
     }
    return $redirect;
    };
add_filter( 'wpml_is_redirected', 'mytheme_do_not_redirect_city_post_type', 10, 3 );

So two questions:
- Why is the string replacement of the permalink not working for some of the translations?
- Why do we have this strange duplicates of posts (angebote) since the last WPML update?

Thanks a lot for your help.
David