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.

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.

Dieses Thema enthält 8 Antworten, hat 2 Stimmen.

Zuletzt aktualisiert von Andreas W. Vor 1 Jahr, 10 Monate.

Assistiert von: Andreas W..

Verfasser Beiträge
Mai 31, 2022 unter 2:25 pm #11354397

minolZ

Sagen Sie uns, was Sie versuchen zu erreichen?

Wir verwenden das Community-PlugIn Buddyboss und Buddypress User Blog um Blogbeiträge zu schreiben.
- Wenn ich mich in "Mein Profil" befinde und den Reiter "Blog" anklicke, möchte ich wie bisher auf die Ansicht meiner veröffentlichten und in Bearbeitung befindlichen Blogposts gelangen (siehe Bild). Der Link dazu lautet:
versteckter Link

Seit der Installation von WPML ist dies leider nicht mehr möglich. Hier gelange ich über einen Redirect nach Klick auf den Reiter "Blog" auf die "Blogbeitrag erstellen Seite" --> versteckter Link.

Nach Deaktivierung des WPML PlugIns komme ich wieder auf die klassische Ansicht meiner veröffentlichten Blogbeiträge etc. (siehe Bild)

Folgen Sie einer Dokumentation?
Nein.

Gibt es ein ähnliches Beispiel, das wir sehen können?
Siehe Website-Stagingumgebung

Was ist der Link zu Ihrer Website?

versteckter Link

2022-05-31 16_09_10-.png
Juni 1, 2022 unter 5:28 pm #11365117

Andreas W.
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: America/Lima (GMT-05:00)

Hallo,

Bitte lege eine Sicherungskopie von Website und Datenbank an und füge dann folgenden Code am Ende der functions.php Deines Child Themes ein:

function bp_core_fix_wpml_redirection( $q ) {
    if (
        ! defined( 'DOING_AJAX' )
        && ! bp_is_blog_page()
        && (bool) $q->get( 'page_id' ) === false
        && (bool) $q->get( 'pagename' ) === true
    ) {
        write_log("bp core redirect inside if");
        $bp_current_component = bp_current_component();
        $bp_pages             = bp_core_get_directory_pages();
 
        if ( 'photos' === $bp_current_component && isset( $bp_pages->media->id ) ) {
            $q->set( 'page_id', $bp_pages->media->id );
        } elseif ( 'forums' === $bp_current_component && isset( $bp_pages->members->id ) ) {
            $q->set( 'page_id', $bp_pages->members->id );
        } elseif ( 'groups' === $bp_current_component && isset( $bp_pages->groups->id ) ) {
            $q->set( 'page_id', $bp_pages->groups->id );
        } elseif ( 'documents' === $bp_current_component && isset( $bp_pages->document->id ) ) {
            $q->set( 'page_id', $bp_pages->document->id );
        } elseif ( 'videos' === $bp_current_component && isset( $bp_pages->video->id ) ) {
            $q->set( 'page_id', $bp_pages->video->id );
        } elseif ( 'blog' === $bp_current_component && isset( $bp_pages->members->id ) ) {
            $q->set( 'page_id', $bp_pages->members->id );
        } else {
            $page_id = apply_filters( 'bpml_redirection_page_id', null, $bp_current_component, $bp_pages );
            if ( $page_id ) {
                $q->set( 'page_id', $page_id );
            }
        }
    }
 
    return $q;
}
 
add_action( 'parse_query', 'bp_core_fix_wpml_redirection', 5 );

Teste danach alle BuddyPress Profil-Seiten.

Quelle: https://wpml.org/de/forums/topic/wrong-buddypress-redirect-on-profile-page-for-events-manager-item/

Gib mir danach bitte Bescheid, ob der Fix das Problem lösen konnte oder nicht und wir werden versuchen das Problem zu replizieren und intern zu eskalieren.

Mit freundlichen Grüßen
Andreas

Juni 2, 2022 unter 7:16 am #11369377

minolZ

Guten Morgen Andreas,

nach einfügen des php-snippets in das Child-Theme gibt es einen kritischen Fehler auf der Website.
Hierzu der Error-Log:
Got error 'PHP message: PHP Fatal error: Cannot redeclare bp_core_fix_wpml_redirection() (previously declared in .../wp-content/themes/buddyboss-theme-child/functions.php:103) in .../wp-content/plugins/buddyboss-platform/bp-core/compatibility/bp-incompatible-plugins-helper.php on line 88'

Habe anschließend den alten Stand wieder hergestellt und versucht die Funktion bei ../wp-content/plugins/buddyboss-platform/bp-core/compatibility/bp-incompatible-plugins-helper.php anstelle der bisherigen Funktion einzufügen. Dabei kam wieder ein kritischer Fehler (erst nach Klick auf das Profil). Der Error-Log spuckte folgendes aus:

Got error 'PHP message: PHP Fatal error: Uncaught Error: Call to undefined function write_log() in .../wp-content/plugins/buddyboss-platform/bp-core/compatibility/bp-incompatible-plugins-helper.php:95\nStack trace:\n#0 .../wp-includes/class-wp-hook.php(307): bp_core_fix_wpml_redirection()\n#1 ../wp-includes/class-wp-hook.php(331): WP_Hook->apply_filters()\n#2 ../wp-includes/plugin.php(524): WP_Hook->do_action()\n#3 ../wp-includes/class-wp-query.php(1104): do_action_ref_array()\n#4 .../wp-includes/class-wp-query.php(1792): WP_Query->parse_query()\n#5 '...'

Habe anschließend wieder die alte Funktion eingefügt, damit der kritische Fehler verschwindet. Problem ist leider noch nicht behoben.

MfG

Juni 3, 2022 unter 7:45 am #11380047

Andreas W.
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: America/Lima (GMT-05:00)

Hallo,

Es scheint als wird diese Funktion bereits in der functions.php verwendet.

Man müsste also die bereits verwendete Funktion anpassen.

Oder teste bitte mal folgendes Snippet:

add_filter( 'parse_query', 'blog_wpml_fix_redirection' , 5 );

function blog_wpml_fix_redirection ($q) {
	if ( bp_current_component() == 'blog') {
	    if ( isset( bp_core_get_directory_pages()->members->id ) ) {
		$q->set( 'page_id', bp_core_get_directory_pages()->members->id );
	    }
	}
}

Sollte dies funktionieren, dann gib mir bitte ebenso Bescheid und ich wäre dankbar, wenn wir daraufhin versuchen könnten diese Problem auf einer Test-Site, welche ich bereitstellen kann, nachstellen und intern eskalieren könnten, damit unsere Entwickler von dem Problem Kenntnis nehmen können.

Mit freundlichen Grüßen
Andreas

Juni 15, 2022 unter 9:08 am #11465091

minolZ

Hi there,

sorry that we didn't reply to your last message here yet. The problem is that our developer got sick and thus cannot work on this currently. But we assume, that he will be back next week.

Best regards

Juni 16, 2022 unter 3:16 am #11472189

Andreas W.
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: America/Lima (GMT-05:00)

Hello,

I would like to request temporary access (wp-admin and FTP) to your site to take a better look at the issue. It would be better for a testing site where the issue is replicated.

You will find the needed fields for this below the comment area when you log in to leave your next reply. The information you will enter is private which means only you and I can see and have access to it.

Maybe I'll need to replicate your site locally. For this, I’ll need to temporarily install a plugin called “All In One WP Migration” on your site. This will allow me to create a copy of your site and your content. Once the problem is resolved I will delete the local site. Let me know if this is ok with you.

IMPORTANT

Please make a backup of site files and database before providing us access.
If you do not see the wp-admin/FTP fields this means your post & website login details will be made PUBLIC. DO NOT post your website details unless you see the required wp-admin/FTP fields. If you do not, please ask me to enable the private box. The private box looks like this:
versteckter Link

The steps are also shown in this video: versteckter Link

Best regards
Andreas

Juni 21, 2022 unter 9:44 am #11507031

Andreas W.
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: America/Lima (GMT-05:00)

Hallo,

Auf dem Staging habe ich die WP-Speichergrenze angepasst, da diese nur bei 40M lag und die Website bereits knapp 100MB in Anspruch nimmt.

Zudem habe ich das Theme-Update und die Plugin-Updates ausgeführt.

Das Problem in Bezug auf den Blog bleibt bestehen und bezieht sich hier allerdings anscheinend auf das Plugin "BuddyPress User Blog".

Nach den Updates habe ich auf DE einen Artikel angelegt und die Anzahl wird auch korrekt synchronisisert, wenn ich auf EN wechsel. Ein Formular wird mir auf EN allerdings nicht angezeigt.

Bitte installiere das Plugin auf der folgenden Test-Site, damit ich es dort testen und das Problem intern eskalieren kann. Falls notwendig, füge bitte auch das BuddyBoss Theme und die BuddyBoss Plugins in aktuellster Version hinzu.

Es könnte eventuell sogar der Fall sein, dass auch das Plugin WP-Members in das Problem verstrickt ist.

Ein-Klick-Anmeldung:
versteckter Link

Hinterlass mir bitte eine kurze Nachricht, sobald die Komponenten installiert wurden.

Mit freundlichen Grüßen
Andreas

Juni 22, 2022 unter 7:09 am #11516271

minolZ

Guten Morgen,

habe nun alles auf der zur Verfügung gestellten Sandbox installiert und wieder das selbe Problem. (WP-Member ist nicht installiert und auch nicht das Problem)

Besten Dank! 🙂

Juni 23, 2022 unter 12:49 am #11524307

Andreas W.
Supporter

Sprachen: Englisch (English ) Deutsch (Deutsch )

Zeitzone: America/Lima (GMT-05:00)

Hallo,

Vielen Dank!

Das Problem lässt sich auch ohne BuddyBoss replizieren.

Beispiel:

In den Optionen des BP User Post Plugins wird eine Seite in den Optionen unter DE hinterlegt.
Wechseln wir nun in der Admin-Leiste auf EN sehe wir das die Option hier leer ist. Wir können hier nun eine englische Seite auswählen, wenn wir aber die OPtion speichern, entfernt diese die Seiten, die wir unter DE eingestellt hatten.

Wir können allerdings diese Option mit WPML String Translation übersetzen.

Das Feld heisst [buddyboss_sap_plugin_options]create-new-post und beinhaltet die ID der Seite, die in den Optionen hinterlegt ist.

In meinem Fall war das für DE die ID 64.

Ich habe dann unter WPML > Stringübersetzung > Texte in Adminbildschirmen übersetzen nach "64" gesucht und den String zur Stringübersetzung hinzugefügt.

Die übersetze Seite hat bei mit die ID "66" und diese Zahl setzt ich als Übersetzung dieses Feldes ein.

Normalerweise sollte dies das Problem lösen, was es i.d.F. leider nicht tut, aber die Ursache warum dies hier nicht funktioniert scheint mit hohe Wahrscheinlichkeit am User Post Plugin zu liegen.

Soll bedeuten, dass Problem würde ebenso mit anderen Übersetzungsplugins auftreten.

Ich muss dazu sagen, dass es sich hier um ein Plugin, dass sehr selten zu Anwendung kommt und bevor unser Team hier tätig wird, bitte ich Dich den Author des Plugins auf diese Probleme aufmerksam zu machen.

Möglicherweise kann der Author selbst das Problem von alleine lösen. Er kann sich aber auch durch dieses Kontaktformular an uns wenden, sollte er Fragen zum Thema haben.

https://wpml.org/documentation/support/go-global-program/

Mit freundlichen Grüßen
Andreas

This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.