2012-12-04 3 views
0

magento 저장소에 대한 프로그래밍 방식으로 기본 URL (안전 및 비보안)을 변경하려고합니다.Magento - 프로그래밍 방식으로 저장소 기반 URL 변경

설정은 다음 그림에서 볼 수, 백엔드에서 수동으로 변경할 수 있습니다

http://geo.magenting.com/m/kb/images/attachments/change-magento-base-url_1.jpg

내가 내 상점의 각 4 & 5의 값을 변경하고 싶습니다. 이 같은

뭔가 :

$store = Mage::getModel('core/store')->load($storeId); 
$store -> setBaseUrlSecure("xyz.com"); 
$store -> save(); 

내가 그렇게 할 수있는 방법에 어떤 도움?

답변

3

이것은 "정상"설정 스크립트가 아닌 데이터 설정 스크립트에서 가장 잘 수행됩니다. Mage_Core_Model_Resource_Setup::setConfigData()을 참조하십시오. 설치 스크립트에서

는로 저장하고 데이터 세트를 통해 루프는 다음과 같습니다

/* 
    ... 
    @var $installer Mage_Core_Model_Resource_Setup 
*/ 
$stores = Mage::app()->getStores(); 
foreach ($stores as $storeId => $store) { 
    $installer->setConfigData('web/unsecure/base_url',$value,'stores',$storeId); 
    $installer->setConfigData('web/secure/base_url',$sValue,'stores',$storeId); 
} 

/* ... */ 

을 분명히 각 올바른 저장소의 URL을 삽입하는 방법을 결정하기 위해 당신에게 달려 있습니다.

+0

감사합니다. – marius2k12

1

나는 한 가지 방법은 직접 데이터베이스에 데이터를 업데이트하는 것입니다 알고 있지만, 그것을 할 수있는 더 나은 방법이있을 수 있습니다 : 범위는 "저장"인 경우

SELECT * FROM core_config_data where path like 'web/unsecure/base_url' or path like 'web/secure/base_url'; 

scope_idstore_id입니다. 값을 업데이트하거나 삽입 할 수 있습니다.

0

프로덕션 환경에는 경로 'web/unsecure/base_url'에와 경로 'web/secure/base_url' 단순히 {{base_url}}에서 데이터베이스에 쓸 수 있습니다.

그래서 Magento는 기본 URL에 대한 실제 URL을 사용합니다.

관련 문제