[不花钱站长]:从免费域名开始[0元] Oracle永久免费VPS[0元] VPS环境搭建免费脚本[0元] 秒变大盘挂载免费网盘[0元] 小白免费采集器1天500W[0元] CF免费DNS+CDN服务[0元]
[零基础网赚]:撸本站免费源码[0元] 网站强引免费蜘蛛法[0元] 图片视频文件免费存储[0元] 外链轻松发布免费友链[0元] 入坑免费教程学习源代码[0元] 网上百种+赚钱联盟推荐[?元]

↑↑VPS推荐网 WWW.VPS.COM.IN 稳定 便宜 免备案↑↑


无插件实现WordPress多个站点同步文章更新方法

全球[VPS测评]来源:VPS推荐网点击:422
【性价之王】【线路之王】【价格之王】【配置之王】
【免费之王】【香港首推】【梯子之王】【独服之王】
无插件实现WordPress多个站点同步文章更新方法

今天晚上有几个网友在群里讨论如何将WordPress更新的文章同步到他备用的站点中。这个同学的想法比较奇特,他是希望自己备用站点的数据保存同步更新,起到备份作用,蜗牛有些不理解,为什么不采用定期数据库备份或者快照备份,居然要这样操作,不懂什么意思。

不管他要做什么,问问有没有这样的办法实现的,这里我找到网上有解决办法,让他试试看。这里有看到这个办法,记录下来,明天问问他是否可行,有空的时候我也找个测试站点试试。

1、同步站点

这里我们在需要同步到的站点目录下方一个发布文件。

//文章接收 define(\\\'WP_USE_THEMES\\\', false); require_once(\\\"wp-load.php\\\"); $key=\\\'itbulu.com\\\'; //设置启动API的密钥if($_POST[\\\'key\\\']==$key){ $categorys=explode(\\\',\\\',$_POST[\\\'category\\\']); $category=array(); for($x=1;$x<count($categorys);$x++) { $category[$x-1]=get_cat_ID($categorys[$x]); } $info = array( \\\'post_title\\\' => $_POST[\\\'title\\\'], \\\'post_content\\\' => $_POST[\\\'content\\\'], \\\'post_status\\\' => \\\'publish\\\', \\\'post_author\\\' => 1, //发布文章的作者ID,1 为管理员 \\\'post_date\\\' => $_POST[\\\'date\\\'], \\\'tags_input\\\' => $_POST[\\\'tags\\\'], \\\'post_category\\\' => $category, \\\'post_type\\\' => $_POST[\\\'type\\\'] ); wp_insert_post( $info ); }

我们创建一个publish.php文件。注意要修改密钥,这个是明码,我们需要注意复杂一些,实际上这个文件如果被泄露是很不安全的,以后看看有没有办法做成加密。

2、发布站点

//发布文章推送add_action(\\\'publish_post\\\', \\\'wp_sync_posts\\\'); function wp_sync_posts($post_ID) { $key=\\\'itbulu.com\\\'; //和上面密钥一样 $url=\\\'http://www.域名.com/publish.php\\\';//我们要同步的网站域名地址和上面PHP文件 $post_info = get_post($post_ID); if ( $post_info->post_status == \\\'publish\\\' && $_POST[\\\'original_post_status\\\'] != \\\'publish\\\' ) { $title=$_POST[\\\'post_title\\\']; $content=$_POST[\\\'content\\\']; $date=$_POST[\\\'aa\\\'].\\\'-\\\'.$_POST[\\\'mm\\\'].\\\'-\\\'.$_POST[\\\'jj\\\'].\\\' \\\'.$_POST[\\\'hh\\\'].\\\':\\\'.$_POST[\\\'mn\\\'].\\\':\\\'.$_POST[\\\'ss\\\']; $category=\\\'\\\'; for($x=1;$x<count($_POST[\\\'post_category\\\']);$x++) { $category.=\\\',\\\'.get_cat_name($_POST[\\\'post_category\\\'][$x]); } $type=$_POST[\\\'post_type\\\']; $tags=str_replace(\\\'、\\\',\\\',\\\',$_POST[\\\'tax_input\\\'][\\\'post_tag\\\']); if($_POST[\\\'newtag\\\'][\\\'post_tag\\\']){ $tags.=\\\',\\\'.str_replace(\\\'、\\\',\\\',\\\',$_POST[\\\'newtag\\\'][\\\'post_tag\\\']); } $data = \\\'key=\\\'.$key.\\\'&title=\\\'.$title.\\\'&content=\\\'.$content.\\\'&date=\\\'.$date.\\\'&category=\\\'.$category.\\\'&type=\\\'.$type.\\\'&tags=\\\'.$tags; $ch = curl_init (); //cURL模拟POST curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, TRUE ); curl_setopt ( $ch, CURLOPT_POST, TRUE ); curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data ); curl_setopt ( $ch, CURLOPT_URL, $url ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE); $ret = curl_exec ( $ch ); curl_close ( $ch ); return $ret; } }

注意修改一些标注的参数,要和网站一致。

这样,我们试试是否有用。后面蜗牛准备也试试。



猜你可能想看的VPS


转载请注明原文地址:http://140.238.13.167:12355/read-142335.html

下一篇       上一篇