pbootcms生成的sitemap.xml中增加tag标签链接

    实现步骤

    1、实现sitemap.xml中增加tag页面url

    打开/apps/home/controller/SitemapController.php,找到echo $str . "\n</urlset>";在上方增加:

    $parser_model = model('home.Parser');
    if (! ! $rs = $parser_model->getSortTags('')) {
        $tags = implode(',', $rs); // 把栏目tags串起来
        $tags = array_unique(explode(',', $tags)); // 再把所有tags组成数组并去重
        foreach ($tags as $key2 => $value2) {
            if (! in_array($value2, array_column($tags, 'tags'))) { // 避免重复输出
                $url_rule_type = $this->config('url_rule_type') ?: 3;
                if ($url_rule_type == 3) {
                    $link2 = Url::home('tag=' . urlencode($value2), '');
                } else {
                    $link2 = Url::home('tag/' . urlencode($value2));
                }
                $str .= $this->makeNode($link2, date('Y-m-d'), '0.80');
            }
        }
    }

    2、实现sitemap.txt中增加tag页面url

    打开/apps/home/controller/SitemapController.php,找到echo $str;在上方增加:

    $parser_model = model('home.Parser');
    if (! ! $rs = $parser_model->getSortTags('')) {
        $tags = implode(',', $rs); // 把栏目tags串起来
        $tags = array_unique(explode(',', $tags)); // 再把所有tags组成数组并去重
        foreach ($tags as $key2 => $value2) {
            if (! in_array($value2, array_column($tags, 'tags'))) { // 避免重复输出
                $url_rule_type = $this->config('url_rule_type') ?: 3;
                if ($url_rule_type == 3) {
                    $link2 = Url::home('tag=' . urlencode($value2), '');
                } else {
                    $link2 = Url::home('tag/' . urlencode($value2));
                }
                $str .= get_http_url() . $link2 . "\n";
            }
        }
    }

    完成以上两步后即可实现sitemap.xml和sitemap.txt中调用tag链接。