Flickr圖床造成 Instant Article 解析錯誤

前陣子發現升級到 Instant Article for WP Plugin v.3.1.2 後,如果文章中有引用 Flickr 的圖,像是這一張

鼻子也要吃蛋糕!

<a data-flickr-embed="true"  href="https://www.flickr.com/photos/pipperl/29228216643/in/dateposted-public/" title="鼻子也要吃蛋糕!"><img src="https://c4.staticflickr.com/9/8434/29228216643_e96d535a3a_c.jpg" width="800″ height="534″ alt="鼻子也要吃蛋糕!"></a><script async src="//embedr.flickr.com/assets/client-code.js" charset="utf-8″></script>

在轉成 Instant Article 的過程中會出現錯誤,並且出現在文章編輯頁面的 Facebook Instant Article 區塊中:

  • No rules defined for <img> in the context of Anchor
  • No rules defined for <script> in the context of Paragraph

2016-09-22_214349

不解決的話,Instant Article / 即時文章雖然可以上架,但是圖片會不見。

在網路上找了一下,順便讀了 Facebook transformer rule,有了點心得。把以下的Code 加入 Custom transformer rules,就可以正常了。

{“rules": [
{
“class": “PassThroughRule",
“selector" : “script"
},
{
“class": “PassThroughRule",
“selector": “//a[descendant::img]"
}
]}

不過這樣轉出來的code其實只有圖片沒有回 Flickr的連結,不符合 Flickr外連規定。不知道會不會因為這樣被Flickr禁掉 XD。

flickr 外連規定:

  • 當你在 Flickr 之外使用 Flickr 內容時,請提供連回 Flickr 的連結。
    你可以在其他網站上張貼存放在 Flickr 的內容。在外站使用存放於 Flickr.com 的內容時,所有 Flickr 相片和影片都必須附有連回原 Flickr 相片或影片頁面的連結,以便讓網友查閱內容與創作者的詳細資訊。

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *

%d 位部落客按了讚: