レ点腫瘍学ノート

pukiwikiカスタマイズ箇所/自作プラグイン/amptwitter.inc.php の履歴ソース(No.1)

#author("2020-04-28T08:01:42+09:00;1970-01-01T18:00:00+09:00","default:tgoto","tgoto")
*AMP-Twitterプラグイン

PukiwikiをAMP化するとtweet_inc.inc.phpを使うとAMPエラーが出るので、AMP-twitterスクリプトに対応するツイート引用プラグインを作成しました。

*使い方

**事前準備

これを使うにはヘッダーでAMP-twitterのスクリプトをインクルードしておくことが必要です(pukiwiki.skin.phpのHTMLコードに直打ちが必要)。

> <script async custom-element="amp-twitter" src="https://cdn.ampproject.org/v0/amp-twitter-0.1.js"></script>

ツイートを引用したい場合は第1引数をツイートIDにします。第2引数にレイアウトを選択できるようにする予定ですが、AMP公式のAMP-twitterスクリプトの仕様自体が未完成でlayoutやサイズ指定が効かないので、現時点ではresponsive表示にしか対応していません。(これはこのプラグインの問題というよりは、本家のAMP-Twitterスクリプトの問題です)

#ogp(https://amp.dev/documentation/components/amp-twitter/,amp)

* スクリプト

下記のスクリプトをテキストファイルに貼りつけて、ファイル名をamptwitter.inc.phpとしてpluginのフォルダにアップロードします。

> <?php
> 
> // 'amptwitter' plugin for PukiWiki ver.0.9
> // author: m0370
> // Twitter: @m0370
> 
> // ver1.0 (2019.9.10)
> // ひとまずAMP-twitterのタグを出力する機能を実装しました。
> 
>  function plugin_amptwitter_convert()
> {
>  $amptw = func_get_args();
>  $tweetid = $amptw[0];
>  $layoutarray = array('fill','fixed','fixed-height','flex-item','nodisplay');
>  $amptwl = in_array($apmtw[1], $layoutarray);
>  if ($amptwl){
>     $layout = $amptw[1]; 
> } else{
>     $layout = "responsive";
> }
>  return <<<EOD
>  <amp-twitter
> 	data-tweetid="$tweetid"
> 	width="800"
> 	height="600"
> 	layout="$layout">
>  </amp-twitter>
>  EOD;
> }
> ?>