如何实现织梦CMS实时向百度推送Sitemap地址?

织梦CMS可以通过安装百度推送插件或使用API接口,将sitemap实时推送给百度。

织梦CMS实时推送Sitemap地址给百度

如何实现织梦CMS实时向百度推送Sitemap地址?

概述

织梦CMS(DedeCMS)是一款广泛使用的开源内容管理系统,但默认情况下并不支持自动将新生成的sitemap地址推送给搜索引擎,为了提高网站内容的收录速度和原创保护,可以通过手动或自动的方式实现实时推送sitemap地址给百度。

方法一:手动创建文件推送

1、创建PHP文件:在织梦CMS根目录下创建一个名为tuisong.php的文件,并在其中添加以下代码:

<?php
require_once ("include/common.inc.php");
require_once "include/arc.partview.class.php";
require_once('include/charset.func.php');
$year = date("Y");
$month = date("m");
$day = date("d");
$dayBegin = mktime(0,0,0,$month,$day,$year); //当天开始时间戳
$dayEnd = mktime(23,59,59,$month,$day,$year); //当天结束时间戳
$query = "SELECT arch.id, types.typedir FROM dede_arctype AS types INNER JOIN dede_archives AS arch ON types.id = arch.typeid WHERE pubdate <= $dayEnd AND pubdate >= $dayBegin";
$urls = "";
$dsql>Execute('arch.id, types.typedir', $query);
while ($row = $dsql>GetArray('arch.id, types.typedir')) {
    $urls .= "http://www.yourdomain.com".str_replace("{cmspath}", "", $row['typedir'])."/".$row[id].".html".",";
}
$urls = substr($urls, 0, 1);
$urls = explode(",", $urls);
$api = 'http://data.zz.baidu.com/urls?site=yourdomain&token=yourtoken'; //前边的site换成自己的site,xxx换成自己的密钥
$ch = curl_init();
$options = array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("
", $urls),
    CURLOPT_HTTPHEADER => array('ContentType: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result.'<br>'.count($urls);
?>

2、访问文件:每天访问tuisong.php文件,即可将当天的全部文章链接推送到百度搜索引擎。

方法二:发布文章时自动推送

1、修改article_add.php文件:找到并打开织梦CMS后台的article_add.php文件,找到第262行左右的位置,加入以下代码:

// 百度主动推送
if ($artUrl != '') {
    $urls[] = 'http://www.yourdomain.com'.$artUrl; //前面域名换成你自己的域名
    $api = 'http://data.zz.baidu.com/urls?site=yourdomain&token=yourtoken'; //前边site换成自己的site,xxx换成自己的密钥
    $ch = curl_init();
    $options = array(
        CURLOPT_URL => $api,
        CURLOPT_POST => true,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POSTFIELDS => implode("
", $urls),
        CURLOPT_HTTPHEADER => array('ContentType: text/plain'),
    );
    curl_setopt_array($ch, $options);
    $result = curl_exec($ch);
    echo $result;
}

2、保存并测试:保存文件后,每次发布新文章时,系统会自动将新文章的链接推送给百度。

如何实现织梦CMS实时向百度推送Sitemap地址?

FAQs

问题1:如何获取百度站长平台的准入密钥?

答:要获取百度站长平台的准入密钥,首先需要登录百度站长平台(https://ziyuan.baidu.com/),然后按照以下步骤操作:

1、添加并验证网站:点击“我的网站” > “添加网站”,输入您的网站域名并完成验证。

2、获取准入密钥:验证通过后,进入“链接提交” > “主动推送”页面,您将看到站点的准入密钥,记下这个密钥,用于配置织梦CMS的推送功能。

问题2:推送失败怎么办?

答:如果推送失败,可以按照以下步骤进行排查和解决:

1、检查密钥:确保您在推送代码中使用的准入密钥是正确的,并且没有拼写错误。

如何实现织梦CMS实时向百度推送Sitemap地址?

2、查看返回码:根据百度接口的返回码,判断具体的错误原因,状态码401表示token无效,需要重新获取并替换。

3、日志记录:在推送代码中添加日志记录功能,记录每次推送的详细信息,便于后续分析问题。

4、联系百度支持:如果以上方法都无法解决问题,可以尝试联系百度站长平台的支持团队,寻求帮助。

参数 说明 示例
sitemap_url 百度推送的 Sitemap 地址 http://www.example.com/sitemap.xml
sitemap_lastmod Sitemap 最后一次修改时间 20230101T00:00:00Z
sitemap_changefreq Sitemap 更新频率 daily
sitemap_priority Sitemap 中某个页面的优先级 0.8
sitemap_news 是否为新闻 Sitemap false
sitemap_news_pubdate 新闻发布时间 20230101T00:00:00Z
sitemap_news_source 新闻来源 Example News Source
sitemap_news_category 新闻分类 Technology

示例仅为参考,实际推送时需要根据您的网站结构和需求进行调整。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1192766.html

(0)
未希的头像未希新媒体运营
上一篇 2024-10-09
下一篇 2024-10-09

相关推荐

  • 如何在织梦文章列表页实现隔行标题变色效果?

    可以使用CSS的伪类选择器nthchild来实现文章标题隔行换色。

    2024-10-20
    07
  • 如何在织梦CMS中实现将问答栏目文章调用到首页?

    要在织梦CMS首页调用问答栏目文章,可通过修改首页模板文件实现。在首页模板中添加标签如{dede:arclist row=’10’ titlelen=’30’ infolen=’80’ orderby=’pubdate’},调整参数展示问答栏目最新文章。

    2024-09-03
    019
  • 如何让织梦默认模板的导航菜单自动识别并高亮显示首页标签?

    解析:,在织梦CMS中,导航菜单的标签判断首页并高亮显示首页的功能通常通过修改模板文件实现。我们需要在模板文件中添加一段PHP代码,用于判断当前页面是否为首页,如果是则给首页链接添加一个特定的CSS类(如”active”),以便在样式表中定义高亮显示的效果。,,代码:,“php,{dede:field name=’typedir’},[field:typename/],{/dede:field},`,在这段代码中,$curpos是当前的位置,’index’代表首页。如果当前位置是首页,那么就会输出class=”active”,否则不会输出。这样,我们就可以在样式表中定义.active`类的样式,使得首页链接高亮显示。

    2024-10-19
    013
  • 如何在织梦CMS中实现批量添加文章的副栏目功能?

    织梦CMS批量为文章增加副栏目教程1. 准备工作在开始操作之前,请确保您已经登录到织梦CMS的管理后台,2. 进入内容管理在织梦CMS后台,找到并点击“内容管理”模块,3. 选择文章选择您想要批量添加副栏目的文章,可以通过以下几种方式选择:全选:点击页面上方的“全选”按钮,选中所有文章,部分选择:勾选每篇文章左……

    2024-10-06
    07

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免费注册
电话联系

400-880-8834

产品咨询
产品咨询
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入