当前位置:

WordPress网站如何调用其它网站最新文章(自动更新)

我们在做wordpress主题的时候,想在主题设置的某个位置专门来显示作者网站里某个分类下的文章;或者我们想在一个wordpress网站里调用另外一个网站内的文章,我们该如何操作呢?

场景一:调用另一个Wordpress网站文章

如果我们调用的网站也是使用Wordpress程序建的,那么我们首先要在被调用的wordpress网站的网站根目录下新建一个call.php文件,具体这个文件名可以任意修改,然后将下面的代码放入其中,注意是uft-8无Bom模式。

<?php
define('WP_USE_THEMES', false);
require('wp-load.php');
query_posts('showposts=10');
?>
<?php while (have_posts()): the_post(); ?>
<li><a href="<?php the_permalink(); ?>" target="_blank"><?php echo mb_strimwidth(strip_tags(apply_filters('the_title', $post->post_title)), 0, 50," "); ?></a></li>
<?php endwhile; ?>

上面代码中的 query_posts(\'showposts=10\'); 是可以自行修改的,具体修改方法因 WordPress 主题和插件使用而异。在需要调用的地方(需 php 支持),添加以下代码:

<?php
$url="https://www.xuewangzhan.net/call.php";
echo file_get_contents( $url );
?>

将上面的网址替换成自己的网址即可!

场景二:调用非Wordpress网站文章

上面的方法就是在一个WP网站里调用另一个WP网站最新文章,如果我们想调用非WP网站的最新文章,又怎么做呢?

调用非WP网站文章,只能使用连接数据库,然后直接在数据库里取值的方法。

先连接数据库,再根据自己需要取出最新文章,然后,将数据库里文章的标题,链接,缩略图都调用出来。下面代码以WP网站调用ZBLOG网站最新文章代码。


//代码来源:学做网站论坛 https://www.xuewangzhan.net/
$connsql = mysqli_connect("localhost","root","datapassword","dataname"); //连接数据库

$result = mysqli_query($connsql,"select * from zbp_post ORDER BY log_PostTime DESC limit 0,11");//获取最新11条数据

$i=1;
while($row = mysqli_fetch_array($result))//转成数组,且返回第一条数据,当不是一个对象时候退出
{?>
<?php
if($i==1){?>

<div class="wz-item">

<h3>
<a href="<?php echo $urlsql;?>"><?php echo $titsql;?></a>
<a href="<?php echo $urlsql;?>" title="更多…" style="float:right"><i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-arrow-right-3"></use></svg></i></a>
</h3>
<ul class="wz-item-list">
<?php $first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $row['log_Content'], $matches);
$first_img = $matches [1] [0];
?>
<li class="wz-first clearfix">
<div class="imgdiv fleft">
<a class="item-img-inner" href="<?php echo $urlsql.''.$row['log_ID'].'.html';?>" title="<?php echo $row['log_Title'];?>" rel="bookmark">
<img src="<?php echo $first_img;?>" />
</a>
</div>
<div class="wz-con fright">
<h4>
<a href="<?php echo $urlsql.''.$row['log_ID'].'.html';?>" title="<?php echo $row['log_Title'];?>"><?php echo $row['log_Title'];?></a>
</h4>
<p>
<?php echo mb_strimwidth(strip_tags($row['log_Content']), 0, 200, '…'); ?>
</p>
</div>
</li>
<div class="puul">
<?php }else{?>

<li class="ptli">
<i class="wpcom-icon wi"><svg aria-hidden="true"><use xlink:href="#wi-arrow-right-3"></use></svg></i><a href="<?php echo $urlsql.''.$row['log_ID'].'.html';?>" title="<?php echo $row['log_Title'];?>"><?php echo mb_strimwidth($row['log_Title'], 0, 38, '…'); ?></a>
<span class="fright"><?php echo date("Y-m-d",$row['log_PostTime']); ?> </span>
</li>

<?php }?>

<?php
$i++;
}
echo ' </div>
</ul>

</div>'
;

mysqli_close($connsql);
}

相关阅读:

WordPress调用其它站点文章显示在自己网站上

巧用RSS实现wordpress调用其它网站文章

发表评论

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

相关教程

  • 对于做新闻门户网站的站长,最大的难点就是如何收集更多更全的内容。一般情况下我们最先想到的就是通过采集各大网站的文章来发布到自己的网站里。但
  • 如果在自己WordPress网站上显示其它站点的最新文章是不是很好玩,利用wordpress2.8以上版本新增加的一个fetch_feed函数就可轻松实现。调用其它站点文