0%
boxmoe_header_banner_img

加载中

「盒子萌Lolimeow」主题二创「纸鸢版🕊️更新」与「🗼开发笔记」


avatar
白木 2025年8月27日 2026年4月3日 2.93k

📋 三列布局移动端日期显示优化

  • 问题描述:文章布局风格设置为"一排三个布局"时,移动端的日期显示会分行或被切割
  • 解决方案

1. 将日期格式从长格式(如"2025年12月")改为更紧凑的"Y.m.d"格式(如"2025.12.19")
2. 优化CSS样式,确保作者和日期在同一行显示
3. 调整字体大小和间距,节省空间
4. 修复CSS语法错误,确保样式正确应用

  • 涉及的文件位置

- page/template/blog-list.php:修改日期格式
- assets/css/style.css:优化CSS样式

  • 实现的核心要点

- 将 get_the_date() 改为 get_the_date('Y.m.d'),减小日期显示宽度
- 调整 .list-three .list-post-author 的样式,确保不换行且不被切割
- 将 .list-three .list-post-author *flex-shrink 属性从 0 改为 1,允许元素在必要时收缩
- 移除 .list-three .list-post-authoroverflow:hidden 属性,防止日期被切割
- 调整字体大小和间距,优化整体布局

  • 代码寻找位置

- 日期格式修改:page/template/blog-list.php:127
- CSS样式优化:assets/css/style.css.list-three 相关样式

  • 修复效果

- 确保在三列布局下,移动端的日期不会换行
- 确保日期不会被切割,完整显示
- 保持良好的视觉效果和用户体验

 
 
 
 

🎯 Badge样式优化

  • 功能描述:优化文章页面pill模块样式,将文字放大但保持盒子大小不变
  • 文件位置assets/css/style.css
  • 实现要点

- 修改CSS变量--bs-badge-font-size,将字体大小从0.8em调整为0.95rem,比普通文本大5px
- 调整line-height为1,确保盒子大小不会因为文字变大而增加
- 使用!important确保样式优先级高于Bootstrap默认样式

  • 优化效果

- 文字更加醒目,提升视觉效果
- 保持盒子大小不变,不影响页面布局
- 适配各种类型的Badge组件

 
 
 
 

📦 后台菜单名称优化

  • 功能描述:将后台外观菜单下的"小工具"名称修改为"页面小部件",统一后台术语风格
  • 实现方式:通过修改后台菜单数组和翻译过滤器实现全局替换
  • 代码寻找

- 菜单修改:wp-content/themes/lolimeow/core/module/fun-admin.php:570-582
- 翻译过滤器:wp-content/themes/lolimeow/core/module/fun-admin.php:584-592

 
 
 
 

🎨 注销提示页面美化与修复

文件位置: functions.php

  • 美化设计:将默认的注销提示页面替换为与主题风格一致的玻璃拟态设计,包括全屏背景、圆角卡片和主题配色
  • 修复常量重复定义:在定义DONOTCACHEPAGE常量前添加检查,避免重复定义警告
  • 修复favicon路径:正确处理favicon.ico文件路径,确保图标正常显示
  • 修复语言属性输出:使用输出缓冲捕获language_attributes()函数输出,避免纯文本显示
  • 修复logo位置:将logo正确放置在div卡片内上方,使用输出缓冲捕获boxmoe_logo()函数输出
  • 修复注销功能:将表单提交方式从GET改为POST,添加必要的隐藏字段,确保注销功能正常工作
  • 背景图片绑定:将注销页面背景绑定到后台主题设置的Banner随机图片配置,支持API图片、随机图片和固定图片

代码寻找

  • 主要实现:wp-content/themes/lolimeow/functions.php:150-412

 
 
 
 

📝 系统优化默认值调整

  • 功能描述:将后台主题设置中"系统优化"的"关闭古腾堡编辑器"选项默认值从关闭改为开启
  • 实现方式:修改设置面板的默认值配置
  • 代码寻找wp-content/themes/lolimeow/core/panel/settings/set-optimize.php:24
  • 影响范围:新安装主题或重置设置时,古腾堡编辑器将默认关闭,使用经典编辑器

 
 
 
 

🖼️ Banner背景图默认值修复

文件位置: core/panel/settings/set-banner.php

  • 问题描述: 后台自定义banner背景图的默认值路径不正确,导致生成的URL无效
  • 根本原因: 原始代码中存在路径重复问题,$image_path 已包含 /assets/images/ 路径,却又额外添加了 /banner/assets/images/ 路径
  • 修复方案: 修改默认值配置,将 'std' => $image_path.'/banner/assets/images/banner.jpg' 改为 'std' => $image_path.'banner.jpg'
  • 代码寻找: wp-content/themes/lolimeow/core/panel/settings/set-banner.php:75
  • 影响范围: 新安装主题或重置设置时,banner背景图默认值将正确指向 wp-content/themes/lolimeow/assets/images/banner.jpg

 
 
 
 

🔒 重置密码页面样式统一

文件位置: page/p-reset_password.php

  • 样式统一:将重置密码页面样式修改为与登录页面一致,采用现代化玻璃拟态设计
  • 视觉效果增强

- 全屏背景图片和模糊效果
- 玻璃拟态卡片设计
- 浮动标签表单效果
- 暗色模式适配
- 按钮扫光动画
- 粒子效果背景

  • HTML结构优化

- 新增全屏背景容器
- 使用玻璃拟态卡片包裹内容
- 改进Logo和标题区域
- 优化返回登录链接样式
- 添加底部版权信息

  • JavaScript增强

- 添加加载动画效果
- 改进表单提交处理
- 优化错误和成功消息显示
- 集成粒子效果脚本

 
 
 
 

🔐 erphpdown插件登录状态显示问题修复

文件位置: wp-content/plugins/erphpdown/includes/init.php · wp-content/themes/lolimeow/page/p-signin.php

  • 问题描述:erphpdown插件导致登录状态偶尔显示为未登录,点击登录按钮等同于刷新页面
  • 修复方案

- 会话管理修复:在 erphpdown_nologinpay_check 函数中添加会话状态检查,只有在会话未启动时才启动会话,避免干扰WordPress的cookie-based身份验证
- ajax_object未定义修复:在登录页面中直接定义 ajax_object 变量,避免依赖主题脚本加载

  • 代码寻找

- 会话状态检查:wp-content/plugins/erphpdown/includes/init.php:131-134
- ajax_object定义:wp-content/themes/lolimeow/page/p-signin.php:339-343

  • 修复效果

- 登录状态显示稳定,不再偶尔变为未登录状态
- 点击登录按钮正常执行AJAX登录请求,不再等同于刷新页面

 
 
 
 

🎨 ErphpDown插件UI界面重构

文件位置: wp-content/plugins/erphpdown/ 目录下多个文件

功能概述

将ErphpDown下载管理系统的插件界面UI,与ImageShiroki主题的后台设置页面UI完全统一美化,导航移至插件界面内部,而非后台列表中。

核心特性

  1. 统一设计语言:所有UI元素(按钮、表单、卡片、标签)均遵循主题的设计语言
  2. 标签式导航:将原有的多子菜单结构整合为单一主界面,导航移至插件内部
  3. 卡片式布局:采用主题的卡片式设计,增强视觉层次感
  4. 现代UI元素:实现了浮动标签输入字段、渐变设计元素、圆角输入框等
  5. 响应式设计:确保界面在不同屏幕尺寸下均能正常工作
  6. CSS过渡与动画:添加了平滑的过渡效果和悬停动画

修改的主要文件

  1. erphp-main.php:主界面模板,包含标签式导航

- 修改为匹配主题的HTML结构,采用卡片式布局
- 添加了渐变标题和适当的类名
- 整合了所有子菜单为标签式导航

  1. erphp-main.css:主题样式文件

- 创建了与主题一致的CSS样式
- 实现了浮动标签效果、卡片设计和渐变按钮
- 覆盖了插件的默认样式

  1. erphp-settings.php:设置页面

- 更新为使用主题的卡片式布局和表单样式
- 添加了浮动标签和卡片容器的适当类名
- 优化了表单结构和分组

技术实现要点

  1. 菜单重组:修改插件的菜单系统,只显示一个主菜单项

- 使用add_menu_page注册单一主菜单
- 移除了所有子菜单注册

  1. 主题CSS集成

- 加载主题的CSS样式文件
- 定义了与主题一致的CSS变量
- 实现了主题的设计语言

  1. 浮动标签效果
.ish-field .ish-input:focus + .ish-float,
   .ish-field .ish-input:not(:placeholder-shown) + .ish-float {
       top: -9px !important;
       transform: none !important;
       font-size: 12px !important;
       color: var(--ish-primary) !important;
   }
   
  1. 卡片式布局
.ish-admin-card {
       padding: 18px !important;
       border-radius: 18px !important;
       background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(246,248,255,0.92)) !important;
       border: 1px solid var(--ish-border) !important;
       box-shadow: 0 8px 24px rgba(22,32,58,0.06) !important;
       margin-bottom: 18px !important;
   }
   
  1. 渐变按钮样式
.ish-admin .button-primary {
       background: linear-gradient(90deg, #FF9F43, #FF7A59) !important;
       box-shadow: 0 10px 20px rgba(255,159,67,0.25) !important;
       color: #fff !important;
       border: none !important;
       border-radius: 999px !important;
   }
   

修复的问题

  1. Edit工具中的字符串替换问题:通过先读取确切的文件内容,然后进行精确编辑来修复
  2. 多次菜单注册尝试:仔细删除了旧的菜单注册调用
  3. CSS特异性问题:创建了具有更高特异性选择器的专用CSS文件
  4. HTML结构不匹配:更新了HTML结构以匹配主题的容器类
  5. $wpdb变量未定义错误:在所有使用$wpdb的文件中添加了global $wpdb声明

效果展示

  • 插件在WordPress后台侧边栏中只有一个主菜单项
  • 所有插件设置都通过与主题设置页面设计相同的标签式界面访问
  • 实现了卡片式布局、浮动标签和渐变按钮
  • 应用了响应式设计原则,适配不同屏幕尺寸
  • 界面与主题的设计一样,导航移至插件内部

 
 
 
 

🚨 erphpdown插件致命错误修复(停用钩子函数缺失)

文件位置: wp-content/plugins/erphpdown/erphpdown.php

  • 问题描述: 停用erphpdown插件时出现致命错误:Fatal error: Uncaught TypeError: call_user_func_array(): Argument #1 ($callback) must be a valid callback, function "erphpdown_uninstall" not found or invalid function name
  • 修复内容:

1. 添加缺失的停用函数: 在erphpdown.php文件中添加了erphpdown_uninstall函数,防止停用插件时出现回调函数不存在的错误
2. 添加缺失的激活函数: 同时添加了erphpdown_install函数,确保插件激活时也能正常工作
3. 遵循代码注释规范: 为新函数添加了符合规范的emoji标题注释

  • 解决效果: 插件可以正常激活和停用,不再出现致命错误

代码修改:

// 🔧 插件激活函数
function erphpdown_install() {
    // 空函数,防止激活插件时出现错误
}

// 🥳 插件停用函数
function erphpdown_uninstall() {
    // 空函数,防止停用插件时出现错误
}

影响范围: 仅修改了erphpdown插件的主文件,不影响插件的其他功能和主题的正常运行

 
 
 
 

🐛 PHP 8.0+ 兼容性修复(erphpdown)

文件位置: wp-content/plugins/erphpdown/includes/init.php

  • 问题描述: Inteliphense诊断报错,包括类型不匹配和废弃函数调用
  • 修复的错误:

- Expected type 'object|array'. Found 'string'(第339行)
- 'curl_close' is deprecated(第377、393、410行)

  • 修复内容:

1. 类型安全处理: 在erphpdown_file_post函数中添加类型检查,确保http_build_query()只接收数组或对象类型参数
2. 废弃函数移除: 删除所有curl_close()调用,PHP 8.0+中不再需要显式关闭cURL资源,会自动处理资源释放

  • 解决效果: 消除了所有Inteliphense诊断错误,确保代码在PHP 8.0+环境中正常运行

🔒 登录状态显示修复

文件位置: assets/js/boxmoe.js · wp-content/plugins/erphpdown/includes/init.php · core/module/fun-user.php

  • 问题描述: 用户登录后不显示登录状态,点击登录按钮等同于刷新页面,出现"安全认证失败,请刷新页面重试"错误
  • 修复内容:

1. JavaScript冲突修复: 修改boxmoe.js中的validation函数,排除登录表单#loginform,避免与AJAX登录提交事件冲突
2. PHP会话干扰解决: 修改erphpdown插件的erphpdown_nologinpay_check函数,仅在非登录状态下启动会话,避免干扰WordPress cookie-based身份验证机制
3. 优化nonce验证机制: 修改handle_user_login函数,避免因页面停留时间过长导致nonce过期无法登录的问题
4. 登录状态持久化: 确保is_user_logged_in()函数正确返回用户登录状态,修复登录后不显示会员中心等问题

  • 解决效果: 登录功能恢复正常,用户登录后显示正确的会员信息,点击登录按钮执行正常的AJAX登录请求

 
 
 
 

👤 管理员后台访问权限修复

问题描述: 部分设备偶然性登录后,管理员身份无法访问后台管理页面,打开链接直接跳转到首页

修复范围:

  1. 主题文件修复: wp-content/themes/lolimeow/core/module/fun-admin.php
  2. 插件文件修复: wp-content/plugins/erphpdown/includes/init.php

主题修复内容:

  • 函数: boxmoe_restrict_admin_access
  • 修复点:

- 将钩子从 admin_init 改为 admin_menu,确保用户身份完全确认后再执行重定向
- 添加 is_user_logged_in() 检查,只对已登录用户进行重定向
- 保留 current_user_can('manage_options') 检查,确保只有非管理员才会被重定向

插件修复内容:

  • 函数: erphpdown_noadmin_redirect
  • 修复点:

- 将钩子从 init 改为 admin_init,确保用户身份完全确认后再执行重定向
- 添加 is_user_logged_in() 检查,只对已登录用户进行重定向
- 添加 current_user_can('manage_options') 检查,确保管理员不会被重定向
- 添加 exit 语句,确保重定向后立即终止脚本执行

修复原理:

  1. 钩子执行时机问题: 原代码使用过早的钩子(admin_initinit),在用户身份完全确认之前就执行了重定向逻辑
  2. 权限检查不完整: 缺少对管理员权限的明确检查,导致管理员也可能被错误重定向
  3. 重定向逻辑缺陷: 缺少对用户登录状态的检查,可能导致未登录用户也被重定向

修复效果:

  • 管理员用户在登录后能够正常访问后台管理页面
  • 无论是通过点击"访问后台"链接还是直接访问后台URL,都不会被错误地重定向到首页
  • 非管理员用户仍然被正确重定向到首页,保持了原有的安全控制
  • 修复了部分设备偶然性登录后无法访问后台的问题

 
 
 
 

🔍 搜索框样式优化

文件位置: assets/css/style.css

修复内容

  1. 暗色模式下搜索框白色描边

- 为侧边栏和底部栏搜索框添加白色描边效果,增强暗色模式下的可见性
- 使用 outline: 2px solid rgba(255, 255, 255, 0.9) !important 实现
- 调整描边位置:outline-offset: -2px !important

  1. 保留漫画风边框效果

- 修复了之前修改破坏漫画风边框效果的问题
- 恢复了透明背景:background: transparent !important
- 移除了多余阴影:box-shadow: none !important
- 保留了原本的边框和文字颜色

  1. 导航栏搜索框修复

- 确保导航栏搜索框在暗色模式下也能显示漫画风效果
- 在暗色模式下,将导航栏搜索框的边框和阴影颜色改为白色
- 将背景色改为暗色背景,文字颜色改为白色
- 移除了可能冲突的白色描边

  1. 样式优先级优化

- 使用了 !important 确保白色描边样式生效
- 使用了多重选择器确保样式能应用到所有相关元素
- 为不同边框样式添加了样式规则

  1. 底部栏搜索框修复

- 修复了底部栏搜索框的样式问题
- 确保底部栏搜索框在暗色模式下也能显示白色描边
- 保留了原本的漫画风边框效果

 
 

使用效果

  • 暗色模式下,侧边栏和底部栏搜索框显示明显的白色描边,提高了可见性
  • 所有搜索框在暗色模式下都能保留原本的漫画风边框效果
  • 导航栏搜索框在暗色模式下显示白色边框和阴影,与主题风格保持一致
  • 搜索框在不同位置(导航栏、侧边栏、底部栏)都能显示正确的样式

 
 

实现要点

  • 使用了 outline 属性而不是 border,避免破坏原本的边框样式
  • 调整了 outline-offset 确保描边位置合适
  • 为不同位置的搜索框添加了针对性的样式规则
  • 确保了样式的优先级,避免被其他样式覆盖
  • 保留了主题原本的设计风格和漫画风边框效果

修复内容:

  • 修复了底部栏小部件功能丢失问题
  • 修复了当前用户信息的头像样式
  • 修复了书签的图片显示问题
  • 优化了文字布局
  • 同步了底部栏和侧边栏的书签样式
  • 修复了漫画风边框时非悬停状态下底座样式显示问题
  • 统一了搜索小部件样式,使其与侧边栏样式一致
  • 修复了搜索小部件不显示问题
  • 确保搜索小部件样式绑定到主题布局边框设置
  • 修复了侧边栏和底部栏链接小部件样式不一致问题,确保头像和标题显示样式统一
  • 统一了链接小部件的布局、头像大小、标题样式和交互效果
  • 修复了底部栏链接小部件的卡片样式,使其与侧边栏保持一致
  • 确保所有链接小部件在不同位置(侧边栏、底部栏)显示方式完全一致

 
 
 
 

🐛 会员插件修复(ErphpDown)

🚀 修复插件设置页面访问错误

文件位置:

  • erphpdown/includes/functions.erphp.php
  • erphpdown/includes/init.php
  • erphpdown/admin/erphp-main.php
  • erphpdown/admin/erphp-settings.php
  • erphpdown/admin/erphp-front.php
  • erphpdown/admin/erphp-payment.php
  • erphpdown/admin/erphp-vip-setting.php

修复内容

  1. 插件安装提示链接修复

- 修复了插件安装后提示信息中"去设置"链接的访问错误
- 将链接从 admin.php?page=erphpdown/admin/erphp-settings.php 改为 admin.php?page=erphpdown-main&tab=settings

  1. 表单提交URL修复

- 修复了【显示设置】、【支付设置】、【VIP设置】等页面的表单提交URL错误
- 将所有设置页面的表单 action 属性修改为正确的标签页格式
- 例如:admin.php?page=erphpdown-main&tab=front 代替直接访问文件的URL

  1. 权限统一修复

- 修复了菜单注册权限与页面访问权限不一致的问题
- 将菜单注册的权限从 activate_plugins 改为 manage_options
- 确保与 erphp-main.php 中的权限检查保持一致

  1. 全局保护机制

- 在 functions.erphp.php 中添加了 erphpdown_protect_admin_files() 函数
- 处理所有直接访问admin目录下文件的请求,自动重定向到正确的标签页URL
- 定义了文件名到标签页名称的映射关系,确保正确重定向

修复原理

  1. URL格式问题:WordPress只注册了 erphpdown-main 作为合法菜单项,直接访问 erphpdown/admin/erphp-settings.php 会被权限系统拒绝
  2. 权限不一致:菜单注册和页面访问使用了不同的权限,导致管理员用户在某些情况下无法正常访问
  3. 表单提交错误:多个设置页面的表单提交到了错误的URL,导致保存后出现权限错误

修复效果

  • 插件安装后点击"去设置"链接能正确跳转到设置页面
  • 所有设置页面点击"保存设置"按钮后能正确处理,不会出现权限错误
  • 管理员用户能正常访问所有设置页面
  • 统一了插件的权限设置,避免了权限不一致导致的访问问题
  • 修复了部分用户在某些设备上无法访问插件设置页面的问题

技术说明

  • 插件使用了标签页模式管理所有设置页面,通过 erphpdown-main 主页面和 tab 参数来区分不同的设置页面
  • 修复后,所有设置页面的访问和表单提交都通过正确的标签页URL进行,符合WordPress的权限管理机制
  • 新增的全局保护机制确保了即使有其他地方使用了错误的URL,也能被正确重定向,提高了插件的健壮性

 
 
 
 

📱 移动端文章列表布局优化

文件位置: page/template/blog-list.php · assets/css/style.css

  • 功能描述: 优化移动端文章列表布局,实现一行两个四方形卡片展示,文字溢出显示省略号
  • 核心优化点

- 将所有文章列表统一改为栅格布局,使用 col-sm-6 确保移动端一行两个卡片
- 实现四方形图片容器,使用 padding-top: 75% 保持 4:3 比例
- 标题溢出显示省略号(最多2行)
- 内容溢出显示省略号(最多3行)
- 确保卡片高度一致,内容区域填满卡片
- 保持上图下文的布局结构

  • 代码修改

- 模板文件:page/template/blog-list.php - 统一使用栅格布局
- CSS样式:assets/css/style.css - 添加移动端四方形卡片样式

  • 使用效果

- 移动端文章列表以一行两个四方形卡片形式呈现
- 文字超过四方形容器时显示省略号
- 卡片内部保持上图下文布局
- 提升了移动端的视觉体验和浏览效率

 
 
 
 

📅 日期显示优化

文件位置: assets/css/style.css

  • 问题描述: 修复移动端文章卡片中日期分行显示的问题
  • 修复方案

- 将 .list-three .list-post-authordisplayblock 改为 inline-flex
- 添加 flex-wrap: nowrap 确保内容不换行
- 添加 white-space: nowrap 确保文本不折行
- 调整分隔符 .dotmargin0 5px,优化间距
- 在媒体查询中应用相同修复,确保移动端显示一致

  • 代码修改

- CSS样式:assets/css/style.css - 修改 .list-three .list-post-author 相关样式

  • 修复效果

- 作者名和日期在同一行显示
- 消除了日期分行的问题
- 提升了卡片的整体美观性
- 保持了一致的视觉体验

 
 
 
 

上一次更新已经跑远惹✨ 计算中...
(‾◡◝) 本内容里的一些消息,可能已经跟不上时间啦~
感谢您的支持
微信赞赏

微信扫一扫

支付宝赞赏

支付宝扫一扫



评论(2)

查看评论列表
评论头像
小笨蛋 2026年01月13日
赞!
评论头像
小笨蛋 2026年01月13日
不错不错ツ

发表评论

表情 颜文字
插入代码

北京时间 (Asia/Shanghai)

后退
前进
刷新
复制
粘贴
全选
删除
返回首页
0%
目录
顶部
底部
📖 文章导读