* @copyright 2024 Anvanto * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) */ if (!defined('_PS_VERSION_')) { exit; } class anBlogSitemap { public static function gSitemapCreateLinks($lang) { $gSitemapLink[] = ['link' => anBlogSitemap::getHomeLinkBlog($lang)]; if (Configuration::get(anblog::PREFIX . 'enable_posts_sitemap')){ $posts = anBlogSitemap::getPosts($lang['id_lang']); foreach ($posts as $post) { $link = []; $link['link'] = $post['link']; $link['date_upd'] = $post['date_upd']; if($post['preview_url'] !== ''){ $link['image'] = [ 'link' => $post['preview_url'], 'title_img' => $post['title'], 'caption' => $post['title'] ]; } $gSitemapLink[] = $link; } } if (Configuration::get(anblog::PREFIX . 'enable_categories_sitemap')){ $categories = anBlogSitemap::getCategories($lang['id_lang']); foreach ($categories as $category) { $link = []; $link['link'] = $category['category_link']; $link['date_upd'] = $category['date_upd']; if($category['thumb'] !== ''){ $link['image'] = [ 'link' => $category['thumb'], 'title_img' => $category['title'], 'caption' => $category['title'] ]; } $gSitemapLink[] = $link; } } return $gSitemapLink; } public static function getPosts($id_lang) { $helper = AnblogHelper::getInstance(); $config = AnblogConfig::getInstance(); $blogs = AnblogBlog::getListBlogs( null, (int) $id_lang, 0, 'all', 'id_anblog_blog', 'DESC', array(), true ); foreach ($blogs as $key => $blog) { $blog = AnblogHelper::buildBlog($helper, $blog, 'anblog_listing_leading_img', $config, $id_lang); $blogs[$key] = $blog; } return $blogs; } public static function getCategories($id_lang) { $categories = Anblogcat::getCategories($id_lang); $helper = AnblogHelper::getInstance(); foreach ($categories as $key => $category) { $category['thumb'] = ''; if ($category['image'] !=''){ $category['thumb'] = _PS_BASE_URL_ ._ANBLOG_BLOG_IMG_URI_.'c/'.$category['image']; } $category['category_link'] = $helper->getBlogCatLink(['rewrite' => $category['link_rewrite'], 'id' => $category['id_anblogcat']], $id_lang); $categories[$key] = $category; } return $categories; } public static function getHomeLinkBlog($lang) { $homeLinkBlog = ''; if (Configuration::get('PS_REWRITING_SETTINGS')) { $homeLinkBlog = Context::getContext()->shop->getBaseURL(true) . $lang['iso_code'] . '/' . Configuration::get('link_rewrite', 'blog') . '.html'; } else { $helper = AnblogHelper::getInstance(); $homeLinkBlog = $helper->getFontBlogLink(); } return $homeLinkBlog; } } ?>