---
title: "srlanguagemenu - Problem bei forceUseOfExternalUrl und default-Sprache"
url: "https://www.typo3.net/d/91082-srlanguagemenu-problem-bei-forceuseofexternalurl-und-default-sprache"
source: "typo3.net"
tags: ["Extensions","Frage","RealURL"]
created: "2009-07-06"
last_reply: "2011-09-19"
replies: 2
solved: true
page: 1
pages: 1
lang: "de"
---

# srlanguagemenu - Problem bei forceUseOfExternalUrl und default-Sprache

Extensions · 2 Antworten · gelöst · gestartet 2009-07-06

## Frage

**Unbekannter Benutzer** · 2009-07-06 · [Beitrag #1](https://www.typo3.net/d/91082-srlanguagemenu-problem-bei-forceuseofexternalurl-und-default-sprache/1)

Hallo zusammen,

leider habe ich bisher noch keine Lösung zu diesem Problem gefunden:
Ich verwende realURL und srlanguagemenu in einer Typo3-Installation und möchte gerne das Sprachenmenü so nutzen, dass immer auf die jeweilge Domain, passend zu der Sprache, gesprungen wird. Demnach habe ich vier Domains im Stile www.test.de, www.test.es, www.test.co.uk, www.test.fr.
Deutsch ist die Standard-Sprache mit der languageID 0. Es folgen:

- es = 1

- en = 2

- fr = 3

Mein Problem ist nun, dass nur die Default-Sprache im Menü keine externalURL enthält. Bin ich also im deutschen Bereich auf test.de, kann ich in alle Sprachen und die jeweiligen Domains springen. Auch zwischen den Sprachen funktioniert der wechsel wunderbar, aber auf die Default-Sprache komme ich nicht mehr zurück, da hier als link nur start.html eingesetzt ist und die Domain fehlt.
Da ich nun in der realURL-Konfiguration die baseURL der Sprache anpasse, ist der Link in die deutsche Sprache immer defekt. Aus dem spanischen Bereich ist der Link dann www.test.es/start.html, was nicht funktionieren kann.

**srlanguagemenu-TS:**

```typoscript
plugin.tx_srlanguagemenu_pi1 {
	flag.CUR.stdWrap.wrap = <div class="CUR"> | </div>
	englishFlagFile = fileadmin/styles/mga/images/flags/en.gif

	defaultCountryISOCode = 
	defaultLanguageISOCode = de
	doNotLinkCurrent = 1
	useSysLanguageTitle = 1

	forceUseOfExternalUrl = 1

	useExternalUrl.de = http://{$URL.de}
	useExternalUrl.es = http://{$URL.es}
	useExternalUrl.en = http://{$URL.en}
	useExternalUrl.fr = http://{$URL.fr}
}
lib.language < plugin.tx_srlanguagemenu_pi1
```

**realURL-TS**
$baseURL_const enthält die URL der jeweiligen Sprache. Im deutschen Bereich also www.test.de

```typoscript
#### Aktivierung RealURL ####
config {
  baseURL = 1
  baseURL = http://{$baseURL_const}/
  tx_realurl_enable = 1
  prefixLocalAnchors = all
  notification_email_urlmode = all
}
#### Aktivierung RealURL ####

#Base-URL-Fix für IE6 Fehler "Vorgang abgebrochen"
[browser = msie] && [version= <7]
	config{ 
		baseURL >
		headerComment = -->  <base href="http://{$baseURL_const}/"></base> <!--
		xhtml_cleaning = 0
	}
[global]
```

Da ich das genau auf diese Weise schon auf anderen Seiten zum Laufen bekommen habe und nun schon drei Tage nach dem Fehler suche, wäre ich euch wirklich sehr dankbar. Die Seite liegt in einem neuen TYPO3 4.2.6 bei Mittwald.

Vielen Dank im Voraus
Michael

## Beste Antwort

**trainerth** · 2009-07-08 · [Beitrag #2](https://www.typo3.net/d/91082-srlanguagemenu-problem-bei-forceuseofexternalurl-und-default-sprache/2)

Das würde mich auch interessieren!

Wäre wichtig ;(

## Antworten

### [#2](https://www.typo3.net/d/91082-srlanguagemenu-problem-bei-forceuseofexternalurl-und-default-sprache/2) · trainerth · 2009-07-08 · Beste Antwort

(Text siehe oben unter „Beste Antwort“.)

### [#3](https://www.typo3.net/d/91082-srlanguagemenu-problem-bei-forceuseofexternalurl-und-default-sprache/3) · avonis · 2011-09-19

Das ist ein Bug in der Extension. Die Standard-Sprache hat intern offenbar keine ID-Kennung. sr_languagemenu schmeisst die Standard-Sprache an der auskommentierten Stelle raus:

```php
if (is_array($this->conf['useExternalUrl.'])) {
  foreach ($languages as $key => $val) {
//  if ($this->languagesUids[$key]) {
      if (!$langArr[$this->languagesUids[$key]]) {
        if ($this->conf['useExternalUrl.'][$val]) {
          $this->languagesExternalUrls[$key] = $this->conf['useExternalUrl.'][$val];
          $langArr[$this->languagesUids[$key]] = $this->languagesUids[$key];
        }
      } else {
        if ($this->conf['useExternalUrl.'][$val] && ($this->conf['useExternalUrl.'][$val. '.']['force'] || $this->conf['forceUseOfExternalUrl'])) {
          $this->languagesExternalUrls[$key] = $this->conf['useExternalUrl.'][$val];
        }
      }
//  }
  }
}
```

Wenn ihr die if-Klausel wie oben auskommentiert, liefert das Menü auch bei der Originalsprache die passende URL aus.

Achtung! Auch hässlich sind teilweise die Sprach-Ids im Template-Setup. Für die deutsche Sprache musste folgende Konfiguration verwendet werden. Key für deutsch ist "de_DE".

```php
lib.language_menu {

        [...bla...]

	forceUseOfExternalUrl = 1 
	useExternalUrl.de_DE = http://www.as-vertriebsservice.de
	useExternalUrl.en = http://www.as-vertriebsservice.com
}
```

---
Wir lieben TYPO3: Avonis - New Media
<http://www.avonis.com>

---

Quelle: „srlanguagemenu - Problem bei forceUseOfExternalUrl und default-Sprache“, typo3.net, https://www.typo3.net/d/91082-srlanguagemenu-problem-bei-forceuseofexternalurl-und-default-sprache
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
