protected static function actionDelete($arData) { $arFields = $arData['FIELDS']; foreach ($arData['SITEMAPS'] as $arSitemap) { $fileName = str_replace(array('#IBLOCK_ID#', '#IBLOCK_CODE#', '#IBLOCK_XML_ID#'), array($arFields['IBLOCK_ID'], $arSitemap['IBLOCK_CODE'], $arSitemap['IBLOCK_XML_ID']), $arSitemap['SITEMAP_FILE_IBLOCK']); $sitemapFile = new SitemapFile($fileName, $arSitemap); $sitemapFile->removeEntry($arData['URL']); $sitemapIndex = new SitemapIndex($arSitemap['SITEMAP_FILE'], $arSitemap); $sitemapIndex->appendIndexEntry($sitemapFile); } }
protected static function actionDelete($arTopic, $arForum = array()) { if (($arSitemaps = self::checkParams(array(), $arTopic, $arForum)) && $arSitemaps) { foreach ($arSitemaps as $arSitemap) { $sitemapFile = new SitemapFile($arSitemap["fileName"], $arSitemap); $sitemapFile->removeEntry($arSitemap['url']); $informRobots = false; if (!$sitemapFile->isNotEmpty()) { $rule = array('url' => \CForumNew::PreparePath2Message($arForum["PATH2FORUM_MESSAGE"][$arSitemap["SITE_ID"]], array("FORUM_ID" => $arForum["ID"], "TOPIC_ID" => $arForum["TID"], "TITLE_SEO" => $arForum["TITLE_SEO"], "MESSAGE_ID" => "s", "SOCNET_GROUP_ID" => $arForum["SOCNET_GROUP_ID"], "OWNER_ID" => $arForum["OWNER_ID"], "PARAM1" => $arForum["PARAM1"], "PARAM2" => $arForum["PARAM2"])), 'date' => MakeTimeStamp($arForum['LAST_POST_DATE'])); $sitemapFile->appendIblockEntry($rule['url'], $rule['date']); $informRobots = true; } $sitemapIndex = new SitemapIndex($arSitemap['SITEMAP_FILE'], $arSitemap); $sitemapIndex->appendIndexEntry($sitemapFile); if ($informRobots && $arSitemap['ROBOTS'] == 'Y') { $robotsFile = new RobotsFile($arSitemap['SITE_ID']); $robotsFile->addRule(array(RobotsFile::SITEMAP_RULE, $sitemapIndex->getUrl())); } } } }