Open-Source Webdesign

Mehrsprachigkeit: teile und herrsche!

Zweisprachigkeit: Vogel mit Wörterbuch

Mei­ne alte fodina.de-Site hat­te ich zwei­spra­chig auf­ge­setzt. Mit der Hil­fe von WP-Glo­bus. So nett das für Jah­re auch lief, zuletzt hat­te sich WP-Glo­bus ver­schluckt. Gründ­lich! Wenn ich den deut­schen Text edi­tier­te, ließ es den eng­li­schen ver­schwin­den. Und umge­kehrt. So etwas soll mir nicht noch ein­mal pas­sie­ren. Zu auf­wen­dig war die Restau­ra­ti­on. Also habe ich bei mei­ner jet­zi­gen bootS­core Migra­ti­on auf zwei getrenn­te Sites umge­stellt, auf eine ver­teil­te Mehr­spra­chig­keit — sozu­sa­gen:

Auf karsten-reincke.de wird Deutsch gespro­chen, Eng­lisch auf fodina.de. Damit brau­che ich auch nicht mehr alle Bei­trä­ge wech­sel­sei­tig zu über­set­zen. Macht ja kei­nen Sinn bei denen, die sich nur an deutsch­spra­chi­ge Lese­rin­nen wen­den. Hat noch nie Sinn gemacht. Außer­dem eröff­net dies the­ma­ti­sche Frei­räu­me: auf der einen Sei­te (fodina.de) geht es um FOSS, auf der ande­ren (karsten-reincke.de) auch um mein ande­res Leben.((Der Preis dafür ist aller­dings ein ver­fei­ner­tes Sta­ging.))

Aller­dings sol­len die Sei­ten mei­ner Pär­chen immer noch wech­sel­sei­tig auf sich ver­wei­sen. Also brau­che ich einen Plug­in unab­hän­gi­gen Sprach­wechs­ler, den ich dort mög­lichst ein­fach ein­fü­gen kann. Wer’s gebrau­chen kann, neh­me es sich:

[ de | en ]

Lösung

  • Füge fol­gen­den Code in die functions.php Dei­nes Child-The­mes ein:
/*
 * (c) 2023 Karsten Reincke
 * SPDX-License-Identifier: MIT
*/
function switch_fromto($atts){
  $toSite="http://whereever.en/mywp.toLang";
  $atts = (array) $atts;
  $fromLang=$atts[0];
  $toLang=$atts[1];
  $toPage=$atts[2];
  $lsw= '<div class="text-right">[ ' . $fromLang . ' | <a href="' 
    .$toSite . "/". $toPage . '">'. $toLang . '</a> ]</div>';
  $res=
  '<div class="container">' .
    '<div class="d-flex justify-content-end sample-row">' .
      '<div class="col-xs">' . 
        $lsw .
    '</div></div></div>';
  return $res;
}
add_shortcode('fromto', 'switch_fromto');
  • Set­ze whereever.en/mywp.toLang auf Dei­ne Wirk­lich­keit um.
  • Füge auf der deut­schen Sei­te des Paa­res [­fromto de en https://where.en/page] ein, und auf eng­li­schen [­fromto en de https://wo.de/seite]

Hintergrund

Plug­ins für mehr­spra­chi­ge Sites arbei­ten eigent­lich immer gleich. Sei­ten und Posts exis­tie­ren intern in zwei Ver­sio­nen. Bei WP-Glo­bus wur­den sie in dem­sel­ben Daten­bank­ein­trag abge­legt und mit Mar­kie­run­gen von­ein­an­der getrennt {:de}...{:}{:en}...{:}. Der Rest ist opti­scher Zucker, den das Plug­in dar­über­legt. Des­halb kön­nen und müs­sen die­se Plug­ins auch einen auf die je eige­ne Art aus­ge­rich­te­ten Sprach­wechs­ler anbin­den, den die Site­ad­mi­nis­tra­to­rin ins Menü ein­bin­den lässt.

Wenn sich das Mul­ti-Lan­guage-Plug­in ver­irrt, ist aller­dings Hol­land in Not. Denn der Zugriff auf die ein­zel­nen Sprach­ab­schnit­te erfolgt ja eh nur über das Plug­in selbst. Wie soll frau es da gera­de rücken? Des­halb ist die siche­re Vari­an­te die, mit zwei getrenn­te Sites zu arbei­ten. Der Over­head der Pfle­ge wiegt die Ver­läss­lich­keit alle­mal auf.


Und in welchem Zusammenhang …

… steht das mit unse­rer Migra­ti­on zu bootS­core? Nun: Muss eine Web-Desi­gne­rin ihr bis­he­ri­ges Word­Press-The­me auf­ge­ben, braucht sie Ersatz. Ein frei­es The­me von der Stan­ge wird sie per­so­na­li­sie­ren wol­len. Zuerst etwas kos­me­tisch, dann in Sachen Grau­wert, Mehr­spra­chig­keit und inne­rer Ver­weis­tech­nik und Ver­lin­kung. Schließ­lich wird sie beson­de­re Foo­ter akti­vie­ren, ein Zweit­me­nü oder einen Copy­right-Hin­weis, bevor sie die ‘SEO-zitätüber­prüft. Die­sen Weg unter­stützt auch die­ser Post.


Im Übri­gen: Män­ner sind mit­ge­meint.

To top