cssfilter.inc.php †
名称 | CSS加工フィルタープラグイン |
---|---|
ファイル | cssfilter.inc.php |
バージョン | 1.00 |
対象サーバー | PukiWiki 1.5.3 / PHP 7.4 / UTF-8 |
対象ブラウザー | Firefox, Chrome, Safari, Edge 各最新版 |
ライセンス | GPLv3 |
CSSファイルを加工し、そのURLを返すPukiWiki用プラグイン。
現バージョンでは、レガシーブラウザー向けにCSSカスタムプロパティーのポリフィルを施す機能のみ実装されています。
加工したCSSファイルはキャッシュディレクトリにキャッシュされます。
インストール †
cssfilter.inc.phpをPukiWikiのpluginディレクトリに配置してください。
使い方 †
#cssfilter(cssFile)
- cssFile … 加工するCSSファイルのパス(skinディレクトリからの相対パス)
使用例 †
<link rel="stylesheet" type="text/css" href="<?php echo (exist_plugin_convert('cssfilter'))? do_plugin_convert('cssfilter', 'mystyle.css') : SKIN_DIR . 'pukiwiki.css'; ?>" />
設定 †
コード内の下記の定数で動作を制御することができます。
定数名 | 値 | 既定値 | 意味 |
---|---|---|---|
PLUGIN_CSSFILTER_FALLBACKCSS | 文字列 | 'pukiwiki.css' | フォールバックCSSファイル名(スキンディレクトリ内に存在すること) |
PLUGIN_CSSFILTER_VARIABLES_POLYFILL | 0 or 1 | 1 | CSSカスタムプロパティーポリフィル機能有効 |
PLUGIN_CSSFILTER_CACHE_MAX_AGE | 数値 | (7 * 24 * 60 * 60) | クライアントキャッシュ時間(秒)。0なら無指定。実際にキャッシュが効くかどうかは環境による |
謝辞 †
CSSカスタムプロパティーのポリフィル処理は、『CSSカスタムプロパティ(CSS variables)のIE11対応polyfill作ってみた』(©やぶみの開発メモ, 2020年2月16日版)のJavaScriptコードをPHPに移植したものです。
default.ini.phpへの設定 †
本プラグインの定数設定(ファイル内の下記のような行)は、PukiWikiルートディレクトリにある標準設定ファイルdefault.ini.phpにも記述することができます。本プラグインの定数設定行をdefault.ini.phpの末尾にそのままコピーしてください。default.ini.php側の設定値が優先されます。
///////////////////////////////////////////////// // ○○プラグイン設定(○○.inc.php) if (!defined('PLUGIN_○○_×××)) define('PLUGIN_○○_×××', △);
設定をdefault.ini.phpに記述することで、プラグインをアップデート(ファイル上書き)するたびに値を書き直す必要がなくなります。また、設定がdefault.ini.phpに集中することで、運用中の設定管理も楽になります。
凡例 †
プラグインの引数は下記の書式で表現しています。
- [] … 省略でき必要に応じて記述します
- | … |で区切られた項目のうち1つを記述します
- {} … 中カッコ内の引数は任意の順序で記述できます