百度WordPress结构化数据插件会延长文章发布时间

 

之前百度推出了一款WordPress结构化数据插件,经使用感觉还不错。只是最近发现一个问题,在WordPress后台发布新文章时,点击发布后,要等很久页面才能提交成功,而且经常造成主机资源超限,出现500错误。

经排查,露兜发现此问题是由WordPress结构化数据插件造成的,它的publish_post执行函数耗时15秒!停用该插件后,文章发布就变得很快了。当然也有可能是这个插件跟我网站的某些代码不兼容造成。如果你的WordPress后台发布文章也要等很长时间,并且安装了这个插件,不妨用下面的方法排查一下,确定这段代码的执行时间是否过长:

用文本编辑器打开该插件目录下的main.php,即baidusubmit/main.php
查找:publishPost

可找到以下代码:

 代码如下 复制代码
static function publishPost($postid)
{
    require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . './inc/sitemap.php';
    $schema = BaidusubmitSitemap::genSchemaByPostId($postid, $xpost);
    if ('publish' != $xpost->post_status || '' != $xpost->post_password) {
        self::deletePost($postid);z
        return;
    }
    $xml = $schema->toXml();
    $content = BaidusubmitSitemap::genPostXml($xml);
    //file_put_contents('/home/work/baidusubmit.log',  date('[Y-m-d H:i:s]')."n".$content, FILE_APPEND);
    $r = BaidusubmitSitemap::sendXml($content, 1);
    //file_put_contents('/home/work/baidusubmit.log', date('[Y-m-d H:i:s]')."n".$r, FILE_APPEND);
}

改成以下代码,以便计算程序运行时间:

 

 代码如下 复制代码

static function publishPost($postid)
{
    // 标记程序执行开始时间
    list($usec, $sec) = explode(" ",microtime());
    $time_start =  ((float)$usec + (float)$sec);

    require_once dirname(__FILE__) . DIRECTORY_SEPARATOR . './inc/sitemap.php';
    $schema = BaidusubmitSitemap::genSchemaByPostId($postid, $xpost);
    if ('publish' != $xpost->post_status || '' != $xpost->post_password) {
        self::deletePost($postid);z
        return;
    }
    $xml = $schema->toXml();
    $content = BaidusubmitSitemap::genPostXml($xml);
    //file_put_contents('/home/work/baidusubmit.log',  date('[Y-m-d H:i:s]')."n".$content, FILE_APPEND);
    $r = BaidusubmitSitemap::sendXml($content, 1);
    //file_put_contents('/home/work/baidusubmit.log', date('[Y-m-d H:i:s]')."n".$r, FILE_APPEND);

    // 标记程序执行结束时间
    list($usec, $sec) = explode(" ",microtime());
    $time_end =  ((float)$usec + (float)$sec);

    // 计算程序执行总用时
    $time = $time_end - $time_start;

    // 发送邮件,将ludou#ludou.org改成你的邮件地址
    wp_mail('ludou#ludou.org', '程序用时', '总时长(单位:秒):'.$time);
}

将代码中的 ludou#ludou.org 改成你的邮箱地址,然后上传到你的网站服务器,并在WordPress后台发布或更新一篇文章,这时你的邮箱中就会收到一封标题为 程序用时 的邮件,邮件内容中就会看到程序运行时长。我这里测试的运行时间是15秒,这样的时间实在没法忍受,不过看在它还有点用处的份上,还是忍忍吧。

最后,测试完毕,记得将代码还原到修改之前。

时间: 2024-09-17 04:30:43

百度WordPress结构化数据插件会延长文章发布时间的相关文章

解决WordPress结构化数据插件Warning: curl_setopt() [function.curl-setopt]

一.站点校验始终显示"校验中-" 我使用WordPress结构化数据插件遇到的两个问题 不清楚这是什么原因,已经向站长反馈中心提交了问题,还未答复.如果有答复,三好公民会第一时间来分享的,期待. 当然,如果您知道原因的话,还望不吝赐教,非常感谢! 二.发布或更新文章时显示警告代码 启用WordPress结构化数据插件之后,发布文章或更新文章时就会出现错误代码,内容为:    代码如下 复制代码    Warning: curl_setopt() [function.curl-setop

Discuz结构化数据插件无法验证论坛网址问题

有部分站长反映百度Discuz结构化数据插件无法验证论坛网址,针对存在此问题的站长,可以登录站长平台验证自己的网站(http://zhanzhang.baidu.com),然后重新在插件管理中重新验证(如下图). 百度Discuz结构化数据插件是百度站长工具推出的有助收录工具,包括了2.0版(适用于Discuz X2.0)和2.5版两个版本(适用于Discuz X2.5及以上).百度官方说明是:安装Discuz结构化数据插件,能又快又全的向百度提交Discuz论坛网页及内容.帮助百度Spider

最近打算体验一下discuz,有不错的结构化数据插件

提交sitemap是每位站长必做的事情,但是提交到哪里,能不能提交又是另外一回事.国内的话百度是大伙都会盯的蛋糕,BD站长工具也会去注册的,可有些账号sitemap模块一直不能用,或许是等级不够,就像康爱的,朋友的账号是当时bd站长工具beta期间受邀请注册的,从聊天截图看他的貌似可以提交sitemap 前段时间康爱发现站长工具数据提交那多了一个discuz插件,如下图 其实,这个Discuz! 结构化数据插件(即discuz百度sitemap插件)很早就已经推出了,从截图可以看出,只是没接触d

MaxCompute上如何处理非结构化数据

0. 前言 MaxCompute作为阿里云大数据平台的核心计算组件,拥有强大的计算能力,能够调度大量的节点做并行计算,同时对分布式计算中的failover,重试等均有一套行之有效的处理管理机制. 而MaxCompute SQL能在简明的语义上实现各种数据处理逻辑,在集团内外更是广为应用,在其上实现与各种数据源的互通,对于打通整个阿里云的数据生态具有重要意义.基于这一点,最近MaxCompute团队依托MaxCompute2.0系统架构,引入了非结构化数据处理框架:通过外部表,为各种数据在MaxC

通过SQL 2008管理非结构化数据

通过SQL Server 2008管理非结构化数据 SQL Server 技术文档 作者:Graeme Malcolm (内容主管) 技术审核员:Shan Sinha 项目编辑:Joanne Hodgins 发布日期:2007年8月 适用产品:SQL Server 2008 概述:数字化信息的增长为企业应当存储和访问业务数据的方法提供了启发.数据库作为业务应用程序的核心,必须能够同非结构化的数据进行集成,其中包括文档.图像.视频.以及其它多媒体格式.为了能够对信息生命周期进行管理,满足策略需求,

结构化数据和非结构化数据是什么意思?

文章中提到的结构化数据.非结构化数据以及半结构化数据是对存储形式的一种数据类型分析,有助于企业细分行业案例,帮助存储合作伙伴更好地解决应用实施方案. 结构化数据,简单来说就是数据库.结合到典型场景中更容易理解,比如企业ERP.财务系统;医疗HIS数据库;教育一卡通;政府行政审批;其他核心数据库等.这些应用需要哪些存储方案呢?基本包括高速存储应用需求.数据备份需求.数据共享需求以及数据容灾需求. 非结构化数据,包括视频.音频.图片.图像.文档.文本等形式.具体到典型案例中,像是医疗影像系统.教育视

什么是结构化数据、非结构化数据?

  文章中提到的结构化数据.非结构化数据以及半结构化数据是对存储形式的一种数据类型分析,有助于企业细分行业案例,帮助存储合作伙伴更好地解决应用实施方案. 结构化数据,简单来说就是数据库.结合到典型场景中更容易理解,比如企业ERP.财务系统;医疗HIS数据库;教育一卡通;政府行政审批;其他核心数据库等.这些应用需要哪些存储方案呢?基本包括高速存储应用需求.数据备份需求.数据共享需求以及数据容灾需求. 非结构化数据,包括视频.音频.图片.图像.文档.文本等形式.具体到典型案例中,像是医疗影像系统.教

分析非结构化数据的10个步骤

如今,数据分析正在成为企业发展的重要组成部分.企业必须对结构化和非结构化数据有所了解,才能更好地为业务发展做出正确决策.以下是帮助企业分析非结构化数据的10个步骤: 1.确定一个数据源 了解有利于小型企业的数据来源非常重要.企业可以使用一个或多个数据源来收集与其业务相关的信息.而从随机数据源收集数据并不是一个好办法,因为这可能会破坏数据,甚至丢失一些数据.因此,建议企业在开始收集数据之前调查相关数据源.企业可以采用一些在线大数据开发工具收集数据. 2.管理非结构化数据搜索工具 收集到的结构化或非

MaxCompute与OSS非结构化数据读写互通(及图像处理实例)

0. 前言 MaxCompute作为阿里巴巴集团内部绝大多数大数据处理需求的核心计算组件,拥有强大的计算能力,随着集团内外大数据业务的不断扩展,新的数据使用场景也在不断产生.在这样的背景下,MaxCompute(ODPS)计算框架持续演化,而原来主要面对内部特殊格式数据的强大计算能力,也正在一步步的通过新增的非结构化数据处理框架,开放给不同的外部数据. 我们相信阿里巴巴集团的这种需求,也代表着业界大数据领域的最前沿实践和走向,具有相当的普适性.在之前我们已经对MaxCompute 2.0新增的非