PukiWiki/MapWiki/Plugin
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#contentsx();
*外部から取り込んだプラグイン [#r1f92961]
名前のアルファベット順
** calc [#s252a442]
計算式を評価してその値を表す数字に置き換えるプラグイン
[[PukiWiki/1.4/自作プラグイン/calcプラグイン - PukiWiki-D...
** contentsx [#adde3069]
見出しをもとに目次を作る標準機能(contents)の機能拡張版
[[Plugin/contentsx.inc.php - Sonots' PukiWiki プラグイン>...
** description / keywords [#s1193425]
ページ概要およびキーワードに関するmetaタグを生成するプラ...
[[自作プラグイン/description.inc.php - PukiWiki-official>...
ただ、有効性はもうあまりないかも
** htmlinsert [#s68d426b]
ファイル(および :HTML/ の接頭辞がつくページ)の内容をそ...
[[Plugin/htmlinsert.inc.php - Sonots' PukiWiki プラグイン...
** lightbox [#z3ba61ef]
[[Lightbox2>http://lokeshdhakar.com/projects/lightbox2/]]...
プラグインとしては以下の形式でHTMLを出力させる。あとはLig...
<a href="fullsize.png" data-lightbox="title" title="titl...
<img src="thumbnail.png" width="180" height="180" />
</a>
** null [#j0f53502]
囲んだ範囲(複数行可)を非表示にするプラグイン。実質的に...
[[自作プラグイン/null.inc.php - PukiWiki-official>pukiwik...
** recaptcha3 [#v014306b]
[[Google reCAPTCHA v3>https://www.google.com/recaptcha/]]...
[[自作プラグイン/recaptcha3.inc.php - PukiWiki-official>p...
配布元に明記されていない注意事項
-ローカルマシンに置いて動作確認する場合は、[[適用ドメイン...
-cURLを使ってHTTPリクエストを飛ばすため、php-curlが利用で...
** secedit [#v478d6b8]
見出しおよびその下位にある内容について部分的に編集ができ...
[[見出し編集を可能にするPukiWikiプラグイン "secedit....
配布元に明記されていない注意事項
-PHP7では、[[新しいオブジェクトを参照渡しで代入できない>h...
$obj = & new $action();
* 改造もしくは自作したプラグイン [#lab7b8d8]
** countdownex [#b83c6952]
現在時刻とリアルタイムで比較した残り日数(もしくは時間)...
オンラインゲームの時限イベントに対する活用を意図して、開...
&countdownex(開始時刻,終了時刻);
※時刻は [ YYYY/mm/dd HH24:MM ]で指定(PHPが解釈できればよ...
-開始時刻前: 「開始まであと○日」と表示
-期間中: 24時間未満切り捨てで「あと○日」と表示
--終了時刻まで24時間を切ると、1時間未満切り捨てで「''あと...
--終了時刻まで1時間を切ると、1分未満切り捨てで「''あと○分...
-終了時刻後: 「終了しました」と表示
#fold{{{
plugin/countdownex.inc.php
<?php
function plugin_countdownex_inline() {
$SECONDS_OF_MINUTE = 60;
$SECONDS_OF_HOUR = 60 * $SECONDS_OF_MINUTE;
$SECONDS_OF_DAY = 24 * $SECONDS_OF_HOUR;
$PRESET_TZ = date_default_timezone_get();
list($start_str, $end_str) = func_get_args();
date_default_timezone_set('Asia/Tokyo');
$now = time();
$start = strtotime($start_str);
$end = strtotime($end_str);
date_default_timezone_set($PRESET_TZ);
if ($now < $start) {
// 開始前
$rest = $start - $now;
$format = '開始まで<br/>あと%1$d日';
return sprintf($format, ceil($rest / $SECONDS_OF...
} else if ($now >= $end) {
// 終了後
return '終了しました';
} else {
// 期間中
$rest = $end - $now;
if ($rest >= $SECONDS_OF_DAY) {
// 終了時刻まで24時間以上
$format = 'あと%1$d日';
return sprintf($format, $rest / $SECONDS_OF_...
} else if ($rest >= $SECONDS_OF_HOUR) {
// 終了時刻まで1時間以上
$format = '<strong class="countdownex">あと%...
return sprintf($format, $rest / $SECONDS_OF_...
} else {
// 終了時刻まで1時間未満
$format = '<strong class="countdownex">あと%...
return sprintf($format, $rest / $SECONDS_OF_...
}
}
}
}}}
** fletbox [#h62c42cb]
div を横方向に複数個並べることを実現するプラグイン
[[縦方向の高さを意識しなければならないfloatはもはや不便>h...
#flexbox(start);
AAA
#flexbox(continue,marginleft:0.5em);
BBB
#flexbox(end);
このプラグイン呼び出しを含んだ記述で以下のHTMLを出力する
<div class="flexbox" style="display: flex; align-items: ...
<div>
AAA
</div>
<div style="margin-left: 0.5em;">
BBB
</div>
</div>
#fold{{{
plugin/flexbox.inc.php
<?php
function plugin_flexbox_convert() {
# 初期設定値
$params = array(
'start' => false,
'continue' => false,
'end' => false,
'display' => 'flex',
'alignitems' => 'flex-start',
'marginleft' => '0.5em'
);
# 引数解析
$args = func_get_args();
foreach ($args as $value) {
if (preg_match("/^ *([a-zA-Z0-9_]+) *$/i", $valu...
$params[strtolower($matches[1])] = true;
} else if (preg_match("/^ *([a-zA-Z0-9_]+):([a-z...
$params[strtolower($matches[1])] = $matches[...
}
}
# HTML生成
if ($params['start']) {
return '<div class="flexbox" style="display: fle...
. 'align-items: ' . $params['alignitems'] . ...
. '<div>';
} else if ($params['continue']) {
if ($params['marginleft'] == '') {
return '</div><div>';
} else {
return '</div><div style="margin-left: ' . $...
}
} else if ($params['end']) {
return '</div></div>';
}
}
?>
}}}
終了行:
#contentsx();
*外部から取り込んだプラグイン [#r1f92961]
名前のアルファベット順
** calc [#s252a442]
計算式を評価してその値を表す数字に置き換えるプラグイン
[[PukiWiki/1.4/自作プラグイン/calcプラグイン - PukiWiki-D...
** contentsx [#adde3069]
見出しをもとに目次を作る標準機能(contents)の機能拡張版
[[Plugin/contentsx.inc.php - Sonots' PukiWiki プラグイン>...
** description / keywords [#s1193425]
ページ概要およびキーワードに関するmetaタグを生成するプラ...
[[自作プラグイン/description.inc.php - PukiWiki-official>...
ただ、有効性はもうあまりないかも
** htmlinsert [#s68d426b]
ファイル(および :HTML/ の接頭辞がつくページ)の内容をそ...
[[Plugin/htmlinsert.inc.php - Sonots' PukiWiki プラグイン...
** lightbox [#z3ba61ef]
[[Lightbox2>http://lokeshdhakar.com/projects/lightbox2/]]...
プラグインとしては以下の形式でHTMLを出力させる。あとはLig...
<a href="fullsize.png" data-lightbox="title" title="titl...
<img src="thumbnail.png" width="180" height="180" />
</a>
** null [#j0f53502]
囲んだ範囲(複数行可)を非表示にするプラグイン。実質的に...
[[自作プラグイン/null.inc.php - PukiWiki-official>pukiwik...
** recaptcha3 [#v014306b]
[[Google reCAPTCHA v3>https://www.google.com/recaptcha/]]...
[[自作プラグイン/recaptcha3.inc.php - PukiWiki-official>p...
配布元に明記されていない注意事項
-ローカルマシンに置いて動作確認する場合は、[[適用ドメイン...
-cURLを使ってHTTPリクエストを飛ばすため、php-curlが利用で...
** secedit [#v478d6b8]
見出しおよびその下位にある内容について部分的に編集ができ...
[[見出し編集を可能にするPukiWikiプラグイン "secedit....
配布元に明記されていない注意事項
-PHP7では、[[新しいオブジェクトを参照渡しで代入できない>h...
$obj = & new $action();
* 改造もしくは自作したプラグイン [#lab7b8d8]
** countdownex [#b83c6952]
現在時刻とリアルタイムで比較した残り日数(もしくは時間)...
オンラインゲームの時限イベントに対する活用を意図して、開...
&countdownex(開始時刻,終了時刻);
※時刻は [ YYYY/mm/dd HH24:MM ]で指定(PHPが解釈できればよ...
-開始時刻前: 「開始まであと○日」と表示
-期間中: 24時間未満切り捨てで「あと○日」と表示
--終了時刻まで24時間を切ると、1時間未満切り捨てで「''あと...
--終了時刻まで1時間を切ると、1分未満切り捨てで「''あと○分...
-終了時刻後: 「終了しました」と表示
#fold{{{
plugin/countdownex.inc.php
<?php
function plugin_countdownex_inline() {
$SECONDS_OF_MINUTE = 60;
$SECONDS_OF_HOUR = 60 * $SECONDS_OF_MINUTE;
$SECONDS_OF_DAY = 24 * $SECONDS_OF_HOUR;
$PRESET_TZ = date_default_timezone_get();
list($start_str, $end_str) = func_get_args();
date_default_timezone_set('Asia/Tokyo');
$now = time();
$start = strtotime($start_str);
$end = strtotime($end_str);
date_default_timezone_set($PRESET_TZ);
if ($now < $start) {
// 開始前
$rest = $start - $now;
$format = '開始まで<br/>あと%1$d日';
return sprintf($format, ceil($rest / $SECONDS_OF...
} else if ($now >= $end) {
// 終了後
return '終了しました';
} else {
// 期間中
$rest = $end - $now;
if ($rest >= $SECONDS_OF_DAY) {
// 終了時刻まで24時間以上
$format = 'あと%1$d日';
return sprintf($format, $rest / $SECONDS_OF_...
} else if ($rest >= $SECONDS_OF_HOUR) {
// 終了時刻まで1時間以上
$format = '<strong class="countdownex">あと%...
return sprintf($format, $rest / $SECONDS_OF_...
} else {
// 終了時刻まで1時間未満
$format = '<strong class="countdownex">あと%...
return sprintf($format, $rest / $SECONDS_OF_...
}
}
}
}}}
** fletbox [#h62c42cb]
div を横方向に複数個並べることを実現するプラグイン
[[縦方向の高さを意識しなければならないfloatはもはや不便>h...
#flexbox(start);
AAA
#flexbox(continue,marginleft:0.5em);
BBB
#flexbox(end);
このプラグイン呼び出しを含んだ記述で以下のHTMLを出力する
<div class="flexbox" style="display: flex; align-items: ...
<div>
AAA
</div>
<div style="margin-left: 0.5em;">
BBB
</div>
</div>
#fold{{{
plugin/flexbox.inc.php
<?php
function plugin_flexbox_convert() {
# 初期設定値
$params = array(
'start' => false,
'continue' => false,
'end' => false,
'display' => 'flex',
'alignitems' => 'flex-start',
'marginleft' => '0.5em'
);
# 引数解析
$args = func_get_args();
foreach ($args as $value) {
if (preg_match("/^ *([a-zA-Z0-9_]+) *$/i", $valu...
$params[strtolower($matches[1])] = true;
} else if (preg_match("/^ *([a-zA-Z0-9_]+):([a-z...
$params[strtolower($matches[1])] = $matches[...
}
}
# HTML生成
if ($params['start']) {
return '<div class="flexbox" style="display: fle...
. 'align-items: ' . $params['alignitems'] . ...
. '<div>';
} else if ($params['continue']) {
if ($params['marginleft'] == '') {
return '</div><div>';
} else {
return '</div><div style="margin-left: ' . $...
}
} else if ($params['end']) {
return '</div></div>';
}
}
?>
}}}
ページ名: