PukiWiki 1.4.7 TrackBack関係機能まとめ(途中)

plugin/tb.inc.php,v 1.21 Edit

function plugin_tb_action() Edit

  • Trackback pingの受信処理,保存
  • __mode
    • rss
      指定したページ(tb_id)のTrackbackをRSS形式で出力する
    • view
      指定したページ(tb_id)のTrackbackを一覧表示する機能だった(機能削除中)

function plugin_tb_save($url, $tb_id) Edit

  • Save or update TrackBack Ping data
  • 指定したページ(tb_id)に$urlからのトラックバックを保存する。
  • トラックバックデータは$varsから取得する。
  • 同一URLからのトラックバックはデータを上書きする。
  • トラックバックデータファイルの各1行に1件のトラックバックを保存。原則、古い順に並ぶ(新しいものは後、更新した場合はそのまま)
  • 戻り値:array([PLUGIN_TB_NOERROR|PLUGIN_TB_ERROR],error_message)

function plugin_tb_output_response($rc, $msg = '') Edit

  • Show a response code of the ping via HTTP/XML (then exit)
  • Trackback ping受信時の応答メッセージ出力

function plugin_tb_output_rsslist($tb_id) Edit

  • Show pings for the page via RSS
  • 指定したページ(tb_id)のトラックバックをRSS(0.91)で出力
  • 件数制限なし
  • 出力順の制御なし
  • トラックバック時刻の出力なし

function plugin_tb_output_htmllist($tb_id) Edit

  • Show pings for the page via XHTML
  • 現在、機能停止中
    This function had been removed now. It will be created soon.
    Sorry for your inconvenience.
  • 件数制限なし
  • 出力順は新着順
  • 出力はUTF-8*1

lib/trackback.php,v 1.21 Edit

function tb_get_id($page) Edit

  • Get TrackBack ID from page name
  • md5($page)を返す

function tb_id2page($tb_id) Edit

  • Get page name from TrackBack ID
  • ページ一覧(get_existpages())から該当するTrackBack IDを持つページ名を返す

function tb_get_filename($page, $ext = '.txt') Edit

  • Get file name of TrackBack ping data
  • TRACKBACK_DIR . encode($page) . $ext;を返す

function tb_count($page, $ext = '.txt') Edit

  • Count the number of TrackBack pings included for the page
    • pukiwiki.skin.php
  • tb_get_filename($page, $ext)の行数(TrackBack件数)を返す

function tb_send($page, $plus, $minus = '') Edit

  • end TrackBack ping(s) automatically
    • file.php
  • $pageから$plusに記載のURL($minus分を除外)にTrackback Pingを送信
  • 自wikiにはtrackbackは送信しない
  • $excerptは、strip_htmltag(convert_html(get_source($page)))の先頭255バイト
  • POSTで送信
  • リダイレクトは2回までチェック
  • trackbackのレスポンスは未処理

function tb_delete($page) Edit

  • Remove TrackBack ping data
    • edit.inc.php
  • ファイル「tb_get_filename($page)」を削除する

function tb_get($file, $key = 1) Edit

  • Import TrackBack ping data from file

function tb_get_rdf($page) Edit

  • Get a RDF comment to bury TrackBack-ping-URI under HTML(XHTML) output
    • lib/pukiwiki.php

function tb_get_url($url) Edit

  • HTTP-GET from $uri, and reveal the TrackBack Ping URL
  • lib/proxy.phpのfunction in_the_net()を使用
  • Proxy経由では利用不可($use_proxyが真 かつ urlが$no_proxyに存在しない)
  • urlを読み込み、RDF xmlns:trackbackが存在するかチェックする。
  • RDFがあれば、class TrackBack_XMLを使用しTrackback URLを返す。

class TrackBack_XML Edit

  • Parse and reveal the TrackBack Ping URL from RDF data

function parse($buf, $url) Edit

function start_element($parser, $name, $attrs) Edit

function end_element($parser, $name) Edit

function ref_save($page) Edit

  • Save or update referer data
    • lib/pukiwiki.php

PukiWiki 1.4.7の上記以外のTrackBack関連箇所 Edit

en.lng.php(86): // TrackBack (REMOVED)
en.lng.php(121): $_LANG['skin']['trackback'] = 'Trackback';	// Show list of trackback
INSTALL.txt(80):       trackback      777	TrackBackファイル格納ディレクトリ
INSTALL.txt(181):     て下さい。(同 attach, backup, cache, counter, diff, trackback)
ja.lng.php(88): // TrackBack (REMOVED)
ja.lng.php(123): $_LANG['skin']['trackback'] = 'Trackback';	// Show list of trackback
pukiwiki.ini.php(79): define('TRACKBACK_DIR', DATA_HOME . 'trackback/'); // TrackBack logs
pukiwiki.ini.php(158): // TrackBack feature
pukiwiki.ini.php(160): // Enable Trackback
pukiwiki.ini.php(161): $trackback = 1;
pukiwiki.ini.php(163): // Show trackbacks with an another window (using JavaScript)
pukiwiki.ini.php(164): $trackback_javascript = 0;
pukiwiki.ini.php(334): // HTTP proxy setting (for TrackBack etc)
UPDATING.txt(219):     1.  trackbackディレクトリに保存されるファイル名の規則が変わりました
UPDATING.txt(220):         trackback/referer機能をお使いで、1.4.2から1.4.3へ移行される場合は、
lib\file.php(65): 	global $trackback;
lib\file.php(82): //	if ($trackback) {
lib\file.php(83): //		// TrackBack Ping
lib\html.php(17): 	global $trackback, $trackback_javascript, $referer, $javascript;
lib\html.php(33): 	if ($trackback && $trackback_javascript) $javascript = 1; // Set something If you want
lib\html.php(60): 	if ($trackback) {
lib\html.php(62): 		$_LINK['trackback'] = "$script?plugin=tb&__mode=view&tb_id=$tb_id";
lib\html.php(79): 	$link_trackback = & $_LINK['trackback'];	// New!
lib\init.php(236): 	// TrackBack Ping で指定されていることがある
lib\init.php(350): // TrackBack Ping
lib\proxy.php(58): 		// 'application/x-www-form-urlencoded', especially for TrackBack ping
lib\pukiwiki.php(56): $notify = $trackback = $referer = 0;
lib\pukiwiki.php(65): if ($trackback || $referer) {
lib\pukiwiki.php(66): 	// Referer functionality uses trackback functions
lib\pukiwiki.php(68): 	require(LIB_DIR . 'trackback.php'); // TrackBack
lib\pukiwiki.php(125): 	if ($trackback) $body .= tb_get_rdf($base); // Add TrackBack-Ping URI
plugin\edit.inc.php(177): 	global $vars, $trackback;
plugin\edit.inc.php(225): 		if ($trackback) tb_delete($page);
plugin\referer.inc.php(25): 	$pages = get_existpages(TRACKBACK_DIR, '.ref');
plugin\rss.inc.php(16): 	global $vars, $rss_max, $page_title, $whatsnew, $trackback;
plugin\rss.inc.php(67): 			$trackback_ping = '';
plugin\rss.inc.php(68): 			if ($trackback) {
plugin\rss.inc.php(70): 				$trackback_ping = ' <trackback:ping>' . $self .
plugin\rss.inc.php(71): 					'?tb_id=' . $tb_id . '</trackback:ping>';
plugin\rss.inc.php(79): $trackback_ping
plugin\rss.inc.php(115): 		$xmlns_trackback = $trackback ?
plugin\rss.inc.php(116): 			'  xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"' : '';
plugin\rss.inc.php(120): $xmlns_trackback
skin\pukiwiki.skin.php(83): <?php if (PKWK_ALLOW_JAVASCRIPT && $trackback_javascript) { ?> <script type="text/javascript" src="skin/trackback.js"></script><?php } ?>
skin\pukiwiki.skin.php(157): <?php if ($trackback) { ?> &nbsp;
skin\pukiwiki.skin.php(158):  [ <?php _navigator('trackback', $lang['trackback'] . '(' . tb_count($_page) . ')',
skin\pukiwiki.skin.php(159):  	($trackback_javascript == 1) ? 'onclick="OpenTrackback(this.href); return false"' : '') ?> ]
skin\tdiary.skin.php(588): <?php if (PKWK_ALLOW_JAVASCRIPT && $trackback_javascript) { ?> <script type="text/javascript" src="skin/trackback.js"></script><?php } ?>
skin\tdiary.skin.php(655): <?php if ($trackback) { ?> &nbsp;
skin\tdiary.skin.php(656):    <?php _navigator('trackback', $lang['trackback'] . '(' . tb_count($_page) . ')',
skin\tdiary.skin.php(657):  	($trackback_javascript == 1) ? 'onclick="OpenTrackback(this.href); return false"' : '') ?>





*1 何故だろう。。。

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 下位頁新規  一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-02-21 Sun 22:41:12 JST (3552d)
Valid XHTML 1.1 Valid CSS