Pitan's PukiWiki
PukiWiki管理者の、管理者による、管理者のためのサイト
≡
検索
AND検索
OR検索
↑
最新のページ
2023-11-22
PukiWikiの公式サイトのドメインが変わったので当ブログの旧PukiWikiリンクを置き換えた
2023-10-26
私がつくった無料Wikiレンタルサービス「WikiChree.COM」について紹介
2023-10-08
PukiWikiスキン「MaterialPukiWiki」
PukiWikiスキン「Monobook」
PukiWikiスキン「イカスキン」
[
もっと見る
]
↑
タグ
PukiWiki
スキン
プラグイン
自作
解説
[
もっと見る
]
↑
人気のページ
FrontPage
(3546)
PukiWikiのスキンって何?入れ方まで解説
(775)
更新ページ一覧
(607)
PukiWikiスキン「Cleaskin」
(363)
PukiWikiでCKEditorを利用してGUI編集ができるプラグインを作った
(361)
↑
カウンター
合計:
0
今日:
0
昨日:
0
オンライン:
3
トップ
リンク
お問い合わせ
ポリシー
blog/2023-10-03 をテンプレートにして作成
開始行:
* PukiWikiの新機能「URLカスタマイズ機構」を導入 [#w708d3ec]
&tag(PukiWiki,URLカスタマイズ機構);
#bcontents
PukiWiki 1.5.4の新機能であるURLカスタマイズ機構を導入して...
こちらを参考にして導入する。
#blink(https://pukiwiki.sourceforge.io/dev/?BugTrack/2525)
私は/?xxxxxxxxxxという形にしたかったので、上記ページの「(...
このURLカスタマイズ機構は他にもまるで静的サイトのように見...
1.5.4からURLカスタマイズ機構はPukiWiki標準機能となってい...
#blink(https://pukiwiki.sourceforge.io/?自作プラグイン/s....
[[URL短縮プラグインのGitHubページ>https://github.com/umor...
ちなみに私はskin/pukiwiki.skin.php の変更はしていないので...
''shortener/''と''shortener_counter/''、2つのフォルダを作...
設定値は以下のようにした。
define('PLUGIN_S_VIRTUAL_QUERY_PREFIX', '?');
define('PLUGIN_S_PAGENAME_MININUM_LENGTH', 1);
PLUGIN_S_PAGENAME_MININUM_LENGTHを変更した理由はすべての...
''pukiwiki.ini.php''の以下の行を[[BugTrack/2525>https://p...
/////////////////////////////////////////////////
// Page-URI mapping handler ( See https://pukiwiki.sourc...
だが、これだと(8)の優先利用カスタマイズは使えないので以下...
(9) のカスタマイズにリダイレクトさせる機能も付け加えた。
#gcode(php){{
/////////////////////////////////////////////////
// Page-URI mapping handler ( See https://pukiwiki.source...
class ShortUrl2PageURIHandler extends PukiWikiStandardPag...
function get_page_uri_virtual_query($page) {
exist_plugin('s'); // Load s.inc.php
$page_id = plugin_s_get_page_id($page);
if ($page_id) {
return '?' . $page_id;
}
return '?' . pagename_urlencode($page);
}
function get_page_from_query_string($query_string) {
exist_plugin('s'); // Load s.inc.php
$m = array();
if (preg_match('#^([0-9a-z]{10})$#', $query_string, $m)...
$page = plugin_s_get_page_from_page_id($m[1]);
if ($page) {
return $page;
} else {
// Not found
http_response_code(404);
die_message('Not found');
exit;
}
}
$is_get = $_SERVER['REQUEST_METHOD'] === 'GET';
if ($is_get) {
if (!preg_match('#^([0-9a-z]{10})$#', $query_string, $m)
) {
$dec_page = urldecode($query_string);
$page_id = plugin_s_get_page_id($dec_page);
if ($page_id) {
$short_url = get_page_uri($dec_page, PKWK_URI_ROOT);
header("HTTP/1.1 302 Found");
header("Location: $short_url");
exit;
}
}
}
return parent::get_page_from_query_string($query_string);
}
}
$page_uri_handler = new ShortUrl2PageURIHandler();
}}
これで「/?xxxxxxxxxx」の短縮の形のURLとなり、エンコードさ...
** コメント [#o1e3d33e]
#pctrlcmt
終了行:
* PukiWikiの新機能「URLカスタマイズ機構」を導入 [#w708d3ec]
&tag(PukiWiki,URLカスタマイズ機構);
#bcontents
PukiWiki 1.5.4の新機能であるURLカスタマイズ機構を導入して...
こちらを参考にして導入する。
#blink(https://pukiwiki.sourceforge.io/dev/?BugTrack/2525)
私は/?xxxxxxxxxxという形にしたかったので、上記ページの「(...
このURLカスタマイズ機構は他にもまるで静的サイトのように見...
1.5.4からURLカスタマイズ機構はPukiWiki標準機能となってい...
#blink(https://pukiwiki.sourceforge.io/?自作プラグイン/s....
[[URL短縮プラグインのGitHubページ>https://github.com/umor...
ちなみに私はskin/pukiwiki.skin.php の変更はしていないので...
''shortener/''と''shortener_counter/''、2つのフォルダを作...
設定値は以下のようにした。
define('PLUGIN_S_VIRTUAL_QUERY_PREFIX', '?');
define('PLUGIN_S_PAGENAME_MININUM_LENGTH', 1);
PLUGIN_S_PAGENAME_MININUM_LENGTHを変更した理由はすべての...
''pukiwiki.ini.php''の以下の行を[[BugTrack/2525>https://p...
/////////////////////////////////////////////////
// Page-URI mapping handler ( See https://pukiwiki.sourc...
だが、これだと(8)の優先利用カスタマイズは使えないので以下...
(9) のカスタマイズにリダイレクトさせる機能も付け加えた。
#gcode(php){{
/////////////////////////////////////////////////
// Page-URI mapping handler ( See https://pukiwiki.source...
class ShortUrl2PageURIHandler extends PukiWikiStandardPag...
function get_page_uri_virtual_query($page) {
exist_plugin('s'); // Load s.inc.php
$page_id = plugin_s_get_page_id($page);
if ($page_id) {
return '?' . $page_id;
}
return '?' . pagename_urlencode($page);
}
function get_page_from_query_string($query_string) {
exist_plugin('s'); // Load s.inc.php
$m = array();
if (preg_match('#^([0-9a-z]{10})$#', $query_string, $m)...
$page = plugin_s_get_page_from_page_id($m[1]);
if ($page) {
return $page;
} else {
// Not found
http_response_code(404);
die_message('Not found');
exit;
}
}
$is_get = $_SERVER['REQUEST_METHOD'] === 'GET';
if ($is_get) {
if (!preg_match('#^([0-9a-z]{10})$#', $query_string, $m)
) {
$dec_page = urldecode($query_string);
$page_id = plugin_s_get_page_id($dec_page);
if ($page_id) {
$short_url = get_page_uri($dec_page, PKWK_URI_ROOT);
header("HTTP/1.1 302 Found");
header("Location: $short_url");
exit;
}
}
}
return parent::get_page_from_query_string($query_string);
}
}
$page_uri_handler = new ShortUrl2PageURIHandler();
}}
これで「/?xxxxxxxxxx」の短縮の形のURLとなり、エンコードさ...
** コメント [#o1e3d33e]
#pctrlcmt
ページ名:
検索
AND検索
OR検索
↑
最新のページ
2023-11-22
PukiWikiの公式サイトのドメインが変わったので当ブログの旧PukiWikiリンクを置き換えた
2023-10-26
私がつくった無料Wikiレンタルサービス「WikiChree.COM」について紹介
2023-10-08
PukiWikiスキン「MaterialPukiWiki」
PukiWikiスキン「Monobook」
PukiWikiスキン「イカスキン」
[
もっと見る
]
↑
タグ
PukiWiki
スキン
プラグイン
自作
解説
[
もっと見る
]
↑
人気のページ
FrontPage
(3546)
PukiWikiのスキンって何?入れ方まで解説
(775)
更新ページ一覧
(607)
PukiWikiスキン「Cleaskin」
(363)
PukiWikiでCKEditorを利用してGUI編集ができるプラグインを作った
(361)
↑
カウンター
合計:
0
今日:
0
昨日:
0
オンライン:
3
This site is protected by
Turnstile
and the Cloudflare
Privacy Policy
and
Terms of Service
apply.