立即注册找回密码

星空网络资源社区

社区官方指定联系方式

工作时间: 周一到周五早上09:00-11:00, 下午03:00-05:00, 晚上08:30-10:30(周六、日休息)
点击这里给我发消息 点击这里给我发消息
QQ: 476680358  20699369  TEL: 13695735778  13695735778  E-Mail: hs5713@163.com
用户交流QQ群
①群339482471 ②群2222222 ③群3333333 ④群4444444 ⑤群5555555 ⑥群6666666 ⑦群7777777 ←提醒: 请勿重复加群, 谢谢合作

Emlog模板添加每日60秒读世界独立页面

[复制链接] 0
回复
65
查看
打印 上一主题 下一主题
跳转到指定楼层
楼主
发表于 2025-3-29 07:38:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

江湖PK信息播报:


  最近看各个站点都有的每日六十秒读世界的文章或者页面,大多数实现方式大致两种:一种是emlog中相关的插件或者采集,此方法虽然配置简单、方便,但是这个采集文章内容具有很强的时效性,需要每日定时访问触发采集才能发布文章;一种是直接引用别人的六十秒读世界的api,此方法最大的优点是不用设置采集和发布大量文章,但是形式是仅仅的一张图片,这就过于简单的了,那有还有比前两种更好点又不太简单的实现方式?,答案有是有的,其实就是将接口写在主题中


1.在模板主题的module.php文件添加以下函数

  1. <?php
  2. //独立页面-每日60秒
  3. function luyu_sixtys(){
  4. $date = file_get_contents("https://www.zhihu.com/api/v4/columns/c_1261258401923026944/items");
  5. $date = json_decode($date);
  6. $content = $date->data[0]->content;
  7. $content = preg_replace('/(<a.*?>[\s\S]*?<\/a>)/','',$content);
  8. $pattern ='<img.*?src="(.*?)">';
  9. preg_match($pattern,$content,$matches);
  10. $src_path = $matches[1];
  11. $src = imagecreatefromstring(file_get_contents($src_path));
  12. $info = getimagesize($src_path);
  13. $x = 0;
  14. $y = 0;
  15. $width = 720;
  16. $height = 350;
  17. $final_width = 720;
  18. $final_height = round($final_width * $height / $width);
  19. $new_image = imagecreatetruecolor($final_width, $final_height);
  20. imagecopyresampled($new_image, $src, 0, 0, $x, $y, $final_width, $final_height, $width, $height);
  21. $ext = pathinfo($src_path, PATHINFO_EXTENSION);
  22. $rand_name = date("Ymd") . "." . $ext;
  23. $url= BLOG_URL;
  24. if (!file_exists("content/uploadfile/60s")){
  25.     mkdir ("content/uploadfile/60s",0777,true);
  26. }
  27. imagejpeg($new_image,"content/uploadfile/60s/".$rand_name);
  28. imagedestroy($src);
  29. imagedestroy($new_image);
  30. $content = strip_tags($content,'<p>');
  31. $content = '<img class="" src="'.$url.'/content/uploadfile/60s/'.$rand_name.'" />'.$content;
  32.   return $content;
  33. };
  34. ?>
复制代码


2.在自己使用的模板创建独立页面,以60s.php为例,根据各自的主题在文章内容部分添加调用显示

    <?php echo luyu_sixtys()?>

使用高级回帖 (可批量传图、插入视频等)

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表