テンプレートの一部として、次の Facebook iframe があります。
<iframe allowTransparency='true' expr:src='"http://www.facebook.com/plugins/like.php?href=" + data:post.url + "&layout=standard&show_faces=false&width=100&action=like&font=arial&colorscheme=light"' frameborder='0' scrolling='no' style='border:none; overflow:hidden; width:576px; height:24px;'/>
data:post.url
主な機能は、ユーザーが「いいね」できるリンクとしてBlogspot 変数を使用することです。残念ながら、最近 blogspot は人々をローカルの blospot アドレスにリダイレクトすることを決定したためexample.blogspot.com
、英国で開くと にリダイレクトされexample.blogspot.co.uk
、島の外からの人々のようなものを見ることはできません.
明白な修正は、誰もがメインの .com ページを好むようにすることです。そのため、この iframe を動的に生成するスクリプトを作成しました。
<script type="text/javascript">
document.write("<iframe allowTransparency='true' frameborder='0' scrolling='no' src='http://www.facebook.com/plugins/like.php?href=");
var thisUrl = "data:post.url";
var beginning = thisUrl.indexOf("blogspot")+9;
var end = thisUrl.indexOf("/", 15);
document.write(thisUrl.substring(0, beginning));
document.write("com");//change regional url to com
document.write(thisUrl.substring(end));
document.write("&layout=standard&show_faces=false&width=100&action=like&font=arial&colorscheme=light' style='border:none; overflow:hidden; width:576px; height:24px;'></iframe>");
</script>
Blogspot がそれを受け入れられるようにするには、その一部を html-ecape する必要がありましたが、変数data:post.url
を正しい値に置き換えることができません。文字通りそのままです。