将来自不同数据库的内容串在一起

时间:2017-06-04 作者:WordBear

想象一下,有三个网站专注于不同的主题:地理、生物、政治学。一个网站有一个讨论阿拉斯加地理的页面(mysite/alaska)。第二个站点有一个讨论阿拉斯加野生动物的页面(mysite2/alaska),等等。

现在想象一下,第四个网站的mysite4/alaska页面上有一篇关于阿拉斯加的文章,其中包含其他三个网站的内容。

换句话说,来自mysite/database、mysite2/database和mysite3/database的内容只是串在一起,形成一篇超级文章。

这是我一直在一个网站上使用的东西,我想将其转换为WordPress。我怀疑这会太复杂和有问题,从长远来看,最好只创建四个不同的WordPress站点,并手动将前三个站点的数据库条目复制到一篇超级文章中。

但我想问,是否有一种相对干净的方法来实现这一点。

我设想一种模板或母版页,只包含来自其他数据库的内容,类似于此。。。

<include mysite1-database/alaska>
<include mysite2-database/alaska>
<include mysite3-database/alaska>
我可以补充一点,我已经找到了一种使用CSS定制内容的简单方法。如果我有一个段落想出现在mysite2中,但不想出现在超级文章中,我可以简单地给它一个设置为显示的类“NoDisplay”:在超级文章中没有。

1 个回复
最合适的回答,由SO网友:Rick Hellewell 整理而成

如果要导入的内容位于您有权访问的另一个数据库中(通过自定义编程),则从源数据库中提取数据并将该数据/内容创建页面/帖子到您的WP站点在技术上是可行的。

查看我的答案Automating Page Creation . 链接到https://developer.wordpress.org/reference/functions/wp_insert_post/ 包含创建页面/帖子所需的WP代码。

如果程序足够聪明,只抓取“新”数据(假设源数据具有“发布日期”类型字段),那么可以运行WPCron作业来定期抓取“新”数据。您的程序将进行检查,以确保内容之前不是由以前的WPCron作业创建的。

通过对源数据的数据访问,自定义所需的编程。但是,从技术上讲是可能的,IMHO。

祝你好运

结束

相关推荐

Database for development

虽然构建插件,但我最大的烦恼之一是我的开发机器与实际安装不匹配。我这里的意思是,我的数据库缺乏。我会编写一些代码,认为它可以工作(因为它在开发过程中工作),然后发现它不能工作,因为我忽略了本地数据库中缺少的一个小细节。即使是我自己的在线安装也不包含完整的数据库。是否有一套预先填写了通常WP内容的db?甚至是自动添加行和列的脚本?我正在寻找不同角色、自定义帖子类型、分类法、评论等的用户,这些用户只能出于开发目的访问?如果没有,是否有人有一个旧站点的备份,他们想共享?