@@ -75,24 +75,40 @@ public function __construct(
7575 public function afterGenerateXml (\Magento \Framework \Model \AbstractModel $ sitemap , $ result )
7676 {
7777 if ($ this ->isEnabled ($ sitemap )) {
78- /* if ($this->isMageWorxXmlSitemap($sitemap) || !method_exists($sitemap, 'collectSitemapItems')) { */
79- $ sitemapId = $ sitemap ->getId () ?: 0 ;
78+ $ sitemapId = $ sitemap ->getId () ?: 0 ;
8079 if (in_array ($ sitemapId , $ this ->generated )) {
8180 return $ result ;
8281 }
83- $ this ->generated [] = $ sitemapId ;
82+ $ this ->generated [] = $ sitemapId ;
8483
85- $ blogSitemap = $ this ->sitemapFactory ->create ();
86- $ blogSitemap ->setData (
87- $ sitemap ->getData ()
88- );
84+ $ blogSitemap = $ this ->sitemapFactory ->create ();
85+ $ blogSitemap ->setData (
86+ $ sitemap ->getData ()
87+ );
8988
90- $ blogSitemap ->setSitemapFilename (
91- 'blog_ ' . $ sitemap ->getSitemapFilename ()
92- );
89+ if (!$ blogSitemap ->getSitemapId () && $ sitemap ->getId ()) {
90+ $ blogSitemap ->setSitemapId ($ sitemap ->getId ());
91+ }
92+
93+ /* Fix for Amasty\XmlSitemap\Model\Sitemap */
94+ if ($ sitemap ->getFolderName ()) {
95+ $ filename = pathinfo ($ sitemap ->getFolderName ());
96+ if (!$ blogSitemap ->getSitemapFilename ()) {
97+ if (isset ($ filename ['basename ' ])) {
98+ $ blogSitemap ->setSitemapFilename ($ filename ['basename ' ]);
99+ }
100+ }
101+ if (!$ blogSitemap ->getSitemapPath ()) {
102+ if (isset ($ filename ['dirname ' ])) {
103+ $ blogSitemap ->setSitemapPath ($ filename ['dirname ' ]);
104+ }
105+ }
106+ }
93107
94- $ blogSitemap ->generateXml ();
95- /* } */
108+ $ blogSitemap ->setSitemapFilename (
109+ 'blog_ ' . $ blogSitemap ->getSitemapFilename ()
110+ );
111+ $ blogSitemap ->generateXml ();
96112 }
97113 return $ result ;
98114 }
0 commit comments