Joe主题魔改:正文内容实现图片懒加载
引言
有个哥们问我Joe主题的正文部分,如何同样图片懒加载,于是便研究了一下。
探索过程
因为PHP语言我用的很少,并不擅长,于是我去网上搜了一下。
方案一:用一个叫Jquery Lazyload的JavaScript脚本,我尝试了一下,并没有什么用。或者说,在Joe主题上没什么效果。也可能是因为,我只是简单的插入页面,并没有操作正确。
方案二:直接用PHP替换文章内容中的img标签为Joe所支持的懒加载样式。
这个方法听起来是可行的,但是我在 post.php 和 page.php 没有发现 $this->content;,于是我又去别的地方找了找,没有什么头绪。
但是,我突然想到一个点(因为手里没有php编辑器,只是干巴巴地看代码),Joe对短代码的实现应该有一个替换操作,毕竟要转化成html嘛。
于是找到了相关的文件,果然也不出所料。然后就简单了,用一个正则替换搞定了。
步骤
1、打开文件 /usr/themes/Joe/core/short.php
2、在 echo $content; 上加入(翻到文件最底部)
// 将图片替换成懒加载
$r1 = '/<img(.+)src=[\'"]([^\'"]+)[\'"](.*)>/iU';
$r2 = '<img data-src="$2" width="100%" class="image lazyload" src="https://static.wusuov.com/gif/2023/10/86a79700e14cccea92def5ed92960aaf.gif" $3>';
$content = preg_replace($r1, $r2, $content);
3、搞定

结语
欢迎有疑惑在勿埋我心评论区留言。
来源:https://www.skyqian.com/archives/joe-lazyload.html
相关文章:
Joe主题魔改:正文内容实现图片懒加载
引言 有个哥们问我Joe主题的正文部分,如何同样图片懒加载,于是便研究了一下。 探索过程 因为PHP语言我用的很少,并不擅长,于是我去网上搜了一下。 方案一:用一个叫Jquery Lazyload的JavaScript脚本,我尝…...
网络爬虫实践小结
背景 近期工作中要解决两个问题,一个是数据组需要网爬一些图片数据,另外一个是要批量爬取公司用于文档协同的一个网站上的附件。于是乎,就写了两个脚本去完成任务。 爬虫思路 第一步:向确定的url发送请求,接收服务器…...
逍遥魔兽:如何在服务器上挂机器人?
逍遥魔兽是一款备受欢迎的魔兽世界经典版本,对于许多玩家来说,为了提升游戏体验和效率,他们希望能够在服务器上挂机器人。本文将为您详细讲解如何实现在逍遥魔兽服务器上挂机器人,以提高游戏进程的自动化效率。 第一部分&#x…...
软件工程与计算总结(九)软件体系结构基础
目录 编辑 一.体系结构的发展 二.理解体系结构 1.定义 2.区分体系结构的抽象与实现 3.部件 4.连接件 5.配置 三.体系结构风格初步 1.主程序/子程序 2.面向对象式 3.分层 4.MVC 一.体系结构的发展 小规模编程的重点在于模块内部的程序结构非常依赖于程序设计语言…...
bootz启动 Linux内核涉及do_bootm_linux 函数
一. bootz启动Linux uboot 启动Linux内核使用bootz命令。当然还有其它的启动命令,例如,bootm命令等等。 本文只分析 bootz命令启动 Linux内核的过程中涉及的几个重要函数。具体分析 do_bootm_linux函数执行过程。 本文继上一篇文章,地址…...
ipad有必要用手写笔吗?性价比电容笔排行榜
随着技术的进步,各种新型的数字电子产品不断涌现。比如说,智能手机、ipad、电容笔之类的东西。但事实上,要将iPad的功能发挥到极致,我认为,这款电容笔,就必不可少的了。这就好像我们在ipad平板上书写东西&a…...
jmeter怎样的脚本设计才能降低资源使用
官网地址:Apache JMeter - Users Manual: Best Practices 1、用好断言 频繁的使用断言会加大资源的消耗,尽可能减少断言的使用,或者在使用的过程中断言数据文本尽量精简,断言内容尽量以status/code、msg/message来判断࿰…...
如何避免 IDEA 每次重启都index
如何避免 IDEA 每次重启都index 在 IntelliJ IDEA 中,可以通过以下几个步骤来避免每次重启时索引: 打开 File -> Settings 菜单。在左侧的菜单栏中选择 “Appearance & Behavior” -> “System Settings” -> “Synchronization”。 在右…...
ImagePreview查看gif图,关闭之后原图不动了
vant的ImagePreview查看大图,当查看的是gif图的时候,关闭查看大图弹窗,原图不动了,ios上几乎必现。 解决的方案是,监听onclose事件,在关闭的时候把原图的gif图地址重新设置一下就好了 sceneImg(url: stri…...
实现基于 GitLab 的数据库 CI/CD 最佳实践
数据库变更一直是整个应用发布过程中效率最低、流程最复杂、风险最高的环节,也是 DevOps 流程中最难以攻克的阵地。那我们是否能在具体的 CI/CD 流程中,像处理代码那样处理数据库变更呢? DORA 调研报告 DORA(DevOps Research &am…...
android关闭键盘方法
Android开发中经常会遇到隐藏键盘的需求,例如登录界面,输入账号密码后需要点击界面其它部位,隐藏键盘。为此,分享前几年自己使用的方法,最近亲自测试,仍然有效。 方法一、Window window getWindow(); Win…...
ACK 云原生 AI 套件:云原生 AI 工程化落地最优路径
作者:胡玉瑜(稚柳) 前言 在过去几年中,人工智能技术取得了突飞猛进的发展,涵盖了机器学习、深度学习和神经网络等关键技术的重大突破,这使得人工智能在各个领域都得到广泛应用,对各行各业产生了深远的影响。 特别值…...
工程企业管理软件源码-综合型项目管理软件
工程项目管理软件(工程项目管理系统)对建设工程项目管理组织建设、项目策划决策、规划设计、施工建设到竣工交付、总结评估、运维运营,全过程、全方位的对项目进行综合管理 工程项目各模块及其功能点清单 一、系统管理 1、数据字典&am…...
stm32mp157中断简单应用
设置按键中断,按键1按下,LED亮,再按一次,灭 按键2按下,蜂鸣器响。再按一次,不响 按键3按下,风扇转,再按一次,风扇停 main.c #include "gpio.h" #include &…...
智慧机场数字孪生大屏升级智慧出行全方位服务
在宁波栎社国际机场的信息中心大楼内,一块大屏幕上展示了一座“数字孪生”机场。通过点击屏幕上的各个板块,可以实时查看现场情况,一旦出现突发状况,还可以立即启动闭环处置流程…… (图源自宁波机场) 在数…...
微信小程序 js中写一个px单位转rpx单位的函数
大家写东西自然还是会比较喜欢用rpx 但是 事实证明 在js中 还是px好用 因为很多单位交互的函数还是只返回px单位的 理论上将 750 rpx 是整个屏幕的宽度 那么 我们可以这样写一个函数 pxToRpx(px) {//获取整个屏幕的宽度单位 pxlet screenWidth wx.getSystemInfoSync().scree…...
第14章总结:lambda表达式与处理
14.1: lambada表达式 14.1.1:lambada表达式简介 无参数 package fourteen; interface SayhHi{ String say();//抽象方法接口 } public class NoParamDemo { public static void main(String[] args) { //无参数 …...
多尺度retinex图像去雾算法matlab仿真
目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 clc; clear; close all; warning off; addpath(genpath(pwd)); rng(default)img_in im2doub…...
蓝桥等考Python组别十八级005
第一部分:选择题 1、Python L18 (15分) 运行下面程序,输入30,输出的结果是( )。 t = int(input()) if t < 30: print(0) else: print(t // 15 * 2) 4102030正确答案:A 2、Python L18 (15分)...
redis在linux系统的安装与使用
一、单机安装Redis。 1.安装redis依赖 在控制台输入 yum install -y gcc tcl2.上传安装包 下载好的安装包上传到/usr/local/src/ 上传方法: 1.确保你拥有Linux服务器的IP地址、用户名和密码。 2.在Windows上,打开命令提示符(Command Promp…...
Seedance2.0内容创作干货!学会这四点教你用 Seedance 2.0 拍出电影感!
Seedance 2.0 之所以能把商业广告、影视制作的质感拉满,核心在于它对“全参调用”的支持。想彻底驯服它,建议你在输入 Prompt 和参数时注意以下四点:1. 结构化你的提示词不要把所有想法堆砌成一句话。Seedance 2.0 对结构化文本的理解极强&am…...
(最新版)GitGitHub实操图文详解教程(10)—SSH
版权声明 本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl 1. 应用场景 前面几课已经完成了本地Git基础操作:先通过git init初始化仓库,再用git status查看状态,用git add把修改加入暂存区,用git commit创建本地提交,最后用git log查看提交历史。到…...
无参考视频质量评估:AI如何在没有标准答案时评判视频画质
1. 项目概述:当AI成为视频的“质检员”在视频内容爆炸式增长的今天,我们每天都会接触到海量的视频流——从手机随手拍的短视频,到专业制作的影视剧,再到监控摄像头24小时不间断的记录。你有没有想过,这些视频的“画质”…...
2026年京东云OpenClaw/Hermes Agent配置Token Plan集成详细攻略
2026年京东云OpenClaw/Hermes Agent配置Token Plan集成详细攻略。OpenClaw是开源的个人AI助手,Hermes Agent则是一个能自我进化的AI智能体框架。阿里云提供计算巢、轻量服务器及无影云电脑三种部署OpenClaw 与 Hermes Agent的方案、百炼Token Plan兼容主流 AI 工具&…...
BUUCTF [ZJCTF 2019]NiZhuanSiWei 通关详解:从PHP伪协议到反序列化的三层渗透
1. 题目初探与源码分析 第一次看到这道题的时候,我盯着屏幕上的PHP源码看了足足五分钟。题目给出了一个简单的PHP文件,要求我们通过三个参数来获取flag。这种层层递进的题目设计在CTF中很常见,但每一步都需要仔细思考。 源码的核心逻辑是这样…...
解放双手!用STAR-CCM+的3D-CAD模块快速清理与简化仿真几何(保姆级教程)
解放双手!用STAR-CCM的3D-CAD模块快速清理与简化仿真几何(保姆级教程) 在CAE仿真领域,几何模型的质量往往直接决定仿真效率与结果可靠性。许多工程师都有过这样的经历:从设计部门拿到一个细节完美的CAD模型,…...
保姆级教程:用Python+OpenCV高效切割Potsdam语义分割数据集(附完整代码)
PythonOpenCV实战:Potsdam语义分割数据集高效切割全流程解析 第一次接触Potsdam数据集时,面对那些6000x6000像素的巨幅航拍图像,我的GPU在训练时直接报显存不足的错误。这让我意识到,高分辨率图像的切割预处理不是可选项…...
Rocky Linux 9.0上5分钟搞定NFS共享:从安装到挂载的保姆级避坑指南
Rocky Linux 9.0极速部署NFS共享:零基础到精通的实战手册 当你在凌晨两点接到紧急任务,需要在Rocky Linux 9.0上为开发团队搭建临时文件共享环境时,传统教程里冗长的配置步骤和晦涩的错误排查足以让人崩溃。本文专为解决这类"救火场景&q…...
Agent解析复杂PDF表格时效果极差,如何自动化处理?
斯坦福大学教授、AI领域顶尖学者吴恩达近日明确表示:不会有AI就业末日。在他看来,AI会影响岗位、改变技能要求、也会替代一部分任务,但将其描绘成大规模失业灾难,“是在制造不必要的恐惧,也是不负责任的”。与其担忧被…...
如何用AI语音修复工具VoiceFixer:快速拯救受损音频的完整指南
如何用AI语音修复工具VoiceFixer:快速拯救受损音频的完整指南 【免费下载链接】voicefixer General Speech Restoration 项目地址: https://gitcode.com/gh_mirrors/vo/voicefixer 还在为嘈杂的录音、失真的语音或老旧音频而烦恼吗?VoiceFixer是一…...
