사이트에 일련의 사람들을 나열하는 맞춤형 모듈을 개발했습니다. 각 사람은 고유 한 URL (Person 모델에서 기본 CRUD를 수행하는 맞춤형 Magento 컨트롤러)을 가지고 있으며 이러한 공개 URL을 Google Sitemap XML 파일에 제공해야합니다.
가능하면 Magento의 자체 사이트 맵 생성과 크론을 사용하고 싶습니다.
은 Mage_Sitemap_Model_Observer
이미 모든 Sitemap 레코드를 sitemaps
표 에서 가져 오고 하나씩 generateXml()
메소드를 호출 합니다.
$collection = Mage::getModel('sitemap/sitemap')->getCollection();
/* @var $collection Mage_Sitemap_Model_Mysql4_Sitemap_Collection */
foreach ($collection as $sitemap) {
/* @var $sitemap Mage_Sitemap_Model_Sitemap */
try {
$sitemap->generateXml();
}
catch (Exception $e) {
$errors[] = $e->getMessage();
}
}
sitemaps
표에 새 Sitemap을 추가해야하는데, 그런 다음 사용자 지정 모델 레코드를위한 별도의 XML 파일을 생성하기 위해 호출됩니다. 그러나 Magento에게 확장 My_Module_Model_Sitemap
대신 내 확장을 사용하도록 지시하는 방법을 모르겠습니다 Mage_Sitemap_Model_Sitemap
. 후자는 기본 사이트 맵과 동일한 범주, 제품 및 CMS 페이지를 모두 나열하는 XML 파일을 제공합니다.
sitemaps
표는이 sitemap_type
열을하지만, 마 젠토는 지금까지 내가 말할 수있는 코드베이스에서이 참조되지 않습니다.
Magento의 내장 사이트 맵 엔진을 사용 Mage_Sitemap_Model_Sitemap
하여 내 generateXml()
방법 을 덮어 쓰려면 어떻게 해야 합니까? 아니면 여기서 나만의 목적으로 대체 사이트 맵 시스템을 만들어야합니까?
Mage_Sitemap_Model_Sitemap
제품, 카테고리, CMS 페이지를 포함하는 다른 사이트 맵을 제공합니다. 내 확장 버전을 사용하지 않습니다. 어떻게해야하는지 잘 모르겠습니다.
Mage_Sitemap_Model_Sitemap
사이트를 다시 작성 하고 카테고리 및 제품 호출에서 내 모델을 추가 하는 작업을 할 것 입니다. 진행과 함께 곧 업데이트됩니다.
Mage_Sitemap_Model_Sitemap
수업 을 확장하고generateXml()
바로 덮어 쓰시겠습니까? 무엇을 시도 했습니까?