Magento Forum

   
Problems with multistore
 
cominaction
Member
 
Total Posts:  55
Joined:  2009-01-07
 

Hello,

iwant to install the iphone optimized theme on our shop!

We have a multishop

- EU Store
- US Store

I have in the index.php the following code:

<?php
/**
 * Magento
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Open Software License (OSL 3.0)
 * that is bundled with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://opensource.org/licenses/osl-3.0.php
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@magentocommerce.com so we can send you a copy immediately.
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade Magento to newer
 * versions in the future. If you wish to customize Magento for your
 * needs please refer to http://www.magentocommerce.com for more information.
 *
 * @category   Mage
 * @package    Mage
 * @copyright  Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
 * @license    http://opensource.org/licenses/osl-3.0.php  Open Software License (OSL 3.0)
 */
function check_mobile() // ©2009 by TMEDIA cross communications, <a href=\"http://www.tmedia.de\">www.tmedia.de</a> 
 
$agents = array(  // hier alle gewünschten Mobilgeräte eintragen 
 
\'Windows CE\'\'Pocket\'\'<SPAN class=hilite>Mobile</SPAN>\',    
 
\'Portable\'\'Smartphone\'\'SDA\'\'PDA\'\'Handheld\'\'Symbian\',    
 
\'WAP\'\'Palm\'\'Avantgo\'\'cHTML\'\'BlackBerry\'\'Opera Mini\',    
 
\'Nokia\'\'PSP\'\'iPhone\'   
 
);

 
// Browserkennung 
 
for ($i=0$i<count($agents); $i++) {    
 
if ( isset($_SERVER[\"HTTP_USER_AGENT\"]) && strpos($_SERVER[\"HTTP_USER_AGENT\"]$agents[$i]) !== false )      
 return 
true;  
 

 
return false;
}



if (version_compare(phpversion(), \'5.2.0\'\'<\')===true{
    
echo  \'<div style=\"font:12px/1.35em arial, helvetica, sans-serif;\"><div style=\"margin:0 0 25px 0; border-bottom:1px solid #ccc;\"><h3 style=\"margin:0; font-size:1.7em; font-weight:normal; text-transform:none; text-align:left; color:#2f2f2f;\">Whoops, it looks like you have an invalid PHP version.</h3></div><p>Magento supports PHP 5.2.0 or newer. <a href=\"http://www.magentocommerce.com/install\" target=\"\">Find out</a> how to install</a> Magento using PHP-CGI as a work-around.</p></div>\';
    exit;
}

/**
 * Error reporting
 */
error_reporting(E_ALL E_STRICT);

/**
 * Compilation includes configuration file
 */
$compilerConfig \'includes/config.php\';
if (
file_exists($compilerConfig)) {
    
include($compilerConfig);
}

$mageFilename 
\'app/Mage.php\';

if (!
file_exists($mageFilename)) {
    
if (is_dir(\'downloader\')) {
        header
(\"Location: downloader\");
    
else {
        
echo $mageFilename.\" was not found\";
    
}
    
exit;
}


require_once $mageFilename;

#Varien_Profiler::enable();

#Mage::setIsDeveloperMode(true);

#ini_set(\'display_errors\', 1);

umask(0);

 switch(
$_SERVER[\'HTTP_HOST\']{
     
     
case \'pv-contractor.com\'//domain 1 ohne www
     
case \'www.pv-contractor.com\'//domain 1 mit www
     
Mage::setIsDeveloperMode(true);
     
Mage::run(\'us_store\'\'website\'); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich
     
break;
     
     case 
\'oos.mission-solar.eu\'//domain 2 ohne www
     
case \'www.oos.mission-solar.eu\'//domain 2 mit www
Mage::setIsDeveloperMode(true);
     
Mage::run(\'eu_store\'\'website\'); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich
     
break;
       
     default:
    
Mage::setIsDeveloperMode(true);
     
Mage::run(); //das ist der default store (wo die Installation liegt)
     
break;
      
}

So when i change

Mage::run(\’us_store\’, \’website\’); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich

to

Mage::run(\’mobile\’, \’website\’); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich

then i get the the mobile theme but for all stores.

How can change this so, that when a customer come from www.pv-contractor.com and have a mobile device, then switch to iphone theme, and when coems from normal pc device, then switch to normal skin/template

Any suggestion about it?

Pls need help

regards

cominaction

 
Magento Community Magento Community
Magento Community
Magento Community
 
cominaction
Member
 
Total Posts:  55
Joined:  2009-01-07
 

Have solved smile

perhaps other helps this

<?php
/**
* Magento
*
* NOTICE OF LICENSE
*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@magentocommerce.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade Magento to newer
* versions in the future. If you wish to customize Magento for your
* needs please refer to http://www.magentocommerce.com for more information.
*
* @category Mage
* @package Mage
* @copyright Copyright (c) 2008 Irubin Consulting Inc. DBA Varien (http://www.varien.com)
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
*/
function check_mobile() { // ©2009 by TMEDIA cross communications, <a href="http://www.tmedia.de">www.tmedia.de</a>
$agents = array( // hier alle gewünschten Mobilgeräte eintragen
‘Windows CE’, ‘Pocket’, ‘<SPAN class=hilite>Mobile</SPAN>’,
‘Portable’, ‘Smartphone’, ‘SDA’, ‘PDA’, ‘Handheld’, ‘Symbian’,
‘WAP’, ‘Palm’, ‘Avantgo’, ‘cHTML’, ‘BlackBerry’, ‘Opera Mini’,
‘Nokia’, ‘PSP’, ‘iPhone’
);

// Browserkennung
for ($i=0; $i<count($agents); $i++) {
if ( isset($_SERVER["HTTP_USER_AGENT"]) && strpos($_SERVER["HTTP_USER_AGENT"], $agents[$i]) !== false )
return true;
}
return false;
}

if (version_compare(phpversion(), ‘5.2.0’, ‘<’)===true) {
echo ‘<div style="font:12px/1.35em arial, helvetica, sans-serif;"><div style="margin:0 0 25px 0; border-bottom:1px solid #ccc;"><h3 style="margin:0; font-size:1.7em; font-weight:normal; text-transform:none; text-align:left; color:#2f2f2f;">Whoops, it looks like you have an invalid PHP version.</h3></div><p>Magento supports PHP 5.2.0 or newer. <a href="http://www.magentocommerce.com/install" target="">Find out</a> how to install</a> Magento using PHP-CGI as a work-around.</p></div>’;
exit;
}

/**
* Error reporting
*/
error_reporting(E_ALL | E_STRICT);

/**
* Compilation includes configuration file
*/
$compilerConfig = ‘includes/config.php’;
if (file_exists($compilerConfig)) {
include($compilerConfig);
}

$mageFilename = ‘app/Mage.php’;

if (!file_exists($mageFilename)) {
if (is_dir(’downloader’)) {
header("Location: downloader");
} else {
echo $mageFilename.” was not found”;
}
exit;
}

require_once $mageFilename;

#Varien_Profiler::enable();

#Mage::setIsDeveloperMode(true);

#ini_set(’display_errors’, 1);

umask(0);

if (check_mobile()) {

switch($_SERVER[’HTTP_HOST’]) {

case ‘www.test.de’: //domain 1 ohne www
case ‘www.test.de’: //domain 1 mit www
Mage::run(’mobile’, ‘website’); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich
break;

case ‘www.test1.de’: //domain 2 ohne www
case ‘www.test1.de’: //domain 2 mit www
Mage::run(’mobile’ , ‘website’); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich
break;

default:
Mage::run(); //das ist der default store (wo die Installation liegt)
break;
}


} else {

switch($_SERVER[’HTTP_HOST’]) {

case ‘www.test.de’: //domain 1 ohne www
case ‘www.test.de’: //domain 1 mit www
Mage::run(’us_store’, ‘website’); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich
break;

case ‘www.test1.de’: //domain 2 ohne www
case ‘www.test1.de’: //domain 2 mit www
Mage::run(’eu_store’ , ‘website’); //das Erste ist der Website code, dass Zweite was geladen werden soll ist der Gültigkeitsbereich
break;

default:
Mage::run(); //das ist der default store (wo die Installation liegt)
break;
}



}

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