支援多店鋪系統的開發(轉)
Magento支援多店鋪,但是,即便如此,如果你的擴充套件沒考慮多店鋪,結果你的系統也只能支援單店鋪。
支援多店鋪的開發一般就是遵循一些基本原則:
1.查詢那些和店鋪有關的資料,必須加入store過濾
2.儲存店鋪有關的資料,必須指定store
II. 查詢相關店鋪相關的資料例:
1. 前端查詢某當前店鋪下的所有產品資料:
- $collection = Mage::getModel('catalog/product')->getCollection();//預設裝載當前店鋪下的產品
$collection = Mage::getModel('catalog/product')->getCollection();//預設裝載當前店鋪下的產品
如果想查詢指定店鋪下的產品,需明確指定店鋪ID,在前面程式碼基礎上增加:
- $collection = $collection->setStoreId(3); // 3為某店鋪ID
$collection = $collection->setStoreId(3); // 3為某店鋪ID
2. 前端裝載當前店鋪的某個產品
- $prd = Mage::getModel('catalog/product')->load(112); // 112是產品的id
$prd = Mage::getModel('catalog/product')->load(112); // 112是產品的id
這裡不用指定店鋪id,預設轉載當前店鋪的資料,如果明確載入某個店鋪下的產品,應在load之前指定店鋪ID
- $prd->setStoreId(3); // 店鋪ID號
$prd->setStoreId(3); // 店鋪ID號
3. 前端查詢某當前店鋪下的所有分類資料
與裝載產品非常類似
- $collection = Mage::getModel('catalog/category')->getCollection(); //預設裝載當前店鋪的所有分類。
$collection = Mage::getModel('catalog/category')->getCollection(); //預設裝載當前店鋪的所有分類。
如果指定要裝載某個店鋪下的分類,增加如下程式碼:
- $collection = $collection->setStoreId(3); // 3為店鋪ID
$collection = $collection->setStoreId(3); // 3為店鋪ID
4. 前端裝載一個Category
與裝載產品非常類似
- $model = Mage::getModel('catalog/category')->load(12); // 12是分類的id
$model = Mage::getModel('catalog/category')->load(12); // 12是分類的id
這裡不用指定店鋪id,預設轉載當前店鋪的資料,如果明確載入某個店鋪下的分類,應在load之前指定店鋪ID
- $model->setStoreId(3); // 店鋪ID號
$model->setStoreId(3); // 店鋪ID號
5. 前端獲得配置資料
當然,首先要知道你所要檢索的配置資料path,同前極類似:
- Mage::getStoreConfig('cartz/configuration/brand_root'); //裝載當前店鋪下的資料
Mage::getStoreConfig('cartz/configuration/brand_root'); //裝載當前店鋪下的資料
以下程式碼達到同樣效果
- Mage::getStoreConfig('cartz/configuration/brand_root', Mage::app()->getStore()->getId());
Mage::getStoreConfig('cartz/configuration/brand_root', Mage::app()->getStore()->getId());
第二個引數Mage::app()->getStore()->getId()即為當前店鋪ID
如果想獲得某個店鋪下的配置,需明確指定店鋪ID.
- Mage::getStoreConfig('cartz/configuration/brand_root', 3); //3為某店鋪ID.
Mage::getStoreConfig('cartz/configuration/brand_root', 3); //3為某店鋪ID.
II. 後臺店鋪相關的資料管理儲存:
一旦你建立了多個店鋪,你就會發現在很多頁面都有一個Store Switcher:
你如果也想讓自己的後臺頁面有一個這樣的swithcer,可以在合適的地方呼叫這個block,比如,在你的controller的 action方法中加入下面的程式碼
- if (!Mage::app()->isSingleStoreMode()) {
- $this->_addLeft($this->getLayout()->createBlock('store_switcher'));
- }
if (!Mage::app()->isSingleStoreMode()) {
$this->_addLeft($this->getLayout()->createBlock('store_switcher'));
}
就可以實現上述目的。有了這個基礎方便接下來店鋪資料切換。比如,當切換到某一個店鋪時,載入該店鋪下的單個或者多個產品時,別忘記根據 switcher傳入的store引數值正確呼叫setStoreId。
相關推薦
支援多店鋪系統的開發(轉)
Magento支援多店鋪,但是,即便如此,如果你的擴充套件沒考慮多店鋪,結果你的系統也只能支援單店鋪。 支援多店鋪的開發一般就是遵循一些基本原則: 1.查詢那些和店鋪有關的資料,必須加入store過濾 2.儲存店鋪有關的資料,必須指定store II. 查詢相關店鋪相關
linux下mysql多實例安裝(轉)
ont 數據庫 fill 行修改 安裝部署 file 常見 soc -s 轉自:http://www.cnblogs.com/xuchenliang/p/6843990.html 1.MySQL多實例介紹 1.1.什麽是MySQL多實例 MySQL多實例就是在一臺機器上
maven配置多倉庫鏡像(轉)
區別 組合 conf tail bar AI posit 奇葩 HR 原文地址:maven配置多倉庫鏡像 問題場景: 1、國內訪問maven默認遠程中央鏡像特別慢 2、用阿裏的鏡像替代遠程中央鏡像 3、大部分jar包都可以在阿裏鏡像中找到,部分jar包在阿裏鏡像中沒
【轉載】Vue 2.x 實戰之後臺管理系統開發(二)
null element asc 其他 就會 ans 目錄 asi all 2. 常見需求 01. 父子組件通信 a. 父 -> 子(父組件傳遞數據給子組件) 使用 props,具體查看文檔 - 使用 Prop 傳遞數據(cn.vuejs.org/v2/guide
運動會分數統計系統開發(第一版)
/*************************************************** * 版權所有 (C/C++) 2015,辛志勐 * 煙臺大學計算機與控制工程學院 * All rights reserved. * 檔名稱:終極版.cpp * 作者:辛志勐 * 完成日期:201
#46 小小型應用系統開發(一)______100以內的四則運算
編寫程式,用隨機數實現100以內的加、減、乘、除運算,其中和與積不能超過100,差不為負(即須大減小),商不為小數或分數(即必須整除)。要求總計輸出10個運算式,每輸出一個運算式,等待輸入結果,然後進行
為什麼瀏覽器會使用多程序架構。(轉)
在使用瀏覽器時偶然發現雖然僅僅開啟一個標籤頁,但是在工作管理員內發現有多個瀏覽器程序在執行,佔用了不小的記憶體,當時很納悶:為什麼一個瀏覽器卻需要多個程序呢?不經意間在網上發現這篇文章,以Google chrome瀏覽器為例,講解了使用多程序構架的瀏覽器。翻譯給大家,希望
Panda學習筆記4——多表功能開發(2)後端介面開發
進行功能性的開發,主要涉及到: 序號 型別 名稱 1 DTO CodeRulesTest1Header 2 DTO CodeRulesTest1Line 3 Mapper CodeRulesTest1HeaderMapper 4 Ma
chrome外掛開發(轉)
作者原文:https://www.cnblogs.com/liuxianan/p/chrome-plugin-develop.html 寫在前面 我花了將近一個多月的時間斷斷續續寫下這篇博文,並精心寫下完整demo,寫部落格的辛苦大家懂的,所以轉載務必保留出處。本
前言 - 作為一個合格的軟體開發(轉)
慎於說Yes 在沒有搞清楚開發需求、任務工作量、團隊期望值之前,100分的程式設計師不會輕易答應。特別是對於新人來說,比較急於表現自己,對於同事或者老闆的工作安排來者不拒,精神可嘉,方法不可取。承諾太多,會出現自己無法按時完成的情況,即使按時完成,也可能沒有達到別人的期望值,長期以往別人對你的失
c++適合做什麼樣的開發?(轉)
C++是一門廣泛用於工業軟體研發的大型語言,具有很高的複雜性和解決問題的能力。C ++不僅在開發上極具價值,同時在學術界也就有很高的價值。有關C++的文章應該可以用浩如煙海來形容了吧。C++的世界級經典書籍也是數不勝數。然而,目前開發語言是如此地繁榮,就連微
深入理解Tomcat系列之一:系統架構(轉)
前言 Tomcat是Apache基金組織下的開源專案,性質是一個Web伺服器。下面這種情況很普遍:在eclipse床架一個web專案並部署到Tomcat中,啟動tomcat,在瀏覽器中輸入一個類似http://localhost:8080/webproject/anyname.jsp的url,然後就可以看到
Vue 2.x 實戰之後臺管理系統開發(一)
1. 導語 該文章將從頭到尾梳理我是如何使用 Vue 2 開發一個後臺管理專案的,我會將自己遇到的問題貼出,希望可以幫助到其他人。 2. 開發前須知 我的後臺管理系統專案運用瞭如下框架/外掛: Vue 2.x —— 專案所使用的 js 框架
linux 多執行緒程式設計(轉)
2009-07-16 17:10 45人閱讀 評論(0) 收藏 舉報 1 引言 執行緒(thread)技術早在60年代就被提出,但真正應用多執行緒到作業系統中去,是在80年代中期,solaris是這方面的佼佼者。傳統的Unix也支援執行緒的概念,但是在一個程序(
多執行緒開發(1):主執行緒,前臺執行緒,後臺執行緒,守護執行緒,子執行緒,託管執行緒的關係
1.主執行緒 當一個程式啟動時,就有一個程序被作業系統(OS)建立,與此同時一個執行緒也立刻執行,該執行緒通常叫做程式的主執行緒(Main Thread),因為它是程式開始時就執行的,如果你需要再建立執行緒,那麼建立的執行緒就是這個主執行緒的子執行緒。每個程序至少都有一個
後端管理系統開發(一):登入篇
作為後端程式設計師,想寫一個數據展示的系統,主要用於資料查詢、資料展示,當然也有登入功能了,有沒有比較快的方式呢,於此,Vue-A
Android開發中怎樣用多進程、用多進程的好處、多進程的缺陷、解決方法(轉)
傳遞 標簽 事情 打印 ide 即時通訊 ice cati 一個數 轉自:http://blog.csdn.net/spencer_hale/article/details/54968092 1.怎樣用多進程 Android多進程概念:一般情況下,一個應用程序就是一個進
(轉)python 全棧開發,Day73(django多表新增,基於物件的跨表查詢)
昨日內容回顧 多表方案: 如何確定表關係呢? 表關係是在2張表之間建立的,沒有超過2個表的情況。 那麼相互之間有2條關係線,先來判斷一對多的關係。 如果其中一張表的記錄能夠對應另外一張表的多條記錄,那麼關係線成立! 如果只
(轉)python 全棧開發,Day72(昨日作業講解,昨日內容回顧,Django多表建立)
昨日作業講解 1.圖書管理系統 實現功能:book單表的增刪改查 1.1 新建一個專案bms,建立應用book。過程略... 1.2 手動建立static目錄,並在目錄裡面建立css資料夾,修改settings.py,設定static的目錄位置 STATI
(轉)web開發流程
ctu 圖片 hit 處理 隨著 使用 一個bug 原型開發 href a、項目經理與公司決策層的溝通,以確定這個需求有沒有足夠的人手和可行性去實現,以及與現有產品的依存關系。 b、公司決策層與市場/策劃部門的交流,這個過程將進行的相當充分,並且是反復、長期的,它致力於