第22回 HTML でトラックバック
[2005/05/28]
最近「ブログが上位表示されすぎ」という情報を良く見かけます。では、なぜブログが上位表示されやすいのでしょうか?ブログが上位表示されやすいのは下記の 2 点によるものです。
- 重要なタグが使われている
- トラックバックの機能が標準で装備されている
(番外). 単にブログの数 (率) が増えている
SEO に詳しくなくても、記事を書けば上位に表示されやすいのは上記 1 によるものです。ただし、1 に関してはホームページビルダーや Dreamweaver 等のツールで作成しても、知識さえあれば同じ事ができます。通常の HTML サイトとの違いは 2 にあるわけです。ブログにはトラックバックを送信したり受信したりする機能が標準でついています。
トラックバックを送信すると言うことは、外部からのリンクをもらうことが簡単にできるということです。外部からリンクをもらうと言うことは上位表示に結びつくわけですから、トラックバックの機能があるブログは上位表示がされやすいわけですね。このあたりは既にご存じの方も多いでしょう。ネットショッピングを運営している方で、このトラックバックの機能が欲しいからブログも書いている、またはこれからブログも使おうという方も多いと思います。
第 2 回 SEO コンテストを開催するに当たり SEO-Association で、トラックバックを送受信できるようにしたいなぁということで、トラックバックの仕様を調べてみました。トラックバックの仕様を見ると HTML だけでもトラックバックを送れることがわかりました。
では、実際に HTML でトラックバックを送ってみましょう。下記の『↓ここから』『↑ここまで』の間をコピーし、その中の■にトラックバックを送りたい URL を記述します。今回利用するトラックバックURL は http://www.su-jine.net/tb/1 を使います。■を http://www.su-jine.net/tb/1 に書き換えて tb.html とでも保存してください。tb.html をブラウザで表示すると、タイトル、URL、内容、ブログ名を入れるテキストボックスと送信ボタンが表示されます。下記を参考に、それぞれを記入して、「送信」ボタンをクリックしてください。
===↓ここから===========================================
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<title>トラックバック送信</title>
</head>
<body>
<h1>HTML でトラックバックを送ってみよう</h1>
<form action="■" method="post">
<table>
<tr>
<td>タイトル</td>
<td>:</td>
<td><input type="text" name="title" value="" size="50"></td>
</tr>
<tr>
<td>URL</td>
<td>:</td>
<td><input type="text" name="url" value="" size="50"></td>
</tr>
<tr>
<td>内容</td>
<td>:</td>
<td><textarea name="excerpt" cols="35" rows="2"></textarea></td>
</tr>
<tr>
<td>サイト名</td>
<td>:</td>
<td><input type="text" name="blog_name" value="" size="50"></td>
</tr>
<tr>
<td colspan="3"><input type="submit" name="ping" value="送信"></td>
</tr>
</table>
</form>
</body>
</html>
===↑ここまで==========================================
| タイトル | : | ブログでは記事名です |
| | (例:HTML でトラックバック) |
| URL | : | 上記記事のリンク URL です |
| | (例:http://www.su-jine.com/) |
| 内容 | : | 概要を書きます |
| | (例:HTML だけでトラックバックは送信できます。) |
| サイト名 | : | サイト名を書きます |
| | (例:Su-Jine) |
実行してみましたか?<error>0</error> となっていればトラックバック送信成功です。<error>1</error> となっていればトラックバック送信失敗です。今回は URL のみ必須としましたので、URL を入れなかった場合または、上記■を URL に入れ替えなかった場合以外は成功したかと思います。
では本当にトラックバックが送信できたか確認してみましょう。下記の URL を表示してください。自分で送ったものが書き込まれていますか?
http://www.su-jine.net/tb.php
上記のソースコードは意外と簡単ですよね。ホームページビルダーでも Dreamweaver でも作成できる簡単なものです。特に難しい技術を用いているわけでもなく、単に title, url, excerpt, blog_name をトラックバック URL に POST しているだけです。今回使用したトラックバックの受信ツールは私が作成したものですが、MovableType 等のブログへも送信できます (ほとんどのブログで対応しています)。
MovableType で確認する場合は■の箇所を下記 URL に書き換えてチェックてください。
これを知っていればプログラムを書ける人なら、上記■の箇所を複数対応するだけで、トラックバック送信ツールを作成することができます。ここまでの話はゴッゴル本で書いています。
次にトラックバックを受信したい場合はどうでしょうか?こちらも HTML で可能かというと、残念ながら HTML では受信できません。それなりにプログラミングする必要があります。ここからはプログラミングの経験があるユーザが対象です。
トラックバックを受信する場合は、上記の HTML で POST された変数をファイルに吐き出せばトラックバックの受信機能が作れます。PHP でのサンプルプログラムを下記に示します。ただし、下記の内容はエラー処理や、受信制限 (文字数制限)、文字コードの変換等が入っていませんので、実装する場合は適当にいじって使ってください。
===↓ここから==========================================
<?php
$title = $_POST['title'];
$url = $_POST['url'];
$excerpt = $_POST['excerpt'];
$blog_name = $_POST['blog_name'];
if ($url == "")
{
print "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";
print "<response>\n";
print "<error>1</error>\n";
print "<message>Error</message>\n";
print "</response>\n";
}
else
{
$fp = @fopen ("tb.txt", "a");
flock ($fp, LOCK_EX);
$buf = $title . "," . $url . "," . $excerpt . "," . $blog_name . "\n";
fwrite ($fp, $buf);
flock ($fp, LOCK_UN);
fclose ($fp);
print "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n";
print "<response>\n";
print "<error>0</error>\n";
print "</response>\n";
}
?>
===↑ここまで==========================================
HTML サイトをブログ化してしまうというのはなかなか面白いと思いませんか?ブログというのはデザインが同じような感じになるため、インパクトのあるサイトを作るのはなかなか難しいです。オリジナリティのあるサイトを作成しつつ、ブログの良い機能を取り入れると、ひと味違ったサイトができあがります。新着情報を RSS 配信するというのも面白いですね。
|