搜索
首页php教程php手册自动获取评论者网站最新文章

这个想法又是老郑提出的,这件事比较囧,由于我怕网上已经有人已经写过类似的文章,所以搜了一下,居然搜到老郑自己的...不过那个方法是用commentLUV这个插件,此插件并非自动显示,而是需要评论者自己勾选然后手动添加到评论内容中, 所以我就觉得这篇文章可以写了

这个想法又是老郑提出的,这件事比较囧,由于我怕网上已经有人已经写过类似的文章,所以搜了一下,居然搜到老郑自己的...不过那个方法是用commentLUV这个插件,此插件并非自动显示,而是需要评论者自己勾选然后手动添加到评论内容中,
所以我就觉得这篇文章可以写了.下图是鼠标移到评论者昵称上的效果:

自动获取评论者网站最新文章

判断网址有效性

CP党和小白白们可以无视这段,直接看二三小节.
这个问题我单独拎出来,用来判断feed地址是否能正常访问,因为如果不能访问,会出现parse_url的WP_ERROR,导致后面的元素都停止加载,解决方法是用PHP的get_headers()函数,如果HTTP返回参数200说明网页能正常访问,代码如下:

$uri='XXX';
$array = get_headers($uri,1); 
if(preg_match('/200/',$array[0]))//说明能正常访问

hover效果

在functions.php中找到类似这样的句子

%s'), get_comment_author_link()) ?>

改成

<?php printf(__('<span class="rss"><cite class="fn">%s</cite>'), get_comment_author_link()) ?>
<!--这里放下一节的的正式代码完整版本-->

然后加上css

.comment-author .rss div{display: none;position:absolute;background:#fff;border:1px solid #bbb;padding:10px;top:30px;left:50px}
.comment-author .rss:hover div{display:block}

完整代码

此段代码应该放在comments的Loop内

<?php if(current_user_can('level_10')){//只对管理员显示,如果想对所有人显示,请去掉此行和最后一个}
//但是请注意:抓取他站feed会严重拖慢你的网速,尤其是遇到feed无效时,建议只对管理员显示;异步加载大神可无视
	$uri =get_comment_author_url().'/feed';//获取评论者网址,一般而言"网址/feed"是网站feed的地址
	$match1 = '/http/';//无网址游客生成的comment_author_url中没有http
	if( preg_match_all($match1,  $uri, $match) ){//如果填写了网址则开始抓feed					  
		$array = get_headers($uri,1); //判断网址有效性
		if(preg_match('/200/',$array[0])){ //如果网址有效
			$feed = fetch_feed($uri);
			if(! is_wp_error($feed)) { 
				$items = $feed->get_items(0,1); //1可以改成你想抓取的文章数
				echo '<div>';//如果没有使用第二节的hover效果,此行可去掉
				if ( $items == 0 )  {  
           				echo '没有发现文章';
				}
				foreach($items as $item) {
					echo '<a rel="nofollow" target="_blank" href="'.%24item->get_link().'">'.$item->get_title().'</a>'.$item->get_date('Y-m-j G:i').'<br>'; 
				}
				echo '</div>';//如果没有使用第二节的hover效果,此行可去掉
			}
		}
	}
}
?>

改变feed缓存

wordpress默认对fetch_feed抓取的结果启用12小时的缓存,若要改变此时间,在functions.php中加入以下代码

function new_feed_cache( $seconds )
{
  return 3600;//单位为秒,3600代表一小时,其他以此类推
}
add_filter( 'wp_feed_cache_transient_lifetime' , 'new_feed_cache' );
声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
如何在Python中获取文件扩展名?如何在Python中获取文件扩展名?Sep 08, 2023 pm 01:53 PM

Python中的文件扩展名是附加在文件名末尾的后缀,用于表示文件的格式或类型。它通常由三个或四个字符组成,文件名后跟一个句点,例如“.txt”或“.py”。操作系统和程序利用文件扩展名来确定文件的类型以及应如何处理它。被识别为纯文本文件。Python中的文件扩展名在读取或写入文件时至关重要,因为它建立了文件格式以及读取和写入数据的最佳方法。例如,“.csv”文件扩展名是读取CSV文件时使用的扩展名,而csv模块则用于处理该文件。Python中获取文件扩展名的算法在Python中操作文件名字符串来

使用math.Max函数获取一组数中的最大值使用math.Max函数获取一组数中的最大值Jul 24, 2023 pm 01:24 PM

使用math.Max函数获取一组数中的最大值在数学和编程中,经常需要找出一组数中的最大值。在Go语言中,我们可以使用math包中的Max函数来实现这个功能。本文将介绍如何使用math.Max函数来获取一组数中的最大值,并提供相应的代码示例。首先,我们需要导入math包。在Go语言中,导入包可以使用import关键字,如下所示:import&quot;mat

如何在Java中获取LinkedHashSet的最后一个元素?如何在Java中获取LinkedHashSet的最后一个元素?Aug 27, 2023 pm 08:45 PM

从Java中的LinkedHashSet中检索最后一个元素意味着检索其集合中的最后一个元素。尽管Java没有内置方法来帮助检索LinkedHashSets中的最后一个项,但存在多种有效的技术,可以提供灵活性和便利性,有效地检索此最后一个元素而不破坏插入顺序-这是Java开发人员必须在其应用程序中有效处理的问题。通过将这些策略有效地应用于他们的软件项目中,他们可以实现满足此要求的最佳解决方案LinkedHashSetLinkedHashSet是Java中的一种高效数据结构,它结合了HashSet和

在Linux上自动装载驱动器在Linux上自动装载驱动器Mar 20, 2024 am 11:30 AM

如果您使用Linux操作系统,并希望系统在启动时自动加载驱动器,可以通过将设备的唯一标识符(UID)和挂载点路径添加到fstab配置文件中来实现。fstab是一个位于/etc目录中的文件系统表文件,它包含了系统在启动时需要挂载的文件系统的信息。通过编辑fstab文件,您可以确保在每次系统启动时都能正确加载所需的驱动器,从而保证系统的稳定运行。自动安装驱动器可方便地应用于多种情境。比如,我计划将系统备份到外部存储设备。为了实现自动化,需确保设备与系统保持连接,甚至在启动时。同样,很多应用程序会直接

使用JavaScript实现自动缩略图生成使用JavaScript实现自动缩略图生成Jun 16, 2023 pm 12:51 PM

随着互联网的发展,图片已经成为网页中不可或缺的一部分。但是随着图片数量的增多,图片的加载速度成为了一个很重要的问题。为了解决这个问题,许多网站都采用了缩略图的方式展示图片,但是为了生成缩略图,我们需要使用专业的图片处理工具,对于一些非专业人士来说,这是一个很麻烦的事情。那么,使用JavaScript实现自动缩略图生成就成为了一个不错的选择。如何使用JavaS

PHP和PHPMAILER:如何实现邮件发送的自动过滤功能?PHP和PHPMAILER:如何实现邮件发送的自动过滤功能?Jul 21, 2023 am 09:25 AM

PHP和PHPMAILER:如何实现邮件发送的自动过滤功能?在现代社会中,电子邮件已成为人们交流的重要方式之一。然而,随着电子邮件的流行和广泛使用,垃圾邮件的数量也呈现出爆炸式增长的趋势。垃圾邮件不仅会浪费用户的时间和网络资源,还可能带来病毒和钓鱼行为。因此,在开发邮件发送功能时,加入自动过滤垃圾邮件的功能变得至关重要。本文将介绍如何使用PHP和PHPMai

Java程序获取给定文件的大小(以字节、千字节和兆字节为单位)Java程序获取给定文件的大小(以字节、千字节和兆字节为单位)Sep 06, 2023 am 10:13 AM

文件的大小是特定文件在特定存储设备(例如硬盘驱动器)上占用的存储空间量。文件的大小以字节为单位来衡量。在本节中,我们将讨论如何实现一个java程序来获取给定文件的大小(以字节、千字节和兆字节为单位)。字节是数字信息的最小单位。一个字节等于八位。1千字节(KB)=1,024字节1兆字节(MB)=1,024KB千兆字节(GB)=1,024MB和1太字节(TB)=1,024GB。文件的大小通常取决于文件的类型及其包含的数据量。以文本文档为例,文件的大小可能只有几千字节,而高分辨率图像或视频文件的大小可

简易JavaScript教程:获取HTTP状态码的方法简易JavaScript教程:获取HTTP状态码的方法Jan 05, 2024 pm 06:08 PM

JavaScript教程:如何获取HTTP状态码,需要具体代码示例前言:在Web开发中,经常会涉及到与服务器进行数据交互的场景。在与服务器进行通信时,我们经常需要获取返回的HTTP状态码来判断操作是否成功,根据不同的状态码来进行相应的处理。本篇文章将教你如何使用JavaScript获取HTTP状态码,并提供一些实用的代码示例。使用XMLHttpRequest

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前By尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
1 个月前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

功能强大的PHP集成开发环境