让WordPress网站“文本小工具”运行PHP代码,并实现调用其他WordPress网站最新文章

Auth:老张       Date:2021/01/31       Cat:电脑网络       Word:共1340字

◷2021/01/31   👁浏览:5.6K   🗨29条评论
文章目录 「隐藏」
  1. 序言
  2. WordPress自带的“文本小工具”运行PHP代
  3. 调用其它wordpress网站最新文章,并自动更新

序言

标题太长,表达两个意思,一是让WordPress网站“文本小工具”运行PHP代码,二就是通过“文本小工具运行PHP代码”的功能来调用其他WordPress网站的最新文章。

前几天和小胡同学一起搞了个资源分享网站-土鸽子,网站名称起的很随意并不能表达网站内容。不过这有什么呢,难道“天猫网”就是“搞猫”的吗?

土鸽子目前才建起来,资源发布是一方面,另一方面就是推广外链了。这个时候小胡同学建议我在自己的博客上放上土鸽子的RSS,折腾半天没有成功。不过最后还是请教了度娘实现了利用“文本小工具”运行PHP代码,在老张博客上调用了土鸽子的最新文章。

WordPress自带的“文本小工具”运行PHP代

WordPress自带的“文本小工具”是不支持运行PHP代码的,这个时候我们可以改造他。

将以下代码添加到你当前主题的 functions.php 文件:

add_filter('widget_text', 'php_text', 99);
function php_text($text) {
if (strpos($text, '<' . '?') !== false) {
ob_start();
eval('?' . '>' . $text);
$text = ob_get_contents();
ob_end_clean();
}
return $text;
}

就这么简单,这样之后,文本小工具添加到侧边栏中,并在其中输入PHP函数代码就可以运行了。用MO Widgets插件也可以实现这个功能。

调用其它wordpress网站最新文章,并自动更新

首先要在被调用的wordpress网站的根目录,也就是我的https://tugezi.com根目录下新建一个php文件,具体这个文件名可以任意修改,然后将下面的代码放入其中。我这里创建的是new.php,并将以下代码复印到该文件中。

<?php
define('WP_USE_THEMES', false);
require('./wp-load.php');
query_posts('showposts=5');
?>
<?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=5')后面的数字可以随意修改,也就是你想在自己网站上显示文章的数量。我这里设置的是显示最新的5篇文章。

然后在文本小工具中复制以下代码,这个时候,就可以显示被调用网站https://tugezi.com的最新文章了。

<?php
$url="https://tugezi.com/new.php";
echo file_get_contents( $url );
?>

这个时候,就完美在实现在在老张博客首页侧栏文本小工具实现调用土鸽子https://tugezi.com的最新5篇文章了。

具体效果见老张博客左侧“推荐资源”。

 

 

 

 

《让WordPress网站“文本小工具”运行PHP代码,并实现调用其他WordPress网站最新文章》留言数:29

        1. 老张博客-老张老张文章作者

          @老杨: 感谢,感谢,已经把前面的小点点去掉了,但是我想让他和“热门文章”一样出现1、2、3、4、5,就不知道怎么改了

发表留言