2011-05-16 279 views
1

我是Magento的新手, 目前我正在研究項目的可行性。我想要做的是使用外部CMS來管理magento中的佈局,塊和菜單。以drupal爲例。magento:使用magento渲染引擎渲染外部html

我看過一個模塊,它完成了集成了drupal和magento的所謂的drupento。不幸的是,我沒有成功地使它工作。該模塊將html片段存儲在文件系統中,magento呈現這些塊。 所以我想知道:

  • 如何使用Magento的使用API​​的這些功能?

  • 有什麼限制,我們能做什麼,不能做什麼?

對此有何想法?

問候

回答

1

我不能Drupal的具體講,但既然你問一般約另一個CMS,我會回答這一點。由於Magento頁面是以模塊化方式構建的,因此您可以絕對將頁面的塊替換爲其他地方生成的頁面。一般的做法是這樣的:

  1. 標識要在其他CMS生成
  2. 使用Magento的佈局文件刪除舊的街區,使您指定
  3. 一個新塊的塊創建塊,並傳遞任何必要的參數,把它
  4. 讓你的塊的_toHtml方法使其他CMS呼籲內容

您是否希望這是給你的Magento或其他CMS緩存塊內容,但您應該只允許其中一個或另一個這樣做。

由於你的塊可以調用任意PHP,所以你不應該在Magento方面有很多限制。您可能需要確保您使用的任何CMS可以呈現單個內容塊,而不僅僅是整個頁面。請記住,您可能無法從Magento內部的其他CMS調用本機功能(嘗試使用Wordpress中的Magento的theLoop,哈!),而是Magento會消耗其他內容塊CMS就像是一項服務一樣。這是因爲每個系統使用的通常是互斥的框架。

希望澄清事情有點!

謝謝, 喬

+0

感謝你,這正是我想要知道的。但是有一點問題:與第三方CMS進行這種整合有多複雜? – 2011-05-16 13:03:34

+0

這取決於您可以輕鬆地從第三方CMS獲取內容。最好的情況是能夠使用file_get_contents將內容作爲外部URL包含在內。最糟糕的情況是需要將第三方CMS輸出爲其他文件格式,並破解Magento和該CMS。難度也可能取決於您需要在兩者之間整合多少數據。你需要某種菜單或頁面的用戶ACL嗎?像這樣的東西將不僅僅是一點點痛苦。 – 2011-05-16 15:31:50

+0

在drupal中訪問區塊非常容易,所以我想我會將每個產品屬性寫入臨時文件並使magento讀取它。猜猜這對性能會更好。任何方式感謝您的幫助。我正在準備使用drupal和magento的POC。 – 2011-05-16 16:24:24