Wie kann ich die LINKS meines Navigationsmenüs mit qtranslate auf WordPress übersetzen?
Lesezeit: 6 Minuten
Ich habe eine zweisprachige (englisch/arabisch) WordPress-Seite. Ich konnte die Navigationsmenüpunkte erfolgreich übersetzen. Die Menülinks auf der arabischen Seite verweisen jedoch auf die Standardsprache Englisch.
Wie kann ich WordPress mitteilen, dass ich die Menülinks auf der arabischen Website ändern muss (ich brauche die Links auf der arabischen Website, um /ar einzuschließen, zum Beispiel: www.talalonline.com/ar anstelle von www.talalonline.com)
Danke
@maha, ich habe viel darüber gesucht und die Lösung gefunden Hieraber die Antwort ist ein wenig verschwommen …
Da Sie nicht mit Ihren WP-Kerndateien herumspielen möchten, befinden sich alle Änderungen im Thema. Ihr Thema befindet sich in wp-content/themes/Ihr-Design-Name/
Finden Sie Ihr Thema Funktion.php und fügen Sie den obigen Code am Ende der Datei vor dem PHP-End-Tag (?>):
Dann müssen Sie herausfinden, wo sich Ihre Menüansicht in Ihrem Design befindet. Das Thema, das ich verwende, ist es in der header.php. Vielleicht verwendet Ihre einen anderen Dateinamen, wie z header-fancy-theme.php.
@KamelLabiad, hast du die Änderungen im Code vorgenommen? Es sollte die “Pipes” analysieren, anstatt sie an den HTML-Code zu senden.
– Eduardo Russo
29. Oktober 2014 um 7:48 Uhr
@EduardoRusso Ich habe gerade die Idee, das Menü auf meiner Website zu übersetzen, aufgegriffen, es hat der URI mehr Komplizenschaft hinzugefügt, der Inhalt auf meiner Website ist hauptsächlich arabisch, aber die Menüs sind auf Englisch und ich denke, Benutzer können es immer noch so verwenden So könnte man es hier sehen kamellabiad.comDanke.
– Kamel-Labiade
8. November 2014 um 19:07 Uhr
Ashraf Mohammed
//tested and worked for me.
//use native wordpress filter wp_setup_nav_menu_item
function qtrans_menuitem( $menu_item ) {
// convert local URLs in custom menu items
if ($menu_item->type == 'custom' && stripos($menu_item->url, get_site_url()) !== false){
$menu_item->url = qtrans_convertURL($menu_item->url);
}
return $menu_item;
}
add_filter('wp_setup_nav_menu_item', 'qtrans_menuitem', 0);
Hat bei mir funktioniert! Vielen Dank
– a.boussema
14. Juli 2014 um 15:03 Uhr
Hallo Leute, Entschuldigung für die Anfängerfrage, wo soll ich diesen Code einfügen?
– Kamel-Labiade
20. Oktober 2014 um 22:03 Uhr
@Kamel Labiad füge es in dein Plugin ein
– Ashraf Mohammed
26. Oktober 2014 um 12:20 Uhr
@ashrafmohammed ja welche Datei?
– Kamel-Labiade
28. Oktober 2014 um 3:32 Uhr
@Kamel Sie können es überall in Ihrem Plugin nach “Plugin Header” einfügen. Um ein WordPress-Plugin zu erstellen, folgen Sie bitte diesem Link codex.wordpress.org/Writing_a_Plugin
Geben Sie im Menüpunkt im Feld “Navigationsbeschriftung” einfach Zeichenfolgen für beide Sprachen ein:
[:en]English Text[:de]Deutsch Text
getestet mit qTranslate-X 2.7.8, WordPress 4.1 und Twenty Fifteen 1.0 Theme
Es gibt vier Funktionen in WP, um Ihren Menütext mit der Standard- oder Plugin-Option zu übersetzen.
Jede der vier Funktionen erfordert mindestens ein Argument, nämlich den zu übersetzenden Text. Die Funktionen sind:
__() – (zwei Unterstriche) Die grundlegende Funktion, die Sie die meiste Zeit verwenden werden. Es gibt den Text in der richtigen Sprache zurück.
e() – Dasselbe wie _(), außer dass der Text wiederholt wird, anstatt ihn zurückzugeben.
_n() – Wird verwendet, wenn der Text Plural sein kann. Wenn Sie also beispielsweise anzeigen möchten, wie viele Kommentare abgegeben wurden, möchten Sie möglicherweise entweder „X Kommentare“ oder „X Kommentar“ ausgeben, je nachdem, wie viele Kommentare vorhanden sind Sie haben.
_x() – Nützlich, wenn die Übersetzung des Wortes vom Kontext abhängt. „Post“ könnte je nach Kontext „ein Post (Substantiv)“ oder „posten (Verb)“ bedeuten. Es ist wichtig, dass der Übersetzer weiß, was Sie meinen, wenn er korrekt übersetzt. _x() wird hauptsächlich dort verwendet, wo einzelne Wörter verwendet werden.
Ex
echo __( 'Menu Text' );
Ich arbeite auch mit qTranslate und einer zweisprachigen arabisch/englischen Website.
Sie können Ihre haben .htaccess wie die folgenden:
Und wählen Sie die Optionen “Pre-Path-Modus verwenden (Standard, setzt /en/ vor URL)” aus Erweiterte Einstellungen Abschnitt Ihrer qTranslate-Plugin-Einstellungsseite.
Jordi Corominas
Ich habe es gelöst, indem ich 2 Menüpunkte für Spanisch und für Englisch und Französisch hinzugefügt habe. Dann lasse ich das “Navigationslabel” in jeweils einer Sprache leer. Wenn es kein Navigationslabel gibt, “malt” WordPress den Menüpunkt nicht und wenn meine Website auf Spanisch präsentiert wird, erscheint das “englische Linkelement” nicht, und wenn ich die Website auf Englisch habe, passiert das gleiche mit dem spanischen Menü Artikel.
10039300cookie-checkWie kann ich die LINKS meines Navigationsmenüs mit qtranslate auf WordPress übersetzen?yes