如何从外部数据库获取数据到我的WordPress主页

时间:2018-03-31 作者:Mustapha Yusuff

我在主机的子文件夹中安装了WordPress站点,并在public\\uHTML中安装了另一个基于php的自定义编写CMS。我想从基于php的CMS到WordPress获取一些数据(在我的WP主题标题上使用的字幕文本)(注意,这两个站点有不同的数据库)。我已经有了一个获取数据的php代码。

//test.php
<?php
include_once("admin/includes/config.php");
include_once("admin/includes/db.class.php");    
$db = new DB; $db -> open();
$strScrollingText = \'\';
$db -> query("select * from anouncements where status = 1 order by id desc");
if ($db -> rows() > 0)
  {
    $strScrollingText .= \'<MARQUEE scrolldelay="100". direction="left">\';
    while ($rs = $db -> rsset())
      $strScrollingText .= stripslashes($rs[\'anouncement\']) . \', \'; 
    $strScrollingText .= \'</MARQUEE>\';      
  }
测试时。上面的php文件放在我的public\\u html目录中,并从我的浏览器中预览,它从数据库中输出一个字幕文本。然后,我将该文件移动到我的主题文件夹中(当然,我在test.php中调整了两个include文件路径,在其前面加上../../../../../../)并尝试包含该测试。php使用include(\'test.php\');在我的主题标题中。php,但当我刷新我的主页时,它是空白的。我甚至复制了考试的内容。php插入并删除了“echo$strScrolling text;”并把它放在我想显示的地方,但主页仍然是空白的。我还在主题函数中使用了#include指令。php,但这使我的整个WordPress崩溃(我不得不通过cpanel编辑文件以恢复我的wp)。我不知道我哪里做错了,这真的很令人沮丧,我需要任何可以得到的帮助。如果我能用插件完成这项工作,我将不胜感激。谢谢

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

谢谢大家,我已经解决了这个问题。出现错误的原因是数据是作为对象而不是字符串获取的。我所要做的就是改用WordPress助手。我使用$wpdb函数连接到外部数据库,然后使用helper get\\u var()从数据库中提取文本,然后设置输出变量的样式以提供字幕效果。下面是完整的代码。

<?php
//external_db_fetch.php
$mydb = new wpdb( \'username\', \'password\', 
\'database_name\', \'localhost\' ); 

$stext = $mydb->get_var("SELECT col2 FROM 
table")
?>
将文件保存在本地主机上的任何位置。不要把它放在标题中。出于安全原因。只需使用正确的路径将其包含在标题中include(\'path/to/external_db_fetch.php\');

然后,封装输出 echo $stext; 在div类字幕中显示代码的位置(在标题中)。

然后编辑(或创建)主题样式表中的类字幕,以提供所需的样式。谢谢

结束