<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>網頁 on 孤筝の温暖小家</title><link>https://www.guzhengsvt.cn/zh-tw/tags/%E7%B6%B2%E9%A0%81/</link><description>Recent content from 孤筝の温暖小家</description><generator>Hugo</generator><language>zh-tw</language><managingEditor>lvbowen040427@163.com (孤筝)</managingEditor><webMaster>lvbowen040427@163.com (孤筝)</webMaster><copyright>本部落格所有文章除特別聲明外，均採用 BY-NC-SA 授權協議。轉載請註明出處！</copyright><lastBuildDate>Sat, 19 Apr 2025 16:56:24 +0800</lastBuildDate><atom:link href="https://www.guzhengsvt.cn/zh-tw/tags/%E7%B6%B2%E9%A0%81/index.xml" rel="self" type="application/rss+xml"/><item><title>Typecho評論匯入Waline</title><link>https://www.guzhengsvt.cn/zh-tw/post/othernotes/typecho%E8%AF%84%E8%AE%BA%E5%AF%BC%E5%85%A5waline/</link><pubDate>Sat, 19 Apr 2025 16:56:24 +0800</pubDate><author>lvbowen040427@163.com (孤筝)</author><guid>https://www.guzhengsvt.cn/zh-tw/post/othernotes/typecho%E8%AF%84%E8%AE%BA%E5%AF%BC%E5%85%A5waline/</guid><description>
<![CDATA[<h1>Typecho評論匯入Waline</h1><p>作者：孤筝（lvbowen040427@163.com）</p>
        
          <p>前兩天把部落格文章從 Typecho 遷移到 Hugo，光是設定 Front Matter 參數和重新配置圖片連結就費了很大功夫。<br>
一個部落格的價值，首先是文章，緊接著就是評論。評論證明部落格在網際網路和真實世界產生的影響，承載了人與人之間的交互關係。私心一點地說，五湖四海的評論是重要的回憶，是構成「我」的一部分。<br>
所以，將原站評論 copy 到新站的對應文章下是很有必要的。</p>
<h2 id="配置-waline">
<a class="header-anchor" href="#%e9%85%8d%e7%bd%ae-waline"></a>
配置 Waline
</h2><p>相比於 Wordpress、Typecho 等動態部落格，靜態部落格只能外掛評論系統，選擇眾多，各有優劣。在參考了<a href="https://cloud.tencent.com/developer/article/2196035">這篇文章</a>和查閱各個評論系統官網後，我最終選擇<a href="https://waline.js.org">Waline</a>。<br>
Waline 的<a href="https://waline.js.org/guide/get-started/">中文文檔</a>內容翔實，設置<a href="https://leancloud.app">LeanCloud</a>數據庫和<a href="https://vercel.com/">Vercel</a> 服務端後即可進入評論管理後台 <code>https://&lt;你的服務端域名&gt;/ui/</code> 。首次註冊成為管理員，在這裡可以管理評論和用戶。</p>
<h2 id="導出-typecho-評論">
<a class="header-anchor" href="#%e5%b0%8e%e5%87%ba-typecho-%e8%a9%95%e8%ab%96"></a>
導出 Typecho 評論
</h2><p>Typecho 太老了，用戶少，不如 Hexo、Wordpress 等社區活躍，網際網路上資料也很少。<br>
筆者僅找到大佬<a href="https://imnerd.org">怡紅院落</a>寫的一個 Typecho 導出評論到 Valine 的插件 <a href="https://github.com/lizheming/typecho-export-valine">Export2Valine</a>（也是 Waline 文檔中的）。<br>
但上次更新是三年前，經測試已經失效，僅能導入第一條評論。查看導出的 jsonl 文件，顯然評論數據都已經完全導出。</p>
<p>先將該插件安裝到 Typecho （注意更改插件文件夾名稱為 &ldquo;Export2Valine&rdquo; ！）。</p>
<p>參考<a href="https://www.imwxz.com/posts/74f52ab0.html">這一篇</a> Typecho 遷移到 Hexo 的文章，該插件年久失修，需要作一些更改。<br>
找到插件文件夾下的 <code>Action.php</code> ，第 42 行開始改成如下代碼（追蹤父評論）：</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-php" data-lang="php"><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">$arr</span> <span class="o">=</span> <span class="k">array</span><span class="p">(</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;objectId&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;coid&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;QQAvatar&#34;</span> <span class="o">=&gt;</span> <span class="s2">&#34;&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;comment&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;text&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;insertedAt&#34;</span> <span class="o">=&gt;</span> <span class="k">array</span><span class="p">(</span>
</span></span><span class="line"><span class="cl">    <span class="s2">&#34;__type&#34;</span> <span class="o">=&gt;</span> <span class="s2">&#34;Date&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">    <span class="s2">&#34;iso&#34;</span> <span class="o">=&gt;</span> <span class="nv">$time</span>
</span></span><span class="line"><span class="cl">  <span class="p">),</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;createdAt&#34;</span> <span class="o">=&gt;</span> <span class="nv">$time</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;updatedAt&#34;</span> <span class="o">=&gt;</span> <span class="nv">$time</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;ip&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;ip&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;link&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;url&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;mail&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;mail&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;nick&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;author&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;ua&#34;</span> <span class="o">=&gt;</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;agent&#34;</span><span class="p">],</span>
</span></span><span class="line"><span class="cl">  <span class="s2">&#34;url&#34;</span> <span class="o">=&gt;</span> <span class="s2">&#34;/</span><span class="si">{</span><span class="nv">$slug</span><span class="si">}</span><span class="s2">.html&#34;</span>
</span></span><span class="line"><span class="cl"><span class="p">);</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">if</span><span class="p">(</span><span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;parent&#34;</span><span class="p">])</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">  <span class="nv">$arr</span><span class="p">[</span><span class="s2">&#34;pid&#34;</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;parent&#34;</span><span class="p">];</span>
</span></span><span class="line"><span class="cl">  <span class="nv">$arr</span><span class="p">[</span><span class="s2">&#34;rid&#34;</span><span class="p">]</span> <span class="o">=</span> <span class="nv">$this</span><span class="o">-&gt;</span><span class="na">getRootId</span><span class="p">(</span><span class="nv">$comment</span><span class="p">[</span><span class="s2">&#34;coid&#34;</span><span class="p">]);</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></div><p>其他部分不用修改。<br>
接著在 Typecho 後台-控制台-評論導出，打開下載的 jsonl 文件，刪除開頭的 <code>#filetype:JSON-streaming {&quot;type&quot;:&quot;Class&quot;,&quot;class&quot;:&quot;Comment&quot;}\n\n</code> 。<br>
保存後關閉文件，將文件拓展名改為 <code>.json</code> 。</p>
<h2 id="修正-json-格式">
<a class="header-anchor" href="#%e4%bf%ae%e6%ad%a3-json-%e6%a0%bc%e5%bc%8f"></a>
修正 json 格式
</h2><p>導出文件 <code>jsonl</code> 內中文都用轉義，只有一行，看起來一團亂麻。<br>
為轉化成便於閱讀、編輯與導入的 <code>json</code> 格式，我們先利用編輯器的<strong>查找與替換</strong>功能，將 <code>}\n{</code> 替換為</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="err">},</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span>
</span></span></code></pre></div><p>Xcode 的替換，換行符可以點擊左側小放大鏡標選擇插入。</p>
<p>此時每行一個評論對象。</p>
<p>同樣，將各個評論對象內的字段結構分開，將 <code>&quot;,&quot;</code> 替換為</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="s2">&#34;,
</span></span></span><span class="line"><span class="cl"><span class="s2">    &#34;</span>
</span></span></code></pre></div><p>此時，我們可以看出每個評論對象內包含多個數據，形似</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="p">{</span><span class="nt">&#34;objectId&#34;</span><span class="p">:</span><span class="s2">&#34;3&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;QQAvatar&#34;</span><span class="p">:</span><span class="s2">&#34;&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;comment&#34;</span><span class="p">:</span><span class="s2">&#34;\u6d4b\u8bd5\u4e00\u4e0b&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;insertedAt&#34;</span><span class="p">:{</span><span class="nt">&#34;__type&#34;</span><span class="p">:</span><span class="s2">&#34;Date&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;iso&#34;</span><span class="p">:</span><span class="s2">&#34;2023-06-27T09:37:07.000Z&#34;</span><span class="p">},</span><span class="nt">&#34;createdAt&#34;</span><span class="p">:</span><span class="s2">&#34;2023-06-27T09:37:07.000Z&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;updatedAt&#34;</span><span class="p">:</span><span class="s2">&#34;2023-06-27T09:37:07.000Z&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;ip&#34;</span><span class="p">:</span><span class="s2">&#34;223.104.150.16&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;link&#34;</span><span class="p">:</span><span class="err">**</span><span class="kc">null</span><span class="err">**</span><span class="p">,</span><span class="nt">&#34;mail&#34;</span><span class="p">:</span><span class="s2">&#34;2868301418@qq.com&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;nick&#34;</span><span class="p">:</span><span class="s2">&#34;2868301418&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;ua&#34;</span><span class="p">:</span><span class="s2">&#34;Mozilla\/5.0 (Linux; Android 13; V2171A Build\/TP1A.220624.014; wv) AppleWebKit\/537.36 (KHTML, like Gecko) Version\/4.0 Chrome\/109.0.5414.86 MQQBrowser\/6.2 TBS\/046605 Mobile Safari\/537.36 V1_AND_SQ_8.9.63_4190_HDBM_T QQ\/8.9.63.11380 NetType\/4G WebP\/0.3.0 Ap&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;url&#34;</span><span class="p">:</span><span class="s2">&#34;\/\u4ea4\u53cb\u6807\u51c6-\u548c\u5e73\u5171\u5904\u4e94\u9879\u539f\u5219.html&#34;</span><span class="p">}</span><span class="err">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">  <span class="p">{</span><span class="nt">&#34;objectId&#34;</span><span class="p">:</span><span class="s2">&#34;4&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;QQAvatar&#34;</span><span class="p">:</span><span class="s2">&#34;&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;comment&#34;</span><span class="p">:</span><span class="s2">&#34;\u600e\u4e48ip\u4e0d\u5bf9&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;insertedAt&#34;</span><span class="p">:{</span><span class="nt">&#34;__type&#34;</span><span class="p">:</span><span class="s2">&#34;Date&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;iso&#34;</span><span class="p">:</span><span class="s2">&#34;2023-06-27T09:38:15.000Z&#34;</span><span class="p">},</span><span class="nt">&#34;createdAt&#34;</span><span class="p">:</span><span class="s2">&#34;2023-06-27T09:38:15.000Z&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;updatedAt&#34;</span><span class="p">:</span><span class="s2">&#34;2023-06-27T09:38:15.000Z&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;ip&#34;</span><span class="p">:</span><span class="s2">&#34;223.104.150.16&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;link&#34;</span><span class="p">:</span><span class="err">**</span><span class="kc">null</span><span class="err">**</span><span class="p">,</span><span class="nt">&#34;mail&#34;</span><span class="p">:</span><span class="s2">&#34;2868301418@qq.com&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;nick&#34;</span><span class="p">:</span><span class="s2">&#34;2868301418&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;ua&#34;</span><span class="p">:</span><span class="s2">&#34;Mozilla\/5.0 (Linux; Android 13; V2171A Build\/TP1A.220624.014; wv) AppleWebKit\/537.36 (KHTML, like Gecko) Version\/4.0 Chrome\/109.0.5414.86 MQQBrowser\/6.2 TBS\/046605 Mobile Safari\/537.36 V1_AND_SQ_8.9.63_4190_HDBM_T QQ\/8.9.63.11380 NetType\/4G WebP\/0.3.0 Ap&#34;</span><span class="p">,</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="nt">&#34;url&#34;</span><span class="p">:</span><span class="s2">&#34;\/\u4ea4\u53cb\u6807\u51c6-\u548c\u5e73\u5171\u5904\u4e94\u9879\u539f\u5219.html&#34;</span><span class="p">}</span><span class="err">,</span>
</span></span></code></pre></div><h3 id="公共字段說明">
<a class="header-anchor" href="#%e5%85%ac%e5%85%b1%e5%ad%97%e6%ae%b5%e8%aa%aa%e6%98%8e"></a>
公共字段說明
</h3><ol>
<li><strong>objectId</strong>: 評論的唯一標識符（如 &ldquo;4&rdquo; 和 &ldquo;5&rdquo;）</li>
<li><strong>QQAvatar</strong>: QQ頭像鏈接（當前為空字符串）</li>
<li><strong>comment</strong>: 評論內容（包含 Unicode 轉義字符，如 <code>\u600e\u4e48</code> 表示&quot;怎麼&quot;）</li>
<li><strong>insertedAt/createdAt/updatedAt</strong>: 時間戳（ISO 8601 格式）</li>
<li><strong>ip</strong>: 評論者的 IP 地址</li>
<li><strong>link</strong>: 評論者提供的鏈接（可能為 null）</li>
<li><strong>mail</strong>: 評論者的郵箱地址</li>
<li><strong>nick</strong>: 評論者暱稱</li>
<li><strong>ua</strong>: 用戶代理（顯示瀏覽器/設備信息）</li>
<li><strong>url</strong>: 被評論的頁面路徑</li>
</ol>
<h3 id="特殊字段">
<a class="header-anchor" href="#%e7%89%b9%e6%ae%8a%e5%ad%97%e6%ae%b5"></a>
特殊字段
</h3><ol start="11">
<li><strong>pid</strong>: 父評論 ID</li>
<li><strong>rid</strong>: 根評論 ID</li>
</ol>
<p>如果 <code>&quot;link&quot;</code> 值為 <code>null</code> ，則 <code>&quot;link&quot;</code> 與 <code>&quot;mail&quot;</code> 間沒有換行。json 對換行不敏感，所以可以不管。<br>
此時在文件首尾用 <code>[ ]</code> 將內容包裹起來，保存文件。</p>
<h2 id="修改評論屬性">
<a class="header-anchor" href="#%e4%bf%ae%e6%94%b9%e8%a9%95%e8%ab%96%e5%b1%ac%e6%80%a7"></a>
修改評論屬性
</h2><p>此時可以直接導入 LeanCloud 了，但尚有內容可以修改。</p>
<p><code>Export2Valine</code> 將評論關聯文章的 url 設置為 <code>\/slug</code> ，比如 <code>&quot;url&quot;: &quot;\/Summary-of-the-First-Semester-of-Junior-Year.html&quot;</code> ，其中 <code>\/</code> 是轉義 <code>/</code> 。</p>
<p>想要把評論與新部落格的文章聯繫起來，需要手動修改 url 為新部落格的文章鏈接。</p>
<p>以筆者該部落格為例，Hugo 生成的網站根目錄下有 <code>zh-cn,zh-tw,en,ja</code> 四個文件夾（開啟了多語言），中文站的文章在 <code>/zh-cn/post/文章分類/</code> 下。<br>
筆者在本地部落格源文件就將文章按分類放入不同文件夾，比如 <code>/content/post/Thoughts/最近寫的詩.md</code> 生成網頁相對地址為 <code>zh-cn/post/thoughts/最近寫的詩</code> 。</p>
<p>如果你的新部落格文章在根目錄且名稱未更改，那自然不用修改 url。<br>
若都在 <code>/post/</code> 下，可以使用查找與替換將</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="s2">&#34;url&#34;</span><span class="err">:&#34;\/</span>
</span></span></code></pre></div><p>替換為</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="s2">&#34;url&#34;</span><span class="err">:&#34;\/post\/</span>
</span></span></code></pre></div><p>筆者是暫時替換為</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="s2">&#34;url&#34;</span><span class="err">:&#34;\/zh-cn\/post\/</span>
</span></span></code></pre></div><p>同樣，友鏈、說說之類的獨立頁面評論也應修改為新部落格對應頁面相對地址。
比如友鏈頁面</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="s2">&#34;url&#34;</span><span class="err">:&#34;\/links.html</span>
</span></span></code></pre></div><p>替換為</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="s2">&#34;url&#34;</span><span class="err">:&#34;\/zh-cn\/friend\/</span>
</span></span></code></pre></div><p>將 post 和獨立頁面中可以大規模應用<em>查找替換</em>的 url 先替換，否則導入後難以大批量替換。</p>
<p>使用查找與替換時，盡量多包裹共同內容，找「最大公約數」，避免錯誤修改。<br>
<em><strong>注意轉義 <code>\/</code> !!!</strong></em></p>
<h2 id="導入-leancloud">
<a class="header-anchor" href="#%e5%b0%8e%e5%85%a5-leancloud"></a>
導入 LeanCloud
</h2><p>在 LeanCloud 控制台-數據存儲-導入導出，選擇修改好的 json 文件，<code>Class</code> 填寫 <code>Comment</code> ，導入。</p>
<p><em><strong>注意</strong></em>，如果你之前在部落格 Waline 發過測試評論，或曾嘗試過導入 <code>Comment</code>，Waline 會先創建 <code>Comment</code> <code>Class</code> ，再導入就無法成功導入數據（LeanCloud 會提示成功，但沒有新數據導入）。</p>
<p>只能先在控制台-結構化數據，選擇 <code>Comment</code> 並刪除該 <code>Class</code>，再次嘗試導入。LeanCloud 頁面可能不會及時刷新結果，<code>Ctrl+F5</code> 刷新緩存就有了。</p>
<p>導入成功後，再針對每個評論 url 進行單獨設置。<br>
比如筆者的 post 需要一個個歸類到 <code>&quot;url&quot;:&quot;\/zh-cn\/post\/文章分類\/</code> 下，此時善用 LeanCloud <strong>批量操作</strong>和<strong>按條件過濾</strong>功能。</p>
<h2 id="後記">
<a class="header-anchor" href="#%e5%be%8c%e8%a8%98"></a>
後記
</h2><p>評論的整理並沒有耽誤筆者太長時間，120 條評論大部分是筆者自己在說說頁面的自言自語，所以 url 可以批量修正。僅有的十幾條他人評論分佈在寥寥三五個文章中，通過 <code>post</code> 篩選修改起來很快。不知道是好事還是壞事呢（笑）</p>
<p>自言自語也好，他人的留言也好，每一條於筆者都有著非同尋常的意義，隔一段時間回看就會有新的感受。<br>
如最開始所言，這是筆者的成長軌跡，是筆者存活於世的證明，是「我」的一部分。</p>
<p>而你，我親愛的讀者，是你賦予我價值。</p>
<p>有空的話請多多評論吧～筆者真的會開心很久的說（如果評論善意的話）。</p>
        
        <hr><p>本文2025-04-19首發於<a href='https://www.guzhengsvt.cn/'>孤筝の温暖小家</a>，最後修改於2025-04-19</p><p>本部落格所有文章除特別聲明外，均採用 BY-NC-SA 授權協議。轉載請註明出處！</p>]]></description><category>OtherNotes</category></item><item><title>哈囉世界</title><link>https://www.guzhengsvt.cn/zh-tw/post/thoughts/hello-world/</link><pubDate>Sun, 13 Apr 2025 11:00:00 +0800</pubDate><author>lvbowen040427@163.com (孤筝)</author><guid>https://www.guzhengsvt.cn/zh-tw/post/thoughts/hello-world/</guid><description>
<![CDATA[<h1>哈囉世界</h1><p>作者：孤筝（lvbowen040427@163.com）</p>
        
          <h2 id="20250413">
<a class="header-anchor" href="#20250413"></a>
2025.04.13
</h2><p>折騰了兩天終於搭好了Hugo博客，主題是<a href="https://github.com/D-Sketon/hexo-theme-reimu">reimu</a>。</p>
<p>對於原來的<a href="https://guzhengsvt.top/">Typecho博客</a>響應速度不滿意，我計劃再次遷移博客。（儘管Typecho已經很輕量了，垃圾的雲伺服器及頻寬嚴重限制了訪問和文章加載速度。）</p>
<p>放棄動態後，能考慮靜態無非Hexo、Hugo、Jekyll等。選擇Hugo，無非是因為它的口號 <em><strong>The world’s fastest framework for building websites</strong></em> 。</p>
<p>這段時間慢慢把老博客的內容搬到這裡來。找了些Typecho to Hugo的方法，大多年久失修不能用了（Typecho和PHP太老了，這也是我轉向的原因）。還得用笨辦法，一點點把文章導出，再編輯導入Hugo。</p>
<p>評論和說說也得想辦法復刻，Hugo得外掛評論系統。</p>
<p>然後為了加快圖片訪問速度，得整個圖床，再把之前文章的圖片連結替換。</p>
<p>為了不對老博客產生不可逆影響，Hugo目前放在GitHub Pages託管。而GitHub在國內訪問不穩定，等搬完內容完全搭建好了再copy到自己雲虛擬主機。</p>
<p>怎麼這麼多事啊woc</p>
<h2 id="test">
<a class="header-anchor" href="#test"></a>
Test
</h2><p>測試一下新博客。</p>
<p>markdown</p>
<h2 id="二級標題">
<a class="header-anchor" href="#%e4%ba%8c%e7%b4%9a%e6%a8%99%e9%a1%8c"></a>
二級標題
</h2><h3 id="三級標題">
<a class="header-anchor" href="#%e4%b8%89%e7%b4%9a%e6%a8%99%e9%a1%8c"></a>
三級標題
</h3><h4 id="四級標題">
<a class="header-anchor" href="#%e5%9b%9b%e7%b4%9a%e6%a8%99%e9%a1%8c"></a>
四級標題
</h4><h5 id="五級標題">
<a class="header-anchor" href="#%e4%ba%94%e7%b4%9a%e6%a8%99%e9%a1%8c"></a>
五級標題
</h5><h6 id="六級標題">
<a class="header-anchor" href="#%e5%85%ad%e7%b4%9a%e6%a8%99%e9%a1%8c"></a>
六級標題
</h6><ol>
<li>
<p>分條</p>
</li>
<li>
<p>分條</p>
</li>
</ol>
<ul>
<li>分條</li>
</ul>
<p><del>刪除線</del></p>
<p><strong>加粗</strong></p>
<p><em>斜體</em></p>
<p>KaTex test</p>
<p>$\frac{1}{2}$</p>
$$
\frac{520}{1314}
$$<p>code test</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s2">&#34;hello world&#34;</span><span class="p">)</span>
</span></span></code></pre></div><p>icon: <!-- raw HTML omitted --><!-- raw HTML omitted --> 一杯咖啡</p>

        
        <hr><p>本文2025-04-13首發於<a href='https://www.guzhengsvt.cn/'>孤筝の温暖小家</a>，最後修改於2025-04-13</p><p>本部落格所有文章除特別聲明外，均採用 BY-NC-SA 授權協議。轉載請註明出處！</p>]]></description><category>Thoughts</category></item><item><title>部落格建置總結(Hexo+Github版）</title><link>https://www.guzhengsvt.cn/zh-tw/post/thoughts/blog%E5%BB%BA%E6%88%90%E6%80%BB%E7%BB%93hexo+github%E7%89%88/</link><pubDate>Sat, 10 Sep 2022 09:30:52 +0800</pubDate><author>lvbowen040427@163.com (孤筝)</author><guid>https://www.guzhengsvt.cn/zh-tw/post/thoughts/blog%E5%BB%BA%E6%88%90%E6%80%BB%E7%BB%93hexo+github%E7%89%88/</guid><description>
<![CDATA[<h1>部落格建置總結(Hexo+Github版）</h1><p>作者：孤筝（lvbowen040427@163.com）</p>
        
          <p><strong>早期建站記錄，已失效，僅作紀念</strong></p>
<p><a href="https://guzhengsvt.github.io">https://guzhengsvt.github.io</a></p>
<p>基於GitHub+Hexo搭建的個人部落格，目前已完成主要功能的施工。</p>
<p>經過兩天的高強度爆肝，我終於實現了兩年來的夢想——做一個屬於自己的個人網站（部落格）。在這個人云亦云、萬馬齊喑的喧鬧時代，這也算是一片互聯網自留地吧。</p>
<p>做Blog的企劃，是兩年前網絡衝浪找資源時因發現許多大佬做的精美部落格萌生的。前期基本是在黑暗裡摸索，啥也不會，英語也poor，沒錢買域名和伺服器。高三因為學業，暫停了一年，我在阿里雲買的域名都過期了。</p>
<p>感謝一路上幫助過我的人/平台/公司/社群。</p>
<p>以下是致謝名單（排名不分先後）：</p>
<p>特別感謝中科大大佬幫我找出多終端情況下只有Git Bush能穩定控制運行的問題；</p>
<p>感謝GitHub提供的開源平台；</p>
<p>感謝GitHub和三豐雲提供的免費伺服器；</p>
<p>感謝Fuukei Sakurairo和NexT提供的主題支持；</p>
<p>感謝mukes提供的Git安裝教程（https://blog.csdn.net/mukes）；</p>
<p>感謝何欣提供的Hexo環境搭建教程（https://www.simon96.online/）；</p>
<p>感謝蝸牛非牛提供的Next主題美化方法（https://blog.csdn.net/qq_34003239?type=blog）；</p>
<p>感謝siriyang提供的Git學習筆記（https://blog.siriyang.cn/）；</p>
<p>感謝ookamiAntD提供的基於Hexo+Github+Coding搭建個人部落格的基礎教程（https://yangbingdong.com/）；</p>
<p>感謝reuixiy提供的Hexo + NexT + GitHub Pages超深度優化教程（https://io-oi.me/）。</p>
<p>有些參考資料已無法找到作者，或者作者的部落格因各種原因關閉，無法一一列出，萬分抱歉。</p>
<p>歡迎大家收藏和宣傳我的blog，以後會不定期更新包括但不限於以下內容：</p>
<p>Blog的功能完善</p>
<p>個人的一點碎碎念/發病</p>
<p>各種正經的不正經的學習資料</p>
<p>技術向攻略</p>
<p>以前寫的詩歌和文章</p>
<p>最後，祝大家中秋節快樂，祝老師們和即將成為老師的同學們教師節快樂。</p>
<p>以上</p>
<p>2022年9月10日星期六</p>
        
        <hr><p>本文2022-09-10首發於<a href='https://www.guzhengsvt.cn/'>孤筝の温暖小家</a>，最後修改於2022-09-10</p><p>本部落格所有文章除特別聲明外，均採用 BY-NC-SA 授權協議。轉載請註明出處！</p>]]></description><category>Thoughts</category></item></channel></rss>