na da musst Du etwas lesen. Irgendwo hängt die Datei mit dran an einem Beitrag von ecomeback. Wenn nicht hier, dann in dem anderen Thread zu joomla 1.5...
da ist dann auch alles fein beschrieben.
Wirklich einfach ;-)
Viel Spaß
MichaS.
na da musst Du etwas lesen. Irgendwo hängt die Datei mit dran an einem Beitrag von ecomeback. Wenn nicht hier, dann in dem anderen Thread zu joomla 1.5...
da ist dann auch alles fein beschrieben.
Wirklich einfach ;-)
Viel Spaß
MichaS.
Hallo MichaS. und danke für die Infos, aber der Post #35 von ecomback, nach dem hier alle in Begeisterung ausbrechen, enthält leider keine Datei. Und spätere Posts hab ich auch durchsucht, ohne was zu finden. Ich würde mich ja auch gern vor Freude rollen, aber ich kann mit dem Codeschnipsel dort noch nicht so viel anfangen. Kann es sein, dass hier eine Datei fehlt? Vielleicht hat ja noch jemand einen .zip irgendwo, der das Plugin enthält. Wäre doch schade, wenn das verloren gegangen wäre, oder?
LG
SoHo
Hi,
ich habe es so gemacht:
- lege eine php-Datei mit dem Namen multidomain.php an
- schreibe den Codeschnipsel hinein und das eben für jede Domain (siehe dieses Beispiel)
<?php
/* SVN: $Id$ */
/**
* @package joomla.plugin
* @subpackage system.multidomain
* @copyright Copyright (c) 2008 art-two [creative development]
* @author Guido Essing [ecomeback] <ecomeback@os-development.de>
* @version
* 0.1 - 04.01.2009 - pre alpha<br />
*/
// check global access point
defined('_JEXEC') or exit( 'forbidden' );
$mainframe->registerEvent( 'onAfterInitialise', 'plgSystemMultiDomain' );
/**
* MultiDomain Switcher
* @return void
*/
function plgSystemMultiDomain()
{
$application =& JFactory::getApplication();
// frontend check
if (!$application->isSite())
{
return true;
}
$config = JFactory::getConfig();
$uri = JFactory::getURI();
$menu = JSite::getMenu();
//echo 'URI:'.$uri->getHost();
switch(strtolower($uri->getHost()))
{
case "euroblogg.eu";
// set default menu id - home
$menu->setDefault(308); // id have to exists in #__menu
// set live site
$config->setValue('config.live_site', 'http://www.euroblogg.eu');
// set template
JRequest::setVar('template', 'euroblogg');
break;
case "euroconsults.eu";
// set default menu id - home
$menu->setDefault(270); // id have to exists in #__menu
// set live site
$config->setValue('config.live_site', 'http://www.euroconsults.eu');
// set template
JRequest::setVar('template', 'euroconsults');
break;
case "funds-navigator.eu";
// set default menu id - home
$menu->setDefault(532); // id have to exists in #__menu
// set live site
$config->setValue('config.live_site', 'http://www.funds-navigator.eu');
// set template
JRequest::setVar('template', 'bizcity_ii');
break;
case "europa-meine-chance.eu";
// set default menu id - home
$menu->setDefault(579); // id have to exists in #__menu
// set live site
$config->setValue('config.live_site', 'http://www.pr-europawahl.euroconsults.eu');
// set template
JRequest::setVar('template', 'europawahl');
break;
default:
// set default menu id - home
$menu->setDefault(270); // id have to exists in #__menu
// set live site
$config->setValue('config.live_site', 'http://www.euroconsults.eu');
// set template
JRequest::setVar('template', 'beez');
break;
}
}
?>
- lege eine zweite Datei mit dem Namen multidomain.xml an und schreibe dort nachfolgenden Text hinein:
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="plugin" group="system">
<name>System - MultiDomain</name>
<author>Guido Essing [ecomeback]</author>
<creationDate>January 2009</creationDate>
<copyright>(c) 2009 - art-two [creative development]</copyright>
<license>http://www.gnu.org/copyleft/gpl.html GNU/GPL</license>
<authorEmail>development@art-two.de</authorEmail>
<authorUrl>www.art-two.de</authorUrl>
<version>0.1</version>
<description><![CDATA[MultiDomain Plugin]]></description>
<files>
<filename plugin="multidomain">multidomain.php</filename>
</files>
<params/>
</install>
- überspiele diese zwei kleinen Dateien in das Verzeichnis /server/was auch immer/dein verzeichnis-wo auch administrator-und modules-liegt/plugins/system/
- Bedanke Dich bei ecomeback durch Klicken des DANKE-Buttons in seinem Beitrag oder überweise einen großen Beitrag an ihn ;-)
Tipp: zuerst vielleicht für alle Domains ein Template nehmen, wenn das ordentlich funktioniert, dann Stück für Stück die Templates austauschen und dann die ItemIds der Frontpage ;-)
MichaS. aus B ;-)
Hi,
ich glaub was hier im ganzen Thread einfach gefehlt hat, war die XML-Datei ohne die J! das Plugin nicht "installieren" bzw. im Admin anzeigen kann. Der PHP-Code selbst war ja gleichmässig und variantenreich im Thread verteit
Ich darf aber mal noch anmerken, dass $uri->getHost(), wie der Name schon sagt, den Hostnamen liefert und der hat keine Präfixe wie "http:" oder einen abschliessenden "/". ISt also beides in den zahllosen "case"-Angaben flüssiger als Wasser.
Zudem hast du mehrfach "http:/" (ein Schrägstrich) statt "http://" (zwei Schrägstriche) drin stehen. Da das aber ohnehin unnötig ist, würde ich die Zeilen gleich rauslöschen.
Für 'config.live_site' ist die Angabe des Protokolls hingegen korrekt, ebenfalls ohne abschließenden Backslash.
Sollte jedoch auch SSL ins Spiel kommen, wären da noch ein paar Abfragen/Konfigs zu setzen.
CirTap
Danke, habe ich oben korrigiert/optimiert
MichaS.
Ihr seid genial! Danke.
LG
SoHo
Hallo,
erstmal Danke für die Zusammenstellung der Codeschnipsel etc.
Hab alles gemacht wie in der Anleitung (hoffe ich zumindest). Hab bei meinem Hoster alle betroffenen URL's auf das Verzeichnis mit der Joomlainstallation gelegt. Hab die mulidomain.php angepasst (unterschiedliche Templates, unterschiedliche id für HOME und alles in das Verzeichnis geladen.
Warum auch immer, ich kann zwar die Seietne jetzt aufrufen, aber die verschiedenen templates bzw. startseiten werden nicht genommen.
Was hab ich denn da falsch gemacht ??
Ich kann das Plugin auch nicht im Backend finden !!! Danke für Euren Input !!
Olav
Geht nicht gibt's nicht. Es gibt für alles eine Lösung....nur wer kennt die ????![]()
Es ist Zeit für Korsika Urlaub im Ferienhaus
So, nachdem ich die beiden Files gezippt und dann "klassisch" installiert habe konnte ich das Plugin aktivieren und die Anpassungen bzgl. der Templates haben geklappt. Die Startseite bleibt aber immer die gleiche. Habe ich das falsch verstanden mit der Anpassung ??
Ausserdem werden Umlaute nicht mehr korrekt angezeigt. Gibt es dazu Hinweise ??
danke.
Edit: Hat sich inzwischen erledigt. Habe das .php-file nochmal mit Notepad++ UTF8-codiert und hochgeladen. Danach klappte alles wie gewünscht, ausser daß das Backend immer noch ANSI-codiert daherkommt. Aber damit kann ich notfalls leben.
Geändert von Olav (19.11.2009 um 09:37 Uhr) Grund: Hat inzwischen geklappt
Geht nicht gibt's nicht. Es gibt für alles eine Lösung....nur wer kennt die ????![]()
Es ist Zeit für Korsika Urlaub im Ferienhaus
Hallo,
Ich habe jetzt alles genau so gemacht, wie MichaS. es beschrieben hat und soweit klappt auch alles wunderbar!
Ein kleiner, logischer Fehler ist allerdings noch zu beheben:
Wenn ich auf www.domain2.de angelangt bin und dann ein bisschen rumklicke und dann wieder auf die Startseite von dieser domain2.de kommen möchte, erscheint, logischer weise, eine Fehlermeldung, denn der Button "Startseite" führt ja zu www.domain2.de/startseite.html, das ist dann ja aber doppelt auf den Artikel "startseite.html" geleitet.
Jetzt würde mich interessieren, wie Ihr das gemacht habt?!?
Vielen Dank und einen schönen Abend noch!
Ich hab die beiden Datein - "multidomain.php" & "multidomain.xml" beide nun erstellt und instaliert. Die Domainunterscheidung scheint zu funktionieren, nur wie bring ich den ganzen nun bei die jeweils verschiedenen Inhalte zu zeigen?
Hab komischerweise auch das Problem mit den Umlauten...aber hier bringt die umcodierung in UTF8 garnichts :(
Geändert von davin-c (20.01.2010 um 20:32 Uhr)
Lesezeichen