起因 link h2
這個網站在架設之初就確定要有多語言支持,所以打從一開始就挑了最難的多語言 Bundle 模式去開發
然後馬上就遇到問題了
Bundle 雖然具有共用資源,但似乎不是那麼好處理
(我在猜可能是跟使用的基底 Theme 也有關係,下述)
總之問題就是,在非主語言的站點會找不到共用的資源圖片。

調查 link h2
問題點是因為 Hugo 並不會自動把共用資源複製到每一個語言站點
這就讓我很納悶
Hugo 確實可以正確轉換 URL,但卻不會去複製共用資料
聽起來就很像某種 Bug 對吧?
處理 link h2
我當下就立刻就去論壇翻,畢竟這對我來說是非常重大的影響。
但好死不死我所選用的 Bundle + 多語言似乎是最少人開發的
資料少的可憐
直到我到這個
To resolve Markdown link and image destinations to the correct location, you must use link and image render hooks that capture the page resource with the Resources.Get method, and then invoke its RelPermalink method.
簡單的意思就是說,如果要獲取該圖片,必須使用 Resources.Get 搭配 RelPermalink 來獲取主語言位置的圖片
並且這能力似乎預設的 Hugo 就有 (我在寫這篇日誌的時候重新讀了下才發現的…)
所以上面才說可能跟所用的 Theme 有關係
诶?那要怎麼處理呢?
到這一步我真的是實打實的吃了語言太差的虧
上面那一段截錄的後半段就有寫處理方法
但當時我用了翻譯,而那個 render hooks 被翻譯成了 渲染鈎
而且也沒有直連 Link,所以就直接被我忽略掉了。
總之最後就是我自己寫了一個新的 Image render hooks
這才完整解決
真的要笑死,寫程式結果吃了非程式語言的虧。