amptwitter.inc.php

サマリ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スクリプトの問題です)

ver1.1

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;
}
?>

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2023-11-21 (火) 23:42:13
Site admin: PukiWiki Development Team

PukiWiki 1.5.4+ © 2001-2022 PukiWiki Development Team. Powered by PHP 8.2.12. HTML convert time: 0.224 sec.

SourceForge