<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Cloudreve on Home</title><link>https://yecnay.net/tags/cloudreve/</link><description>Recent content in Cloudreve on Home</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Mon, 19 Oct 2026 17:12:51 +0800</lastBuildDate><atom:link href="https://yecnay.net/tags/cloudreve/index.xml" rel="self" type="application/rss+xml"/><item><title>修改 Cloudreve 中 OnlyOffice 的外观</title><link>https://yecnay.net/posts/tech/%E4%BF%AE%E6%94%B9cloudreve%E4%B8%ADonlyoffice%E7%9A%84%E5%A4%96%E8%A7%82/</link><pubDate>Mon, 19 Oct 2026 17:12:51 +0800</pubDate><guid>https://yecnay.net/posts/tech/%E4%BF%AE%E6%94%B9cloudreve%E4%B8%ADonlyoffice%E7%9A%84%E5%A4%96%E8%A7%82/</guid><description>&lt;p&gt;原文件&lt;/p&gt;
&lt;!-- raw HTML omitted --&gt;
&lt;!-- raw HTML omitted --&gt;
&lt;p&gt;计划修改的文件&lt;/p&gt;
&lt;!-- raw HTML omitted --&gt;
&lt;!-- raw HTML omitted --&gt;</description></item><item><title>Cloudreve WOPI / OnlyOffice 预览界面定制</title><link>https://yecnay.net/posts/tech/cloudreve-wopi-viewer/</link><pubDate>Mon, 14 Sep 2026 11:27:51 +0800</pubDate><guid>https://yecnay.net/posts/tech/cloudreve-wopi-viewer/</guid><description>&lt;h1 id="cloudreve-wopi-预览界面定制"&gt;Cloudreve WOPI 预览界面定制&lt;/h1&gt;
&lt;p&gt;Cloudreve v4 通过 WOPI 集成 OnlyOffice / Collabora / Office Online Server 时，页面上会出现 &lt;strong&gt;两个&lt;/strong&gt;同名的文件标题。
先判断你要改的是哪一个，再动手 —— 这是本技能里最容易搞错、也最容易白费功夫的地方。&lt;/p&gt;
&lt;h2 id="1-先分清图层决定能不能改"&gt;1. 先分清图层（决定&amp;quot;能不能改&amp;quot;）&lt;/h2&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;位置&lt;/th&gt;
&lt;th&gt;由谁渲染&lt;/th&gt;
&lt;th&gt;数据来源&lt;/th&gt;
&lt;th&gt;可否定制&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;页面最顶部那条标题栏（文件类型图标 + 文件名 + 右上角全屏/关闭按钮，下方有分隔线）&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Cloudreve 自己&lt;/strong&gt;：&lt;code&gt;src/component/Viewers/ViewerDialog.tsx&lt;/code&gt;（被 &lt;code&gt;Wopi.tsx&lt;/code&gt; 调用，MUI &lt;code&gt;Dialog&lt;/code&gt;）&lt;/td&gt;
&lt;td&gt;Redux &lt;code&gt;globalState.wopiViewer.file.name&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;✅ 后台配置即可&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;再下面一行（&lt;code&gt;ONLYOFFICE&lt;/code&gt; logo + 文件名；编辑器 iframe 内部）&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Document Server&lt;/strong&gt; 的 WOPI 页（&lt;code&gt;hosting/wopi/...&lt;/code&gt;，跑在 iframe 里）&lt;/td&gt;
&lt;td&gt;WOPI &lt;code&gt;CheckFileInfo.BaseFileName&lt;/code&gt;，Cloudreve 后端 &lt;code&gt;service/explorer/viewer.go&lt;/code&gt; 返回&lt;/td&gt;
&lt;td&gt;❌ 见第 6 节&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;关键点：Cloudreve 在这套流程里是 &lt;strong&gt;WOPI host&lt;/strong&gt;（&lt;code&gt;pkg/wopi/&lt;/code&gt;、&lt;code&gt;routers/controllers/wopi.go&lt;/code&gt;），它是把 DS 的 &lt;code&gt;actionUrl&lt;/code&gt;
通过一个隐藏表单 &lt;code&gt;#office_form&lt;/code&gt; &lt;strong&gt;POST&lt;/strong&gt;（带 &lt;code&gt;access_token&lt;/code&gt;）提交进 &lt;code&gt;iframe#office_frame&lt;/code&gt;，所以：&lt;/p&gt;</description></item></channel></rss>