<?xml version="1.0" encoding="utf-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>DT模板定制|DT功能二开|DT源码二开|DT网站定制  - DT二开网</title><link>https://www.ydruanjian.site/</link><description></description><item><title>destoon v10版本好用么？自动翻译功能如何？</title><link>https://www.ydruanjian.site/post/25.html</link><description>&lt;p&gt;deStoon V10 是一个功能强大但优缺点非常分明的系统。它是否“好用”很大程度上取决于您的具体需求、技术背景和业务场景。&lt;/p&gt;&lt;h4&gt;优点 (为什么它可能“好用”)：&lt;/h4&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 8px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;功能极度丰富与成熟：作为发展了十多年的B2B系统，其内置的会员、供应、求购、公司、资讯、展会等模块非常完善，开箱即用，非常适合快速搭建一个功能齐全的B2B门户网站。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;行业针对性极强：在机械、电子、化工、原材料等传统B2B行业拥有大量的成功案例和用户群，模板和功能设计都贴合这些行业的需求。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;数据承载与SEO基础好：系统架构能够支撑大量的数据和访问，并且在程序层面提供了丰富的SEO设置选项（伪静态、标题、关键词、描述等），有利于搜索引擎优化。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;后台管理功能强大：后台提供了非常细粒度的权限和控制选项，对于熟悉它的管理员来说，能够实现非常精细化的运营管理。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;性价比高：相对于动辄几万的定制开发或某些SaaS产品，一次性购买的授权费用对于很多企业来说依然是可以接受的。&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h4&gt;缺点与挑战 (为什么它可能“不好用”)：&lt;/h4&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 8px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;技术架构相对陈旧：其核心架构相比现代PHP框架（如Laravel、ThinkPHP 6+等）显得较为老旧。代码风格、数据库操作方式等对于新开发者来说学习成本高，二次开发难度较大。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;前端界面过时：默认模板和整体的UI风格偏向“传统企业站”，视觉效果和交互体验与现代简约、移动优先的网页设计趋势有差距。虽然可以定制，但需要投入额外成本。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;移动端体验：虽然具备手机端，但其体验通常不如响应式设计的现代网站，很多时候是单独的一套模板，维护起来更麻烦。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;社区与更新：相比于一些开源项目，其官方更新速度和社区活跃度可能相对较慢。问题的解决更多依赖于官方客服或技术文档。&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;结论：&lt;/p&gt;&lt;ul style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;如果您需要快速搭建一个功能全面的传统B2B门户，不介意稍显过时的界面，且没有大量定制开发的需求，那么 deStoon V10 是一个非常成熟和“好用”的选择。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;如果您追求极致的用户体验、现代化的界面、便捷的二次开发，或者业务模式比较新颖，那么 deStoon 可能会让您感到束缚，您可能需要考虑基于现代框架进行定制开发或寻找其他替代方案。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;deStoon V10 系统本身不内置像谷歌翻译那样全自动、实时翻译整个页面的功能。它的“自动翻译”通常通过以下方式实现：&lt;/p&gt;&lt;h4&gt;1. 多语言插件/解决方案&lt;/h4&gt;&lt;p&gt;市场上存在为 deStoon 开发的第三方多语言插件。这些插件是实现自动翻译的主流方式。&lt;/p&gt;&lt;ul style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;工作原理：&lt;/p&gt;&lt;/li&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 4px; padding-left: 18px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;内容抓取：插件会抓取您网站上已发布的内容（如产品标题、描述、公司介绍等）。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;调用翻译API：插件将这些内容发送到第三方翻译服务商的API接口，例如谷歌云翻译 API、百度翻译 API、微软Azure翻译 API&amp;nbsp;等。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;生成翻译内容：API返回翻译结果后，插件将其存储到数据库中。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;前端切换：在网站前台提供一个语言切换器（如顶部的中文/English切换按钮）。用户点击后，系统会调用存储的翻译内容进行显示。&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;&lt;p&gt;优点：&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;list-style-type: square;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;翻译准确度相对较高（依赖于专业的翻译API）。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;可以批量翻译已有内容，效率高。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;翻译后的内容存储在本地，访问速度快。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;p&gt;缺点：&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;list-style-type: square;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;需要付费：插件本身可能需要购买，并且使用翻译API会产生费用（按字符数计算）。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;非完全实时：通常是后台手动或定时触发翻译任务，新发布的内容需要一定时间才能被翻译。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;需要配置：需要申请翻译API的密钥并在插件后台进行配置。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;h4&gt;2. 前端JS翻译工具（不推荐用于正式项目）&lt;/h4&gt;&lt;p&gt;您也可以在页面上嵌入像&amp;nbsp;Google Translate Widget&amp;nbsp;这样的前端JS工具。&lt;/p&gt;&lt;ul style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;工作原理：用户点击按钮后，JavaScript会实时翻译页面上的文本。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;优点：设置简单，基本免费。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;缺点：&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;list-style-type: square;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;翻译质量不稳定，尤其对专业术语。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;影响SEO：搜索引擎无法抓取翻译后的内容，不利于多语言SEO。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;翻译速度慢，体验不佳。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;样式容易错乱。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;可能被浏览器插件拦截。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt;&lt;h3&gt;总结与建议&lt;/h3&gt;&lt;p&gt;对于 deStoon V10 的自动翻译需求，最专业和有效的做法是：&lt;/p&gt;&lt;p&gt;购买并配置一个成熟的 deStoon 多语言插件，并接入专业的翻译API（如百度翻译API或谷歌翻译API）&lt;/p&gt;&lt;div&gt;&lt;/div&gt;</description><pubDate>Thu, 06 Nov 2025 09:21:27 +0800</pubDate></item><item><title>destoon文件缓存表能清么,destoon缓存如何清理</title><link>https://www.ydruanjian.site/post/24.html</link><description>&lt;p&gt;当然可以清理 deStoon 的文件缓存表。&lt;/p&gt;&lt;p&gt;清理缓存是一个常规的运维操作，可以解决很多常见问题，比如：网站显示异常、数据更新了但前台没变、页面错乱等。&lt;/p&gt;&lt;p&gt;下面为您详细介绍几种清理方法：&lt;/p&gt;&lt;h3&gt;方法一：通过后台管理系统清理（最安全、推荐使用）&lt;/h3&gt;&lt;p&gt;这是最常规和安全的方法，适用于绝大多数情况。&lt;/p&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;登录 deStoon 后台管理系统。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;在顶部或侧边栏找到&amp;nbsp;“系统设置”&amp;nbsp;或类似的菜单。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;在系统设置下，找到&amp;nbsp;“缓存更新”&amp;nbsp;或&amp;nbsp;“清理缓存”&amp;nbsp;功能。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;在缓存更新页面，您通常会看到多个选项：&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;margin-top: 4px; padding-left: 18px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;更新模板缓存：清理编译后的模板文件，解决页面显示布局问题。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;更新模块缓存：清理模块生成的缓存数据。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;更新系统缓存&amp;nbsp;/&amp;nbsp;更新网站缓存：清理核心系统缓存。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;更新分类缓存：清理商品、文章等分类信息的缓存。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;一键更新全部缓存：最省事的选择，通常会清理上述所有缓存。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ol&gt;&lt;p&gt;建议：&amp;nbsp;直接选择&amp;nbsp;“一键更新全部缓存”&amp;nbsp;或勾选所有选项后执行。&lt;/p&gt;&lt;hr style=&quot;background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0.1); border: none; height: 1px; margin: 32px 0px; font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap;&quot;/&gt;&lt;h3&gt;方法二：直接删除缓存文件（强制清理）&lt;/h3&gt;&lt;p&gt;如果因为后台无法访问或后台清理失效，可以直接在服务器上删除缓存文件。&lt;/p&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;连接到您的服务器（通过FTP、SFTP或服务器管理面板的文件管理器）。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;找到 deStoon 的安装根目录。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;进入&amp;nbsp;&lt;code&gt;cache&lt;/code&gt;&amp;nbsp;目录。这个目录就是专门存放缓存文件的。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;删除&amp;nbsp;&lt;code&gt;cache&lt;/code&gt;&amp;nbsp;目录下的所有文件和文件夹。&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;margin-top: 4px; padding-left: 18px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;特别注意：只删除&amp;nbsp;&lt;code&gt;cache&lt;/code&gt;&amp;nbsp;目录里面的内容，不要删除&amp;nbsp;&lt;code&gt;cache&lt;/code&gt;&amp;nbsp;这个目录本身。系统需要这个空目录来重新生成缓存。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ol&gt;&lt;p&gt;路径示例：&lt;/p&gt;&lt;div class=&quot;md-code-block md-code-block-light&quot; style=&quot;--ds-md-code-banner-background-color: #f9fafb; --ds-md-code-block-border-radius: 12px; --ds-md-code-block-font-size: calc(1.143*11px); color: rgb(15, 17, 21); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(249, 250, 251); border-radius: 12px; margin: 16px 0px 11.43px; position: relative; font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap;&quot;&gt;&lt;div class=&quot;md-code-block-banner-wrap&quot; style=&quot;z-index: 6; background-color: rgb(255, 255, 255); position: sticky; top: 0px;&quot;&gt;&lt;div class=&quot;md-code-block-banner md-code-block-banner-lite&quot; style=&quot;background: none 0% 0% / auto repeat scroll padding-box border-box rgb(249, 250, 251); padding: 0px; font-size: 12.573px; line-height: 12.573px; justify-content: space-between; display: flex; border-top-left-radius: 12px; border-top-right-radius: 12px;&quot;&gt;&lt;div class=&quot;_121d384&quot; style=&quot;justify-content: space-between; align-items: center; width: 740px; padding: 6px; display: flex;&quot;&gt;&lt;div class=&quot;d2a24f03&quot; style=&quot;flex-shrink: 0;&quot;&gt;&lt;span class=&quot;d813de27&quot; style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; margin-left: 8px; font-size: 12px; line-height: 18px;&quot;&gt;text&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre style=&quot;font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 13px; line-height: 22px; font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; overflow: auto; text-wrap-mode: wrap; word-break: break-all; padding: 16px; margin-top: 0px !important; margin-bottom: 0px !important;&quot;&gt;/您的网站根目录/cache/&lt;/pre&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;12&quot; height=&quot;12&quot; viewbox=&quot;0 0 12 12&quot; fill=&quot;none&quot; class=&quot;_9bc997d _33882ae&quot;&gt;&lt;path d=&quot;M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z&quot; fill=&quot;currentColor&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;12&quot; height=&quot;12&quot; viewbox=&quot;0 0 12 12&quot; fill=&quot;none&quot; class=&quot;_9bc997d _28d7e84&quot;&gt;&lt;path d=&quot;M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z&quot; fill=&quot;currentColor&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/div&gt;&lt;p class=&quot;ds-markdown-paragraph&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot;&gt;进入后，删除里面的&amp;nbsp;&lt;code style=&quot;box-sizing: border-box; font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: 100%; line-height: 22px; font-optical-sizing: auto; font-size-adjust: none; font-kerning: auto; font-feature-settings: normal; font-variation-settings: normal; font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; background-color: rgb(235, 238, 242); border-radius: 6px; align-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em !important;&quot;&gt;admin&lt;/code&gt;、&lt;code style=&quot;box-sizing: border-box; font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: 100%; line-height: 22px; font-optical-sizing: auto; font-size-adjust: none; font-kerning: auto; font-feature-settings: normal; font-variation-settings: normal; font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; background-color: rgb(235, 238, 242); border-radius: 6px; align-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em !important;&quot;&gt;member&lt;/code&gt;、&lt;code style=&quot;box-sizing: border-box; font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: 100%; line-height: 22px; font-optical-sizing: auto; font-size-adjust: none; font-kerning: auto; font-feature-settings: normal; font-variation-settings: normal; font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; background-color: rgb(235, 238, 242); border-radius: 6px; align-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em !important;&quot;&gt;caches_*&lt;/code&gt;&amp;nbsp;等所有子目录和文件。&lt;/p&gt;&lt;p class=&quot;ds-markdown-paragraph&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot;&gt;&lt;span style=&quot;font-weight: 600;&quot;&gt;风险：&lt;/span&gt;&amp;nbsp;此方法会瞬间清除所有缓存，在高并发时可能会对服务器造成短暂压力。但通常是安全有效的。&lt;/p&gt;&lt;hr style=&quot;background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0.1); border: none; height: 1px; margin: 32px 0px; font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap;&quot;/&gt;&lt;h3&gt;方法三：通过数据库操作（针对“文件缓存表”）&lt;/h3&gt;&lt;p&gt;您提到的“文件缓存表”很可能指的是数据库里存储缓存数据的表。虽然它叫“文件缓存表”，但数据实际上是存在数据库里的。&lt;/p&gt;&lt;p&gt;警告：对数据库操作有风险，请在操作前务必备份数据库！&lt;/p&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;登录您的&amp;nbsp;数据库管理工具（如 phpMyAdmin）。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;选择 deStoon 网站使用的数据库。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;找到缓存相关的数据表，通常它们以&amp;nbsp;&lt;code&gt;destoon_&lt;/code&gt;&amp;nbsp;为前缀（您的实际前缀可能不同），表名可能包含&amp;nbsp;&lt;code&gt;cache&lt;/code&gt;。&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;margin-top: 4px; padding-left: 18px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;常见的缓存表名可能是：&lt;code&gt;destoon_cache&lt;/code&gt;&amp;nbsp;或&amp;nbsp;&lt;code&gt;destoon_caches&lt;/code&gt;。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;&lt;p&gt;您可以&amp;nbsp;清空（TRUNCATE）&amp;nbsp;这张表。&lt;/p&gt;&lt;/li&gt;&lt;ul style=&quot;margin-top: 4px; padding-left: 18px;&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;在 phpMyAdmin 中，选中该表，然后在下方选择“清空”操作。&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ol&gt;&lt;p&gt;SQL 命令示例：&lt;/p&gt;&lt;div class=&quot;md-code-block md-code-block-light&quot; style=&quot;--ds-md-code-banner-background-color: #f9fafb; --ds-md-code-block-border-radius: 12px; --ds-md-code-block-font-size: calc(1.143*11px); color: rgb(15, 17, 21); background: none 0% 0% / auto repeat scroll padding-box border-box rgb(249, 250, 251); border-radius: 12px; margin: 16px 0px 11.43px; position: relative; font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap;&quot;&gt;&lt;div class=&quot;md-code-block-banner-wrap&quot; style=&quot;z-index: 6; background-color: rgb(255, 255, 255); position: sticky; top: 0px;&quot;&gt;&lt;div class=&quot;md-code-block-banner md-code-block-banner-lite&quot; style=&quot;background: none 0% 0% / auto repeat scroll padding-box border-box rgb(249, 250, 251); padding: 0px; font-size: 12.573px; line-height: 12.573px; justify-content: space-between; display: flex; border-top-left-radius: 12px; border-top-right-radius: 12px;&quot;&gt;&lt;div class=&quot;_121d384&quot; style=&quot;justify-content: space-between; align-items: center; width: 740px; padding: 6px; display: flex;&quot;&gt;&lt;div class=&quot;d2a24f03&quot; style=&quot;flex-shrink: 0;&quot;&gt;&lt;span class=&quot;d813de27&quot; style=&quot;font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; margin-left: 8px; font-size: 12px; line-height: 18px;&quot;&gt;sql&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;pre style=&quot;font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 13px; line-height: 22px; font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; overflow: auto; text-wrap-mode: wrap; word-break: break-all; padding: 16px; margin-top: 0px !important; margin-bottom: 0px !important;&quot;&gt;TRUNCATE&amp;nbsp;TABLE&amp;nbsp;`destoon_cache`;&lt;/pre&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;12&quot; height=&quot;12&quot; viewbox=&quot;0 0 12 12&quot; fill=&quot;none&quot; class=&quot;_9bc997d _33882ae&quot;&gt;&lt;path d=&quot;M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z&quot; fill=&quot;currentColor&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot; width=&quot;12&quot; height=&quot;12&quot; viewbox=&quot;0 0 12 12&quot; fill=&quot;none&quot; class=&quot;_9bc997d _28d7e84&quot;&gt;&lt;path d=&quot;M-5.24537e-07 0C-2.34843e-07 6.62742 5.37258 12 12 12L0 12L-5.24537e-07 0Z&quot; fill=&quot;currentColor&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/div&gt;&lt;p class=&quot;ds-markdown-paragraph&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot;&gt;&lt;em&gt;请将&amp;nbsp;&lt;code style=&quot;box-sizing: border-box; font-style: normal; font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: 100%; line-height: 22px; font-optical-sizing: auto; font-size-adjust: none; font-kerning: auto; font-feature-settings: normal; font-variation-settings: normal; font-family: Menlo, Monaco, Consolas, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;DejaVu Sans Mono&amp;quot;, &amp;quot;Liberation Mono&amp;quot;, &amp;quot;JetBrains Mono&amp;quot;, &amp;quot;Fira Code&amp;quot;, Cousine, &amp;quot;Roboto Mono&amp;quot;, &amp;quot;Courier New&amp;quot;, Courier, sans-serif, system-ui; background-color: rgb(235, 238, 242); border-radius: 6px; align-items: center; padding: 0px 5px; display: inline-flex; font-size: 0.875em !important;&quot;&gt;destoon_&lt;/code&gt;&amp;nbsp;替换为您数据库的实际表前缀。&lt;/em&gt;&lt;/p&gt;&lt;hr style=&quot;background: none 0% 0% / auto repeat scroll padding-box border-box rgba(0, 0, 0, 0.1); border: none; height: 1px; margin: 32px 0px; font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap;&quot;/&gt;&lt;h3 style=&quot;font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 20px; line-height: 30px; font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; margin: 32px 0px 16px; color: rgb(15, 17, 21); text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot;&gt;总结与建议&lt;/h3&gt;&lt;div class=&quot;ds-scroll-area _1210dd7 c03cafe9&quot; style=&quot;z-index: 0; position: relative; overflow-x: auto; scrollbar-width: none; --padding-left: calc((1651px - 100%)/2); --padding-right: 40px; width: calc(50% + 785.5px); padding-left: calc(-50% + 825.5px); padding-right: 40px; margin-left: calc(50% - 825.5px); color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot;&gt;&lt;div class=&quot;ds-scroll-area__gutters&quot; style=&quot;--scrollbar-bg: #e5e5e5; --scrollbar-hover: #dcdcdc; pointer-events: none; z-index: 1000; transition: opacity 0.1s ease-out 1s; position: sticky; top: 0px; left: 0px; right: 0px; height: 0px; --container-height: 184px; opacity: 1 !important;&quot;&gt;&lt;div class=&quot;ds-scroll-area__horizontal-gutter&quot; style=&quot;position: absolute; padding: 2px 0px; left: 0px; right: 0px; top: 172px; height: 8px;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;ds-scroll-area__vertical-gutter&quot; style=&quot;position: absolute; padding: 0px 2px; right: 0px; top: 8px; bottom: -176px; width: 8px;&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;table width=&quot;NaN&quot;&gt;&lt;thead&gt;&lt;tr class=&quot;firstRow&quot;&gt;&lt;th style=&quot;border-bottom-color: rgba(0, 0, 0, 0.12); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-weight: 500; font-stretch: normal; font-size: 15px; line-height: 25px; border-top: none; padding: 10px 16px 10px 0px; text-align: left;&quot;&gt;方法&lt;/th&gt;&lt;th style=&quot;border-bottom-color: rgba(0, 0, 0, 0.12); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-weight: 500; font-stretch: normal; font-size: 15px; line-height: 25px; border-top: none; padding: 10px 16px; text-align: left;&quot;&gt;适用场景&lt;/th&gt;&lt;th style=&quot;border-bottom-color: rgba(0, 0, 0, 0.12); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-weight: 500; font-stretch: normal; font-size: 15px; line-height: 25px; border-top: none; padding: 10px 16px; text-align: left;&quot;&gt;优点&lt;/th&gt;&lt;th style=&quot;border-bottom-color: rgba(0, 0, 0, 0.12); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-weight: 500; font-stretch: normal; font-size: 15px; line-height: 25px; border-top: none; padding: 10px 16px; text-align: left;&quot;&gt;缺点&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px 10px 0px;&quot;&gt;&lt;span style=&quot;font-weight: 600;&quot;&gt;后台清理&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px;&quot;&gt;常规维护，后台可正常登录&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px;&quot;&gt;安全、简单、无需技术知识&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 0px 10px 16px;&quot;&gt;如果后台故障则无法使用&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px 10px 0px;&quot;&gt;&lt;span style=&quot;font-weight: 600;&quot;&gt;删除文件&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px;&quot;&gt;后台无法访问或清理无效&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px;&quot;&gt;直接、强制、有效&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 0px 10px 16px;&quot;&gt;需要服务器权限，操作需谨慎&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px 10px 0px;&quot;&gt;&lt;span style=&quot;font-weight: 600;&quot;&gt;数据库清理&lt;/span&gt;&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px;&quot;&gt;明确知道是数据库缓存表问题&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 16px;&quot;&gt;精准清理数据库缓存&lt;/td&gt;&lt;td style=&quot;border-bottom-color: rgba(0, 0, 0, 0.1); font-variant-numeric: normal; font-variant-east-asian: normal; font-variant-alternates: normal; font-size-adjust: none; font-kerning: auto; font-optical-sizing: auto; font-feature-settings: normal; font-variation-settings: normal; font-variant-position: normal; font-variant-emoji: normal; font-stretch: normal; font-size: 15px; line-height: 25px; min-width: 100px; max-width: min(30vw, 320px); padding: 10px 0px 10px 16px;&quot;&gt;风险最高，需专业知识和备份&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;p&gt;最佳实践：&lt;/p&gt;&lt;ol start=&quot;1&quot; style=&quot;margin-top: 16px; margin-bottom: 16px; padding-left: 18px; color: rgb(15, 17, 21); font-family: quote-cjk-patch, Inter, system-ui, -apple-system, BlinkMacSystemFont, &amp;quot;Segoe UI&amp;quot;, Roboto, Oxygen, Ubuntu, Cantarell, &amp;quot;Open Sans&amp;quot;, &amp;quot;Helvetica Neue&amp;quot;, sans-serif; font-size: 16px; text-wrap-mode: wrap; background-color: rgb(255, 255, 255);&quot; class=&quot; list-paddingleft-2&quot;&gt;&lt;li&gt;&lt;p&gt;首选方法一，通过后台清理。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;如果方法一无效或无法登录后台，使用方法二，删除服务器上的&amp;nbsp;&lt;code&gt;cache&lt;/code&gt;&amp;nbsp;目录内容。&lt;/p&gt;&lt;/li&gt;&lt;li&gt;&lt;p&gt;方法三通常只在特定问题诊断时由开发者使用。&lt;/p&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;清理完成后，请务必刷新网站前台和后台页面，检查问题是否已经解决。&lt;/p&gt;</description><pubDate>Sat, 01 Nov 2025 09:18:48 +0800</pubDate></item><item><title>二次开发-用户名、邮箱、手机账号中间字符串以*隐藏 扩展方法</title><link>https://www.ydruanjian.site/post/23.html</link><description>&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;因为dt里面有用户名、邮箱、手机账号等，所以想办法进行隐藏保护用户隐私，所以个人就试着写了这个代码。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;在api/extend.func.php文件下增加以下代码：&lt;/span&gt;&lt;/p&gt;&lt;pre class=&quot;prism-highlight prism-language-c&quot;&gt;//用户名、邮箱、手机账号中间字符串以*隐藏
function&amp;nbsp;hideStar($str)&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(strpos($str,&amp;nbsp;&amp;#39;@&amp;#39;))&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$email_array&amp;nbsp;=&amp;nbsp;explode(&amp;quot;@&amp;quot;,&amp;nbsp;$str);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$prevfix&amp;nbsp;=&amp;nbsp;(strlen($email_array[0])&amp;nbsp;&amp;lt;&amp;nbsp;4)&amp;nbsp;?&amp;nbsp;&amp;quot;&amp;quot;&amp;nbsp;:&amp;nbsp;substr($str,&amp;nbsp;0,&amp;nbsp;3);&amp;nbsp;//邮箱前缀
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$count&amp;nbsp;=&amp;nbsp;0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$str&amp;nbsp;=&amp;nbsp;preg_replace(&amp;#39;/([\d\w+_-]{0,100})@/&amp;#39;,&amp;nbsp;&amp;#39;***@&amp;#39;,&amp;nbsp;$str,&amp;nbsp;-1,&amp;nbsp;$count,&amp;nbsp;&amp;#39;utf-8&amp;#39;);
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$rs&amp;nbsp;=&amp;nbsp;$prevfix&amp;nbsp;.&amp;nbsp;$str;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$pattern&amp;nbsp;=&amp;nbsp;&amp;#39;/(1[3458]{1}[0-9])[0-9]{4}([0-9]{4})/&amp;#39;;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp;(preg_match($pattern,&amp;nbsp;$str))&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$rs&amp;nbsp;=&amp;nbsp;preg_replace($pattern,&amp;nbsp;&amp;#39;$1****$2&amp;#39;,&amp;nbsp;$str);&amp;nbsp;//手机号
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;else&amp;nbsp;{
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$rs&amp;nbsp;=&amp;nbsp;substr($str,&amp;nbsp;0,&amp;nbsp;4)&amp;nbsp;.&amp;nbsp;&amp;quot;****&amp;quot;&amp;nbsp;.&amp;nbsp;substr($str,&amp;nbsp;-1);&amp;nbsp;&amp;nbsp;//用户名
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return&amp;nbsp;$rs;
}&lt;/pre&gt;</description><pubDate>Thu, 14 Aug 2025 14:16:29 +0800</pubDate></item><item><title>Destoon公司模块com的伪静态url路径修改方法</title><link>https://www.ydruanjian.site/post/22.html</link><description>&lt;div&gt;&lt;p&gt;Destoon7.0版本默认的路径是：域名/com/会员名，假如你做了修改或者想改成其他的，需要改两处位置&lt;/p&gt;&lt;p&gt;1、修改include/global.func.php文件&lt;/p&gt;&lt;p&gt;大概在894行处，修改$URL = DT_PATH.&amp;#39;com/&amp;#39;.$username.&amp;#39;/&amp;#39;;&lt;/p&gt;&lt;p&gt;com可以改成company或者其他你喜欢的路径。&lt;/p&gt;&lt;p&gt;2、修改伪静态配置后面3行：括号内改成你需要的&lt;/p&gt;&lt;/div&gt;&lt;pre class=&quot;prism-highlight prism-language-css&quot;&gt;rewrite&amp;nbsp;^/(company)/([a-z0-9_\-]+)/([a-z]+)/(.*)\.html$&amp;nbsp;/index.php?homepage=$2&amp;amp;file=$3&amp;amp;rewrite=$4&amp;nbsp;last;
rewrite&amp;nbsp;^/(company)/([a-z0-9_\-]+)/([a-z]+)([/])?$&amp;nbsp;/index.php?homepage=$2&amp;amp;file=$3&amp;nbsp;last;
rewrite&amp;nbsp;^/(company)/([a-z0-9_\-]+)([/])?$&amp;nbsp;/index.php?homepage=$2&amp;nbsp;last;&lt;/pre&gt;&lt;span style=&quot;font-family: 微软雅黑, &amp;quot;Microsoft YaHei&amp;quot;; background-color: #FFFFFF; color: #404040;&quot;&gt;3、更新数据：公司模块——更新数据——更新公司，更新完成所有链接都改了。&lt;/span&gt;</description><pubDate>Wed, 06 Aug 2025 15:16:03 +0800</pubDate></item><item><title>destoon如何关闭缓存;Destoon关闭缓存，提升网站速度</title><link>https://www.ydruanjian.site/post/21.html</link><description>&lt;p&gt;destoon关闭缓存;Destoon关闭缓存，提升网站速度&lt;/p&gt;&lt;p&gt;在网站开发中，网站速度是一个非常重要的指标。一个快速加载的网站可以提供更好的用户体验，并且在搜索引擎排名中占据更有利的位置。而关闭缓存是提升网站速度的一个有效方法。从编程开发者的角度来介绍如何关闭Destoon缓存，以提升网站速度。&lt;/p&gt;&lt;h3&gt;&lt;span class=&quot;ez-toc-section&quot; id=&quot;1_25E425BA258625E825A725A3Destoon25E725BC259325E525AD259825E6259C25BA25E5258825B6&quot;&gt;&lt;/span&gt;1. 了解Destoon缓存机制&lt;span class=&quot;ez-toc-section-end&quot;&gt;&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;在开始关闭Destoon缓存之前，我们需要了解Destoon缓存机制的工作原理。Destoon缓存是通过将动态生成的网页内容保存为静态HTML文件，以减少数据库和&lt;span class=&quot;wpcom_keyword_link&quot;&gt;&lt;a href=&quot;https://cloud.kd.cn/&quot; title=&quot;酷盾服务器&quot; rel=&quot;noopener&quot;&gt;服务器&lt;/a&gt;&lt;/span&gt;的负载，并提高网站的响应速度。当用户访问网站时，如果存在已缓存的HTML文件，服务器会直接返回该文件，而不需要再次生成网页内容。&lt;/p&gt;&lt;h3&gt;&lt;span class=&quot;ez-toc-section&quot; id=&quot;2_25E5258525B325E9259725ADDestoon25E725BC259325E525AD2598&quot;&gt;&lt;/span&gt;2. 关闭Destoon缓存&lt;span class=&quot;ez-toc-section-end&quot;&gt;&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;要关闭Destoon缓存，我们需要修改Destoon的配置文件。找到网站根目录下的config.inc.php文件，并用文本编辑器打开。&lt;/p&gt;&lt;p&gt;在配置文件中，找到以下代码：&lt;/p&gt;&lt;p&gt;“`php&lt;/p&gt;&lt;p&gt;define(‘CACHE’, true);&lt;/p&gt;&lt;p&gt;“`&lt;/p&gt;&lt;p&gt;将上述代码中的true改为false，即可关闭Destoon缓存。&lt;/p&gt;&lt;p&gt;“`php&lt;/p&gt;&lt;p&gt;define(‘CACHE’, false);&lt;/p&gt;&lt;p&gt;“`&lt;/p&gt;&lt;p&gt;保存配置文件，并重新加载网站。&lt;/p&gt;&lt;h3&gt;&lt;span class=&quot;ez-toc-section&quot; id=&quot;3_25E625B8258525E9259925A425E525B725B225E725BC259325E525AD259825E7259A258425E62596258725E425BB25B6&quot;&gt;&lt;/span&gt;3. 清除已缓存的文件&lt;span class=&quot;ez-toc-section-end&quot;&gt;&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;关闭Destoon缓存后，我们需要清除已缓存的HTML文件，以确保网站内容的实时更新。在Destoon的后台管理界面中，找到缓存管理选项，并选择清除缓存。系统将自动删除所有已缓存的HTML文件。&lt;/p&gt;&lt;h3&gt;&lt;span class=&quot;ez-toc-section&quot; id=&quot;4_25E425BC259825E5258C259625E725BD259125E725AB259925E5258525B625E425BB259625E6259625B925E9259D25A2&quot;&gt;&lt;/span&gt;4. 优化网站其他方面&lt;span class=&quot;ez-toc-section-end&quot;&gt;&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;关闭Destoon缓存只是提升网站速度的一个方面，我们还可以通过其他方法进一步优化网站。以下是一些常见的优化方法：&lt;/p&gt;&lt;p&gt;– 压缩网页内容：使用Gzip等压缩算法，减小网页文件的大小，提高传输速度。&lt;/p&gt;&lt;p&gt;– 合并和压缩CSS和JavaScript文件：将多个CSS和JavaScript文件合并为一个文件，并进行压缩，减少HTTP请求和文件大小。&lt;/p&gt;&lt;p&gt;– 使用CDN加速：使用内容分发网络（CDN），将网站的静态资源分发到全球各地的服务器上，加快资源加载速度。&lt;/p&gt;&lt;p&gt;– 优化图片：使用适当的图片格式和压缩算法，减小图片文件的大小，提高加载速度。&lt;/p&gt;&lt;p&gt;– 避免重定向：减少网页重定向的次数，以减少额外的网络请求。&lt;/p&gt;&lt;p&gt;通过关闭Destoon缓存，我们可以提升网站的加载速度，提供更好的用户体验。结合其他优化方法，可以进一步提高网站的性能。作为编程开发者，我们应该时刻关注网站速度的优化，并不断探索和应用新的优化方法，以提供更好的网站体验。&lt;/p&gt;</description><pubDate>Thu, 24 Jul 2025 15:39:12 +0800</pubDate></item><item><title>[DB篇]利用destoon怎么进行二次开发</title><link>https://www.ydruanjian.site/post/20.html</link><description>&lt;p class=&quot;introduction&quot;&gt;利用destoon怎么进行二次开发？很多新手对此不是很清楚，为了帮助大家解决这个难题，下面小编将为大家详细讲解，有这方面需求的人可以来学习下，希望你能有所收获。&lt;/p&gt;&lt;p&gt;destoon在初始化系统后系统会自动连接数据库，并将数据库操作对象保存在$db。对于数据库操作方法请参考include/db_&lt;a title=&quot;mysql&quot; target=&quot;_blank&quot; href=&quot;https://www.yisu.com/mysql/&quot;&gt;mysql&lt;/a&gt;.class.php函数原型，下面对常用数据库操作举例说明。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;1、执行SQL语句&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;pre-wrapper&quot; style=&quot;margin: 8px 0px;&quot;&gt;&lt;pre class=&quot;brush:php; hljs language-bash&quot; data-copyid=&quot;1&quot; data-highlighted=&quot;yes&quot;&gt;$db-&amp;gt;query(&amp;quot;INSERT&amp;nbsp;INTO&amp;nbsp;`{$DT_PRE}table`&amp;nbsp;(`xxx`)&amp;nbsp;VALUES&amp;nbsp;(&amp;#39;yyy&amp;#39;)&amp;quot;);&lt;/pre&gt;&lt;/div&gt;&lt;pre class=&quot;brush:php; hljs language-bash&quot; data-copyid=&quot;2&quot; data-highlighted=&quot;yes&quot;&gt;$db-&amp;gt;query(&amp;quot;UPDATE&amp;nbsp;`{$DT_PRE}table`&amp;nbsp;SET&amp;nbsp;`xxx`=&amp;#39;yyy&amp;#39;&amp;nbsp;WHERE&amp;nbsp;`zzz`=1&amp;quot;);&lt;/pre&gt;&lt;pre class=&quot;brush:php; hljs language-bash&quot; data-copyid=&quot;3&quot; data-highlighted=&quot;yes&quot;&gt;$db-&amp;gt;query(&amp;quot;DELETE&amp;nbsp;FROM&amp;nbsp;`{$DT_PRE}table`&amp;nbsp;WHERE&amp;nbsp;`zzz`=1&amp;quot;);&lt;/pre&gt;&lt;p&gt;&lt;br/&gt;&lt;strong&gt;2、读取多条信息&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;pre-wrapper&quot; style=&quot;margin: 8px 0px;&quot;&gt;&lt;pre class=&quot;brush:php; hljs language-php&quot; data-copyid=&quot;4&quot; data-highlighted=&quot;yes&quot;&gt;$A&amp;nbsp;=&amp;nbsp;array();$result&amp;nbsp;=&amp;nbsp;$db-&amp;gt;query(&amp;quot;SELECT&amp;nbsp;*&amp;nbsp;FROM&amp;nbsp;`{$DT_PRE}table`&amp;nbsp;WHERE&amp;nbsp;`xxx`=&amp;#39;yyy&amp;#39;&amp;nbsp;ORDER&amp;nbsp;BY&amp;nbsp;`zzz`&amp;nbsp;DESC&amp;nbsp;LIMIT&amp;nbsp;0,10&amp;quot;);while($r&amp;nbsp;=&amp;nbsp;$db-&amp;gt;fetch_array($result))&amp;nbsp;{
&amp;nbsp;&amp;nbsp;$A[]&amp;nbsp;=&amp;nbsp;$r;
}print_r($A);&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;3、读取单条信息&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;pre-wrapper&quot; style=&quot;margin: 8px 0px;&quot;&gt;&lt;pre class=&quot;brush:php; hljs language-bash&quot; data-copyid=&quot;5&quot; data-highlighted=&quot;yes&quot;&gt;$A&amp;nbsp;=&amp;nbsp;$db-&amp;gt;get_one(&amp;quot;SELECT&amp;nbsp;*&amp;nbsp;FROM&amp;nbsp;`{$DT_PRE}table`&amp;nbsp;WHERE&amp;nbsp;`xxx`=&amp;#39;yyy&amp;#39;&amp;quot;);
print_r($A);&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;4、计算总数&lt;/strong&gt;&lt;/p&gt;&lt;div class=&quot;pre-wrapper&quot; style=&quot;margin: 8px 0px;&quot;&gt;&lt;pre class=&quot;brush:php; hljs language-bash&quot; data-copyid=&quot;6&quot; data-highlighted=&quot;yes&quot;&gt;$A&amp;nbsp;=&amp;nbsp;$db-&amp;gt;get_one(&amp;quot;SELECT&amp;nbsp;COUNT(*)&amp;nbsp;AS&amp;nbsp;num&amp;nbsp;FROM&amp;nbsp;`{$DT_PRE}table`&amp;nbsp;WHERE&amp;nbsp;`xxx`=&amp;#39;yyy&amp;#39;&amp;quot;);echo&amp;nbsp;$A[&amp;#39;num&amp;#39;];&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;系统的表前缀可以使用变量$DT_PRE(一般在语句中使用)或者$db-&amp;gt;pre(一般在函数中使用)。&lt;br/&gt;&lt;strong&gt;如果在函数中使用数据库操作，需要先进行global $db;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Mon, 21 Jul 2025 09:03:16 +0800</pubDate></item><item><title> destoon系统运行流程介绍 二次开发必看</title><link>https://www.ydruanjian.site/post/19.html</link><description>&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;Destoon 是一个基于 PHP/MySQL 的 B2B 电子商务网站管理系统。它的核心运行流程遵循典型的 MVC（Model-View-Controller）模式，并结合了其自身的一些特性（如模块化、伪静态、缓存机制等）。以下是 Destoon 系统处理一个 HTTP 请求的核心运行流程：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;1.&amp;nbsp; 用户发起请求 (HTTP Request):&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;用户在浏览器中输入一个 Destoon 网站的 URL（例如：`http://www.example.com/product/123.html`）或点击网站上的链接/按钮。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;浏览器向 Web 服务器（通常是 Apache 或 Nginx）发送 HTTP 请求。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;2.&amp;nbsp; Web 服务器处理:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Web 服务器接收到请求。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;URL 重写 (Rewrite): 如果配置了伪静态规则（Destoon 强烈推荐），Web 服务器（通过 `.htaccess` 或 Nginx 配置）会将“漂亮”的 URL 重写回 Destoon 的入口文件（通常是 `index.php`）能识别的动态参数格式。例如：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;`product/123.html` 可能被重写为 `index.php?moduleid=5&amp;amp;itemid=123`（`moduleid=5` 代表产品模块）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;核心参数通常是 `moduleid`（确定模块）和 `file`（确定模块内的具体操作文件/方法）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;3.&amp;nbsp; 入口文件 (`index.php`):&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;请求最终被路由到 Destoon 的入口文件 `index.php`。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;加载核心框架:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;设置基本常量（如 `DT_ROOT` 系统根目录）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;包含核心配置文件 `config.inc.php`（包含数据库连接信息、基本系统设置等）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;包含核心函数库文件 `common.inc.php`。这是最关键的一步：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;初始化数据库连接（使用 `DB` 类）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;加载系统缓存（`cache.php`），包含模块配置、模型定义、分类信息、设置项等核心数据，避免频繁查询数据库。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;初始化模板引擎（通常是 Smarty）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;处理全局 `$_GET`, `$_POST` 参数，进行基本的安全过滤。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;处理用户会话（Session）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;根据 `moduleid` 加载对应模块的配置信息（从系统缓存中读取）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;执行全局钩子（Hook）或插件（Plugin）的特定点（如果有）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;4.&amp;nbsp; 路由分发 (根据 `moduleid` 和 `file`):&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;核心框架根据 `moduleid` 参数确定用户请求的是哪个功能模块（例如：新闻 `moduleid=2`，产品 `moduleid=5`，公司 `moduleid=4`，会员中心等）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;根据 `file` 参数（或者默认值，如 `index`）确定要执行该模块下的哪个具体功能文件（Controller）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;如果请求的是后台管理页面 (`admin.php` 作为入口)，流程类似，但会额外进行严格的权限验证。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;5.&amp;nbsp; 加载并执行模块控制器 (Controller):&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;框架定位到对应模块目录下的控制器文件（例如：`module/product/admin/product.inc.php` 或 `module/product/product.inc.php`）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;包含并执行该控制器文件:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;控制器文件通常包含一个与 `file` 参数同名的类（或直接包含函数）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;框架会实例化这个类（或调用相应函数）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;控制器负责：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;业务逻辑处理: 根据请求参数（`$_GET`, `$_POST`）执行特定操作（如查询数据库、添加数据、修改数据、删除数据、处理表单提交等）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;调用模型 (Model): 控制器通过实例化模型类（如 `$product = new product();`）来访问和操作数据库。模型类封装了与数据库表交互的具体方法（CRUD）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;数据处理: 对从模型获取的数据进行必要的处理、验证、格式化。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;权限检查 (尤其后台): 验证当前用户（管理员或会员）是否有权限执行该操作。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;准备视图数据: 将处理好的数据（如产品详情、列表数组）赋值给模板变量。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;6.&amp;nbsp; 模型 (Model) 操作数据库:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;控制器调用的模型方法内部使用 Destoon 封装的数据库操作类（通常是 `DB` 类或 `dba` 类）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;这些类执行实际的 SQL 查询（SELECT, INSERT, UPDATE, DELETE）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;查询结果被返回给控制器。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;7.&amp;nbsp; 加载并渲染模板 (View):&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;控制器逻辑执行完毕后，确定要加载哪个模板文件（`.htm` 文件）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;将之前准备好的模板变量（包含所有要显示的数据）传递给模板引擎（Smarty）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;模板引擎解析 `.htm` 文件：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;处理模板标签（如 `{loop}...{/loop}`, `{if}...{/if}`, `{$variable}`, `{include &amp;#39;file.htm&amp;#39;}`, 模块标签如 `{tag(&amp;quot;moduleid=5&amp;amp;condition=status=3&amp;amp;pagesize=10&amp;amp;order=addtime desc&amp;amp;template=list-product&amp;quot;)}`）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;将动态数据填充到模板的对应位置。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;生成最终的纯 HTML 内容。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;8.&amp;nbsp; 输出响应 (HTTP Response):&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;框架将模板引擎渲染好的 HTML 内容输出。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;同时输出必要的 HTTP 头信息（如 Content-Type, Cache-Control 等）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;如果启用了页面缓存（Gzip 压缩或 Destoon 自身的 HTML 文件缓存），会在此环节处理。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;9.&amp;nbsp; 浏览器接收并渲染:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Web 服务器将生成的 HTML 内容发送回用户的浏览器。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;浏览器解析 HTML、CSS 和 JavaScript，将网页呈现给用户。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;关键点总结:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;MVC 架构: 清晰分离逻辑（Controller）、数据（Model）和展示（View）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;入口单一: 所有请求都通过 `index.php`（前台）或 `admin.php`（后台）分发。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;模块化: 功能按模块组织，核心通过 `moduleid` 识别和加载模块。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;依赖缓存: 系统启动时加载大量核心配置和数据结构缓存 (`cache.php`)，极大提升性能。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;数据库抽象: 通过 `DB` 或 `dba` 类操作数据库，提供一定程度的兼容性和便捷性。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;模板引擎: 使用 Smarty 分离 PHP 逻辑和 HTML 代码。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;伪静态: 通过 URL 重写实现“静态化”URL，对 SEO 友好。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&amp;nbsp; &amp;nbsp;钩子/插件: 提供扩展点，允许在不修改核心代码的情况下增加功能。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;后台管理 (`admin.php`) 流程的特殊性:&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;1.&amp;nbsp; 严格的登录验证: 必须先登录管理员账号。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;2.&amp;nbsp; 菜单与权限加载: 根据管理员角色加载其有权限访问的菜单项。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;3.&amp;nbsp; 操作权限验证: 在执行具体控制器方法前，会再次验证当前管理员是否有权限执行该操作（增删改查等）。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;4.&amp;nbsp; 模块管理界面: 后台控制器通常提供数据列表、添加表单、编辑表单、删除按钮等管理界面。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;5.&amp;nbsp; 系统设置: 提供全局或模块级的配置管理功能。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap-mode: nowrap;&quot;&gt;理解这个流程有助于进行 Destoon 的二次开发、性能优化和故障排查。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br/&gt;&lt;/p&gt;</description><pubDate>Wed, 02 Jul 2025 08:56:10 +0800</pubDate></item><item><title>destoon二次开发需要费用和工期介绍</title><link>https://www.ydruanjian.site/post/18.html</link><description>&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;Destoon B2B网站管理系统是一套完善的B2B（电子商务）行业门户解决方案。系统基于PHP+MySQL开发，采用B/S架构，模板与程序分离，源码开放。模型化的开发思路，可扩展或删除任何功能；创新的缓存技术与数据库设计，可负载不低于百万级别数据容量及访问。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;destoon的功能非常强大无需质疑，但是也有朋友需要其它没有的功能,所有就有destoon二次开发的需要,本文就介绍下destoon二次开发需要费用和工期介绍。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;destoon功能和插件：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;1、网站设计与模板制作&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;2、整合支付通道&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;3、自定义搜索的方法&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;4、对接文件存储接口&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;5、微信扫码支持插件&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;6、文章违规内容自动审核&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;7、GPT文章自动生成&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;8、管理员密码找回插件&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;9、对接短信和邮件&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;10、火车头采集脚本&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;img class=&quot;ue-image&quot; src=&quot;https://www.ydruanjian.site/zb_users/upload/2024/11/202411051730801096538367.jpg&quot; title=&quot;微信截图_20241105180441.jpg&quot; alt=&quot;微信截图_20241105180441.jpg&quot;/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;DESTOON授权&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;destoon授权没有怎么办？请联系我们购买授权版&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;destoon授权文件，destoon授权转让，destoon授权域名更换。。。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;注：请购买正版DESTOON！&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;正版授权，咨询我们购买官方正版授权。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;DESTOON二次开发，请提供功能开发的需求文档。&lt;/span&gt;&lt;/p&gt;</description><pubDate>Tue, 05 Nov 2024 18:03:33 +0800</pubDate></item><item><title>destoon智能仪器网 自动化仪表门户网站</title><link>https://www.ydruanjian.site/post/17.html</link><description>&lt;p&gt;智能仪器网-专业科学仪器、自动化仪表门户网站，智能仪器网-专业科学仪器、自动化仪表门户网站。&lt;/p&gt;&lt;p&gt;&lt;img class=&quot;ue-image&quot; src=&quot;https://www.ydruanjian.site/zb_users/upload/2024/11/202411051730795298463684.jpg&quot; title=&quot;微信截图_20241105162743.jpg&quot; alt=&quot;微信截图_20241105162743.jpg&quot;/&gt;&lt;/p&gt;</description><pubDate>Tue, 05 Nov 2024 16:26:15 +0800</pubDate></item><item><title>destoon常用参数及含义 常见用法举例</title><link>https://www.ydruanjian.site/post/16.html</link><description>&lt;strong&gt;&lt;span style=&quot;font-size: 18px;&quot;&gt;destoon常用参数及含义&lt;/span&gt;&lt;/strong&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;moduleid指模块ID，可在后台模块管理里查询。对于直接调用模块的数据，设置正确的模块ID后，将不需要传递table参数，系统会自动获取。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如传递moduleid=5，系统将识别为调用供应信息，自动设置table参数为sell&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;table指表名，可在后台数据库维护里查询。对于Destoon系统表，不需要加表的前缀；对于非Destoon系统表，需要填写完整的表名，且传递prefix参数&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如对于Destoon系统表，传递table=sell，如果表前缀为destoon_，系统将识别表名为 destoon_sell&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;对于非Destoon系统表，传递table=tb_abc&amp;amp;prefix=或者table=abc&amp;amp;prefix=tb_，系统将识别表名为 tb_abc&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;fields指查询的字段，默认为*。可以传递例如 fields=title,addtime，但是一般情况下无需传递，Destoon独有的标签缓存机制会自动缓存查询结果，不必担心效率问题。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;condition指查询的条件，如果不传递，则为1，代表任意条件的数据(此项需了解SQL语法)。Destoon所有模块遵循统一标准开发，所以很多条件是通用的。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如 status=3表示正常通过的信息、status=3 and level=1表示级别为1的信息、status=3 and thumb&amp;lt;&amp;gt;”表示有标题图片的信息等。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;order指数据的排序方法(此项需了解SQL语法)。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如order=addtime desc表示按添加时间降序排列、order=itemid desc表示按itemid降序排列、order=rand()表示随机数据等。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;pagesize指调用数据的数量，如果不传递，默认为10。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;template指指定的标签模板，如果不传递，默认为list，位于模板目录/tag/list.htm，如果传递为null，表示不应用标签模板。参见上述数据显示过程。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size: 18px;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;常见用法举例&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br/&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size: 18px;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;控制标题长度&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;在标签里传递length参数，例如&amp;amp;length=20表示20个字符长度(GBK一个汉字占2个字符，UTF-8一个汉字占3个字符)，一般情况建议用css隐藏多余字符(定义height和overflow:hidden)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;传递length参数，系统仅对title字段自动截取，如果需要截取其他字段，可用dsubstr函数&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如 {dsubstr($t[company], 20, ‘…’)} 表示截取company字段为20个字符，截取后，结尾追加…&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;设置日期显示格式&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;可以在标签里传递datetype参数：&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;1 表示年；&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;2 表示月-日；&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;3 表示年-月-日；&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;4 表示月-日 时:分；&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;5 表示年-月-日 时:分；&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;6 表示年-月-日 时:分:秒&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;也可以在模板里直接使用date函数，例如{date(‘Y-m-d’, $t[addtime])}&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;表示将时间转换为 年-月-日 格式&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;调用某一分类的信息&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;在标签里传递catid参数，例如&amp;amp;catid=5表示调用分类ID为5的所有信息。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;如果调用多个分类，用逗号分隔分类ID，例如&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&amp;amp;catid=5,6,7表示调用分类ID为5、6、7的所有信息。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;分类调用默认包含子分类的信息，如果不需要包含子分类，可设置&amp;amp;child=0参数。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如&amp;amp;catid=5&amp;amp;child=0表示只调用分类ID为5的信息，不包括子分类的信息。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;调用某一地区的信息&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;调用地区信息和上述调用分类信息的方法完全相同，将其中的catid换为areaid即可。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;控制列数&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;此项常用于图片的布局，可使用cols参数。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;例如调用12张图片，一行显示4个，共3行，则传递&amp;amp;pagesize=12&amp;amp;cols=4&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;支持cols参数的标签模板限thumb-table.htm和list-table.htm&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;其中，thumb-table.htm显示图片列表，list-table.htm显示文字列表&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;如果新建支持cols的标签模板或直接循环$tags，可参考以上两个模板的写法&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;上述效果可以也可以通过CSS实现，无需使用表格，请自行书写&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;&lt;br/&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;显示文章的简介&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;使用{$t[introduce]}变量，如果要截取字数，例如80字符，可使用{dsubstr($t[introduce], 80, ‘…’)}&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;标签看似复杂难懂，实际上在理解各个参数的含义和调用流程后，您会了解到标签实际简单自由、灵活易用、功能强大。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;text-wrap: nowrap;&quot;&gt;默认模板里已提供了大量的调用范例和标签模板，可以在学习中参阅和调试。&lt;/span&gt;&lt;/p&gt;</description><pubDate>Thu, 31 Oct 2024 08:56:49 +0800</pubDate></item></channel></rss>