私は以下を使用しました:
<script type="text/discourse-plugin" version="0.8">
api.onPageChange((url, title) => {
var res = url.match(/\/t\/(.*?)\/(\w+)/);
if (res && res[2] > 0) {
var amp = 'domain/amp/t/'+res[2];
if (document.getElementById("amphtml")) document.getElementById("amphtml").href = amp;
else{
var link=document.createElement('link');
link.id='amphtml';
link.rel='amphtml';
link.href=amp;
document.getElementsByTagName('head')[0].appendChild(link);
}
}
});
</script>
しかし、ソースを表示しても表示されず、JavaScript が実行されたときのみ表示されます。
では、最初からレンダリングするにはどうすればよいでしょうか?
2020-03-13
Sitemap に <xhtml:link rel="amphtml" href="" /> を追加して変更を試みました。
デモ: GitHub - bcat95/discourse-sitemap: Generate XML sitemap for your Discourse forum. · GitHub
2020-03-14
成功しました。Google が AMP ページのインデックス作成を開始しています