Posting in the Magento forums has been disabled pending the implementation of a new and improved forum solution which should better serve the community.

For new questions please post at magento.stackexchange.com, the community-run support site for the Magento community. We will be providing updates on the new forum solution soon. For questions or concerns please email community@magento.com.

Magento Forum

Blöcke oder CMS Seiten Mehrsprachig
 
insession
Member
 
Avatar
Total Posts:  75
Joined:  2008-08-10
Germany
 

Hallo Liebe Magento user,

habe da mal ne Frage, bzw. vielleicht auch einen Denkfehler.
Wenn man CMS Seiten anlegt hat man dann auch eine Möglichkeit diese in der jeweiligen Sprache auszugeben ohne eine Neue seite anzulegen?

Als Beispiel:
4 Sprachen: DE-GB-US-RU
Alle 4 Sprachen sollten die Seite Impressum haben, aber natürlich weils in der Landessprache.
Dazu gibt es einen Block (Rechtliches) innerhalb des Blockes ist dann ein Link zum Impressumsseite mit der ID, dieser Block wird dann auf der Seite veröffentlicht.

<a href="<?php echo $this->getUrl('impressum') ?>" class="menue_recht"><?php echo $this->__('Impressum'?>

Danke für eure Hilfe Chris

 
Magento Community Magento Community
Magento Community
Magento Community
 
team_in_medias
Sr. Member
 
Avatar
Total Posts:  113
Joined:  2008-05-06
Aachen, Germany
 

Hallo Chris,

die Sprachen werden ja üblicherweise über Store Views realisiert. Es ist aber tatsächlich so, dass du pro Sprache eine eigene CMS-Seite anlegen musst, deren Gültigkeit dann jeweils auf den Store View eingeschränkt ist. Die Seiten müssen dann den gleichen Seitenbezeichner haben, damit der Link in allen Sprachen gleich bleiben kann.

Gruß,
Andreas

 
Magento Community Magento Community
Magento Community
Magento Community
 
insession
Member
 
Avatar
Total Posts:  75
Joined:  2008-08-10
Germany
 

Vielen Dank für Deine Antwort, d.h. folglich impressum kann nicht in die jeweilige sprache (engl. Imprint) übersetzt werden.

Nehmen wir das Beispiel, wenn eine CMS seite angelegt ist für den Bereich Deutsch und wir diese nicht im CMS als Englisch anlegen.
Dann im Frontend die Deutsche Seite ansehen und einen Sprachwechels machen, bekommt man generell die 404 Fehler seite?

Da sollte man sich doch eine Verknüpfungsebene machen welche direkt sagt das die Seite (Imprint) im CMS die Übersetztung von Impressum ist.
Oder dies Sprachangaben gleich so machen, wie die in der Artikelanlage, oder gibt es eine Extension für bessere händeln?

 
Magento Community Magento Community
Magento Community
Magento Community
 
team_in_medias
Sr. Member
 
Avatar
Total Posts:  113
Joined:  2008-05-06
Aachen, Germany
 

Hallo Chris,

deiner Aussage ist nicht viel hinzuzufügen. Wenn du wirklich unterschiedliche Seitenbezeichner auf deutsch und englisch haben willst, sehe ich keinen direkten weg für einen einfachen Sprachwechsel, sodass man von impressum.html auf imprint.html kommt. 404 kann man vermeiden, indem du die Seite Impressum halt nicht nur für den deutschen Store anlegst, sondern für alle, aber das führt natürlich dazu, dass, wenn in der englischen Seite impressum.html angegeben wird, der deutsche Text erscheint.

Gruß,
Andreas

 
Magento Community Magento Community
Magento Community
Magento Community
 
insession
Member
 
Avatar
Total Posts:  75
Joined:  2008-08-10
Germany
 

Hallo Andreas,

danke die Idee alle seiten doppelt anzulegen ist gar nicht mal so schlecht smile
Hast du vielleicht noch eine Inspiration für eine Verlinkung, z.b. wenn man die seite imprint (EN) hat dann die (DE) aufruft eine Weiterleitung von der Imprint auf die Impresum (DE) macht.
Wohl am besten mit Java oder?

Danke LG Chris

 
Magento Community Magento Community
Magento Community
Magento Community
 
insession
Member
 
Avatar
Total Posts:  75
Joined:  2008-08-10
Germany
 

Da Fällt mir noch ein, ich habe noch ein paar Probleme einen Block nur bei Deutsch einzubinden:

Dr Block wir über XML direkt eingebunden, sollte aber nur auf der Deutchen Seite ausgegeben werden.
Das Währe mal der Code bisher, vielleicht kannst du mir noch einen kleinen Tipp geben:

<?php
$store 
Mage::app()->getStore(); 
$cms_page Mage::getModel('cms/page');
//$cms_page->addStoreFilter($store);
$cms_page->load('21');
?>
<?php 
if($cms_page->getIsActive()): ?>
<div><?$cms_page->getContent() ?></div>
<?php /*?><?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('qvc')->toHtml() ?><?php */?> 
<?php 
endif; ?>
 
Magento Community Magento Community
Magento Community
Magento Community
 
team_in_medias
Sr. Member
 
Avatar
Total Posts:  113
Joined:  2008-05-06
Aachen, Germany
 

Hallo Chris,

die Umleitung würde ich per .htaccess machen, wenn möglich. Das geht natürlich nur, wenn die Store Views von der URL her auseinanderzuhalten sind, also entweder auf verschiedenen Domains liegen oder die Option “StoreCode zu URLs hinzufügen” aktiv ist.

Gruß,
Andreas

 
Magento Community Magento Community
Magento Community
Magento Community
 
team_in_medias
Sr. Member
 
Avatar
Total Posts:  113
Joined:  2008-05-06
Aachen, Germany
 

Hi Chris,

das Auslesen der Sprache ist mit folgenden Aufrufen möglich:

Mage::app()->getStore()->getCode();
Gibt dir den Code des Store Views.
Mage::app()->getLocale()->getDefaultLocale()
Gibt dir die Locale-Einstellung,a lso z.B. de_DE. Ist in diesem Zusammenhang vielleicht angebrachter.
Anhanddessen kannst du eine einfache IF-Abfrage reinsetzen.

Gruß,
Andreas

 
Magento Community Magento Community
Magento Community
Magento Community
Magento Community
Magento Community
Back to top