WordPress 使用今日诗词 API

看到龙笑天下和扶苏的网站评论框里会随机出现一个跟浏览者当前环境相关性很不错的古诗词名句,感觉很有趣,找到了相关的文章及代码自己也添加了一下。

WordPress集成今日诗词古诗词名句API功能 – 龙笑天下 (ilxtx.com)

 /** * WordPress 集成今日诗词古诗词名句 API 功能 - 龙笑天下 * https://www.ilxtx.com/integrating-jinrishici-api-to-wordpress.html */function dr_show_jinrishici(){    echo '<script src="https://sdk.jinrishici.com/v2/browser/jinrishici.js" charset="utf-8"></script> <script type="text/javascript"> jinrishici.load(function(result) { var c = result.data.content+" ---- "+result.data.origin.dynasty+"·"+result.data.origin.author+"《"+result.data.origin.title+"》"; document.getElementById("comment").placeholder=c;; }); </script>';}add_action( 'wp_footer', 'dr_show_jinrishici' );

以上是第一版代码,一般来说Wordpress直接使用即可什么都不需要修改,我用了子比主题害怕作者把评论框的ID魔改掉就F12检查了一波,试错了几次之后发现还好,并没有,评论框的ID还是comment,什么都不用修改。

PS:在使用过程中发现当你处在主页或者没有评论框的位置代码也会执行,控制台会有一个报错。

  • jquery.min.js?ver=3.6.0:2
  • Uncaught TypeError: Cannot set properties of null (setting ‘innerHTML’)

向大佬龙反馈之后没一会儿新的方案就出来了,神速 

PS:不支持 关于、友链、留言等页面评论框 (弃用)

/** * WordPress 集成今日诗词古诗词名句 API 功能 - 龙笑天下 * https://www.ilxtx.com/integrating-jinrishici-api-to-wordpress.html * @date  2021.12.07 */function dr_show_jinrishici(){  if( is_single() ){      echo '<script src="https://sdk.jinrishici.com/v2/browser/jinrishici.js" charset="utf-8"></script> <script type="text/javascript"> jinrishici.load(function(result) { var id = "comment", c = result.data.content+" ---- "+result.data.origin.dynasty+"·"+result.data.origin.author+"《"+result.data.origin.title+"》"; if (document.getElementById(id)){ document.getElementById(id).placeholder=c; } }); </script>';  }}add_action( 'wp_footer', 'dr_show_jinrishici' );

最终版

最终版

最终版

PS:增加关于、友链、留言等页面评论框支持。

/** * WordPress 集成今日诗词古诗词名句 API 功能 - 龙笑天下 * https://www.ilxtx.com/integrating-jinrishici-api-to-wordpress.html * @date  2021.12.07 12:36 */function dr_show_jinrishici(){  if( is_single() || is_page() ){      echo '<script src="https://sdk.jinrishici.com/v2/browser/jinrishici.js" charset="utf-8"></script> <script type="text/javascript"> jinrishici.load(function(result) { var id = "comment", c = result.data.content+" ---- "+result.data.origin.dynasty+"·"+result.data.origin.author+"《"+result.data.origin.title+"》"; if (document.getElementById(id)){ document.getElementById(id).placeholder=c; } }); </script>';  }}add_action( 'wp_footer', 'dr_show_jinrishici' );

使用方法:放入主题根目录 functions.php

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享