自动获取评论者网站最新文章
这个想法又是老郑提出的,这件事比较囧,由于我怕网上已经有人已经写过类似的文章,所以搜了一下,居然搜到老郑自己的...不过那个方法是用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' );
原文地址:自动获取评论者网站最新文章, 感谢原作者分享。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

學c語言的網站:1、C語言中文網;2、菜鳥教學;3、C語言論壇;4、C語言帝國;5、腳本之家;6、天極網;7、紅黑聯盟;8、51自學網;9、力扣;10、C Programming。詳細介紹:1、C語言中文網,這是一個專門為初學者提供C語言學習資料的網站,內容豐富,包括基礎語法、指針、數組、函數、結構體等多個模組;2、菜鳥教程,這是一個綜合性的程式設計學習網站等等。

谷歌驗證器是一種用於保護使用者帳戶安全的工具,其金鑰是用於產生動態驗證碼的重要資訊。如果忘記了谷歌驗證器的金鑰,只能透過安全碼進行驗證,那麼下文站小編就會為大家帶來谷歌安全碼在哪裡取得的詳細內容介紹,希望能幫助到大家,想要了解的用戶們就請跟著下文繼閱讀吧!首先開啟手機設置,進入設定頁面。下拉頁面,找到Google。進入Google頁面,點選Google帳號。進入帳號頁面,點選驗證碼下方的檢視。輸入密碼或使用指紋驗證身分。取得Google安全碼,利用安全碼驗證Google身分。

在macOSSonoma和Safari17中,您可以將網站變成“網頁應用程式”,這些應用程式可以位於Mac的擴充座中,並且可以像任何其他應用程式一樣訪問,而無需打開瀏覽器。繼續閱讀以了解其工作原理。多虧了Apple的Safari瀏覽器中的新選項,現在可以將您經常訪問的互聯網上的任何網站變成一個獨立的“網絡應用程序”,位於Mac的擴展塢中,隨時供您訪問。 Web應用程式與任何應用程式一樣與任務控制和舞台管理器配合使用,也可以透過Launchpad或SpotlightSearch開啟。如何將任何網站改變

如果您使用Linux作業系統,並希望系統在啟動時自動載入驅動器,可以透過將裝置的唯一識別碼(UID)和掛載點路徑新增至fstab設定檔來實現。 fstab是位於/etc目錄中的檔案系統表文件,它包含了系統在啟動時需要掛載的檔案系統的資訊。透過編輯fstab文件,您可以確保在每次系統啟動時都能正確載入所需的驅動器,從而確保系統的穩定運作。自動安裝驅動器可方便地應用於多種情境。例如,我計劃將系統備份到外部儲存設備。為了實現自動化,需確保設備與系統保持連接,甚至在啟動時。同樣,很多應用程式會直接

雖然說國產手機的大致操作是很相似的,但是在有的細節上面還是會有些區別的,比如說不同的手機型號和製造商可能會有不同的雙卡安裝方式。二真我12Pro這款新手機也是支援雙卡雙待的,但這款手機具體又該怎麼安裝雙卡呢?真我12Pro怎麼安裝雙卡?安裝之間記得先把手關機喲。步驟一查找SIM卡托盤:查找手機的SIM卡托盤,通常,在真我12Pro中,SIM卡托盤位於手機的側邊或頂部。步驟二插入第一張SIM卡,使用專用的SIM卡針或一個細小的物體,將其插入SIM卡托盤中的開槽,然後,將第一張SIM卡小心地

前言vim是個強大的文字編輯的工具,在Linux端得到極大的使用熱度。最近在另外一台伺服器上使用vim時,遇到了一個奇怪的問題:當我將本地編寫好的腳本複製並貼上到伺服器中的空白檔案時,出現了自動縮排的情況。用個簡單的例子來說,就是我在本地寫的腳本如下:aaabbbcccddd當我將上述內容複製後,粘貼到伺服器中的空白文件後得到的卻是:aabbbcccddd很明顯,這是vim給我們自動進行了格式縮排。但是,這個自動有點不聰明。這裡記錄下解決方案。解決方案:設定.vimrc設定檔我們在家目錄下,新

JavaScript教學:如何取得HTTP狀態碼,需要具體程式碼範例前言:在Web開發中,經常會涉及到與伺服器進行資料互動的場景。在與伺服器進行通訊時,我們經常需要取得傳回的HTTP狀態碼來判斷操作是否成功,並根據不同的狀態碼來進行對應的處理。本篇文章將教你如何使用JavaScript來取得HTTP狀態碼,並提供一些實用的程式碼範例。使用XMLHttpRequest

如果「最新更新可用後立即取得最新更新」選項缺失或灰顯,則你可能正在執行開發人員頻道Windows11版本,這是正常的。對於其他人,安裝KB5026446(22621.1778)更新後會出現問題。您可以採取以下措施來取回「在最新更新可用時立即取得更新」選項。如何取回「在最新更新可用時立即取得更新」選項?在開始以下任何解決方案之前,請確保檢查最新的Windows11更新並安裝它們。 1.使用ViVeTool前往「Microsoft更新目錄」頁面並尋找KB5026446更新。在您的PC上下載並重新安裝更
