サマリ | AMP-Twitterに対応するプラグイン |
---|---|
リビジョン | 1.1 |
対応バージョン | 1.4.7 |
投稿者 | m0370 |
投稿日 | 2020-04-28 (火) 07:51:28 |
PukiwikiをAMP化するとtweet_inc.inc.phpを使うとAMPエラーが出るので、AMP-twitterスクリプトに対応するツイート引用プラグインを作成しました。
これを使うにはヘッダーでAMP-twitterのスクリプトをインクルードしておくことが必要です(pukiwiki.skin.phpのHTMLコードに直打ちが必要)。
#amptwitter(1254597997008060416)
#amptwitter(1254597997008060416,responsive,400,400)
ツイートを引用したい場合は第1引数をツイートIDにします。第2引数にレイアウトを選択できるようにする予定ですが、AMP公式のAMP-twitterスクリプトの仕様自体が未完成でサイズ指定が効かないので、現時点ではサイズ設定には対応していません。(これはこのプラグインの問題というよりは、本家のAMP-Twitterスクリプトの問題です)
layout, width, heightの設定に対応しました。
下記のスクリプトをテキストファイルに貼りつけて、ファイル名をamptwitter.inc.phpとしてpluginのフォルダにアップロードします。
<?php // 'amptwitter' plugin for PukiWiki ver.1.1 // author: m0370 // Twitter: @m0370 // ver1.0 (2020.4.27) // ひとまずAMP-twitterのタグを出力する機能を実装しました。 // ver1.1 (2020.4.28) // layout, width, heightの設定に対応しました。 function plugin_amptwitter_convert() { $amptw = func_get_args(); $tweetid = $amptw[0]; if ($amptw[1] == 'fill' || $amptw[1] == 'fixed' || $amptw[1] == 'fixed-height' || $amptw[1] == 'flex-item' || $amptw[1] == 'nodisplay') { $layout = $amptw[1]; } else { $layout = 'responsive'; } if(is_numeric($amptw[2])) { $width = $amptw[2]; } else { $width = 400; } if(is_numeric($amptw[3])) { $height = $amptw[3]; } else { $height = 400; } return <<<EOD <amp-twitter data-tweetid="$tweetid" width="$width" height="$height" layout="$layout"> </amp-twitter> EOD; } ?>