2011-11-29 19 views
10

Tôi đang cố gắng tạo trang web, lưu trữ và xem theo chương trình. Tôi đã tìm thấy mã này:Cách tạo trang, lưu trữ và xem có lập trình trong magento

$websiteModel = Mage::getModel('core/website'); 

$postData = array(); 
$postData['website']['name'] = 'Store Name'; 
$postData['website']['code'] = 'store_name'; 
$postData['website']['sort_order'] = ''; 
//$postData['website']['is_default'] = ''; 
$postData['website']['website_id'] = ''; 

$websiteModel->setData($postData['website']); 

Điều gì đó có hiệu quả không? Ngoài ra, các mô hình được kết hợp với cửa hàng và chế độ xem là gì? Cảm ơn.

Trả lời

30

Sử dụng mã này:

//#addWebsite 
    /** @var $website Mage_Core_Model_Website */ 
    $website = Mage::getModel('core/website'); 
    $website->setCode('<your_website_code_here>') 
     ->setName('<your_website_name>') 
     ->save(); 

//#addStoreGroup 
    /** @var $storeGroup Mage_Core_Model_Store_Group */ 
    $storeGroup = Mage::getModel('core/store_group'); 
    $storeGroup->setWebsiteId($website->getId()) 
     ->setName('<your_store_name>') 
     ->setRootCategoryId('<needed_root_category_id>') 
     ->save(); 

//#addStore 
    /** @var $store Mage_Core_Model_Store */ 
    $store = Mage::getModel('core/store'); 
    $store->setCode('<your_store_view_code_here>') 
     ->setWebsiteId($storeGroup->getWebsiteId()) 
     ->setGroupId($storeGroup->getId()) 
     ->setName('<your_store_view_name>') 
     ->setIsActive(1) 
     ->save(); 

Nếu quý vị cần làm điều đó từ lối vào - thêm dòng Mage::registry('isSecureArea'); trước khi mã này.

+0

Cảm ơn, điều đó đã làm việc rất tốt. Bạn có thể cho tôi biết làm cách nào để tôi đặt url cơ sở cho một trang web cụ thể không? Cảm ơn một lần nữa. – Nithin

+0

Bài đăng này (http://stackoverflow.com/questions/3601643/magento-set-config-values-of-just-created-website) đã giúp tôi thiết lập các giá trị cấu hình cho trang web được tạo. – Nithin

+0

Cảm ơn bạn rất nhiều ...! Nó tiết kiệm thời gian của tôi ... :) –

Các vấn đề liên quan