MTのエントリー内のリンク切れをチェックするプラグイン

メンテナンスの際に、サイト内のエントリー間のリンク切れが起こってないか、外部リンクとの接続は保たれているか、を調べるのは大事だと思います。
そんな時に役立つプラグインの紹介です。

リンク切れチェック用プラグインのDL・UL

CheckLinks | Plugins for Movable Type | staggernation.com
上記よりプラグインをDLしたら、
MTルート/pluginsの中にplファイルをULします。

チェック用テンプレートの作成

チェック後にリンク切れを起こしてるエントリーと、そのリンク(とエラーステータス)を表示してくれます。

  • テンプレート名・・・LinkCheck
  • 出力・・・linkcheck/index.php (html)
  • 再構築チェック・・・外す
  • 内容・・・下記コード
<MTEntries all="1">
<p>
■<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a>
<MTCheckLinks>
<MTCheckLinksHere include_local="1">
<$MTEntryBody$>
<$MTEntryExtended$>
</MTCheckLinksHere>
<MTIfBadLinks omit_status="500">
<h4>Bad links</h4>
<ul>
<MTBadLinks>
<li><a href="<$MTBadLinkURL$>"><$MTBadLinkURL$></a> (<$MTBadLinkStatus$>)</li>
</MTBadLinks>
</ul>
</p>
</MTIfBadLinks>
<MTIfNoBadLinks>
-No bad links found
</p>
</MTIfNoBadLinks>
</MTCheckLinks>
</MTEntries>

問題のある箇所のみ表示させるには下記。
BadLinkが存在しない場合は何も表示されない点に留意。

<MTEntries all="1">
<p>
<MTCheckLinks>
<MTCheckLinksHere include_local="1">
<$MTEntryBody$>
<$MTEntryExtended$>
</MTCheckLinksHere>
<MTIfBadLinks omit_status="500">
<h4>Bad links There:<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a></h4>
<ul>
<MTBadLinks>
<li><a href="<$MTBadLinkURL$>"><$MTBadLinkURL$></a> (<$MTBadLinkStatus$>)</li>
</MTBadLinks>
</ul>
</p>
</MTIfBadLinks>
<MTIfNoBadLinks>
</p>
</MTIfNoBadLinks>
</MTCheckLinks>
</MTEntries>
  • include_local="1"・・・相対リンクもチェック
  • omit_status="500"・・・500エラーは除外

利用上の注意

これはエントリー内の、指定した箇所のリンクを全てチェックしますので、負荷は高いと思われます。
環境に因るのですが、EntryBodyとExtendedを同時にチェックするのではなく、EntryBody用とExtended用のふたつを用意して、別々にチェックする方法もありかもしれませんね。

あとがき

リンクチェックに関しては、以前どこかで見掛けた事があった気がしていたのですが、今回はとても判り易い解説をされてる記事に出会えて勉強になりました。

そ、それからいよいよ初めてのトラックバックに挑戦です(`・ω・´)

[参考記事]

MovableType備忘録: エントリ内のリンク切れをチェックする [MovableType備忘録]
エントリー内のリンク先をチェックする (オラオラ) [オラオラ]

[こちらはおまけ]
Firefox Extension-LinkChecker
ページ内をちょっとリンクチェックする際に便利なのです。

▲ to Top

コメント(2)

こんにちは、Trackbackありがとうございます。
これからも、よろしくお願いいたしますね。

>>oscar さん
わざわざご返信ありがとうございます!
エラーが出たりして重複トラックバックだったりしてたと思います・・・。
すいません(´・ω・)
こちらこそ、どうぞ宜しくお願い致します!

トラックバック(1)

エントリ間でリンクを貼ったり、外部リンクしたりなど、普通にみなさんやってることと思います。 数ヶ月前にわたしのサイトでは、ディレクトリ構成を変更したため、... 続きを読む

▲ to Top