SITECORE MANIA 開発者向け技術ブログ

その他

黒川

黒川

リンク切れの検出 & 無効なリンクの削除

各所のサイトを閲覧していると「リンク先のページが存在しない」という事が、それなりに散見されます。
コンテンツ作成後に、充分な確認をしてから公開していても、完全抑止は困難ですね。なお、パブリックフィールドで検出させて、適切に修正するという仕方は、高い生産性を維持する観点からは認められるべきだとも言えます。
一方で、当社が保守するサイトに於いては、撲滅させたい事象です。外部リンクは致し方がない側面がありますが、内部リンクでの発生は抑えたいです。
今回は、当社が定期的に実施している運用の一部分を、ご紹介します。「内部リンクのリンク切れの検出」と「無効なリンクの削除」です。
(Sitecore9.2(サイトコア9.2)環境)

1.内部リンクのリンク切れの検出

(1-1)「リンク切れレポートツール」起動
サイトコアのデスクトップ画面から「レポートツール」カテゴリ内の「リンク切れレポートツール」を選択する。

(1-2)「内部リンクのリンク切れが存在するアイテム」を検出
(1-2-1)リンクデータベースの再構築
「ツール」カテゴリの「リンクデータベースを再構築」ボタンを押下する。
「リンクデータベースを再構築する」ポップアップ画面にて、「公開向けのデータベース(prod)」を指定し、「再構築」ボタンを押下する。「内部リンクのリンク切れが存在するアイテム」のインデックスが、再構築される。
(リンクデータベースの他のチェック項目は、指定しない。)
インデックスの再構築が完了したら、「閉じる」ボタンを押下してポップアップ画面を閉じる。
(1-2-2)「内部リンクのリンク切れが存在するアイテム」を一覧表示
「データベース」カテゴリの「公開向けのデータベース(prod)」を指定して、「ホーム」カテゴリの「実行」ボタンを押下する。
(「データベース」カテゴリと「表示」カテゴリにて、他のチェック項目は指定しない。)

(1-3)「無効なリンクの削除」要否判断
『(1-2)「内部リンクのリンク切れが存在するアイテム」を検出』にて、「内部リンクのリンク切れが存在するアイテム」が表示された場合、次節の『2.無効なリンクの削除』を実施する。
当該のアイテムが表示されなければ、完了する。

リンク切れレポートツール
図1-1 リンク切れレポートツール

 

2.無効なリンクの削除

(2-1)「Remove Broken Links」起動
「コントロールパネル」画面にて、「管理ツール」リンクを押下する。
「Administration」画面にて、「Auxilary」カテゴリの「Remove Broken Links」リンクを押下する。

(2-2)「Remove Broken Links」で削除
「Remove Broken Links」画面にて、「公開向けのデータベース(prod)」を指定し、「Remove」ボタンを押下する。「内部リンク」フィールドにて、リンク先が存在しない値が削除される。
(databasesの他のチェック項目は、指定しない。)

(2-3)削除結果を確認(必要時は追加策を実施)
『(1-2)「内部リンクのリンク切れが存在するアイテム」を検出』の手段で、「内部リンクのリンク切れが存在するアイテム」の有無を再確認する。
当該のアイテムが表示されなくなれば、完了する。
当該のアイテムが未だ表示される場合、前項の『(2-2)「Remove Broken Links」で削除』を再度実行する。それでもリンク切れが表示される場合は、次項の『(2-4)個別削除』を実施する。

(2-4)個別削除(コンテンツエディターで削除)
『(1-2)「内部リンクのリンク切れが存在するアイテム」を検出』にて、「内部リンクのリンク切れが存在するアイテム」を表示する。
「アイテムPath」列のリンクを押下して、対象アイテムをコンテンツエディターで表示する。
(画面右下のDB選択肢にて、「公開向けのデータベース(prod)」を選択しておく。)
コンテンツエディター画面で、「リンクURL」フィールドを探して、フィールドに格納されている値をクリアする。クリアしたら、「保存」ボタンを押下してアイテム設定を保存する。
「個別削除」を繰り返して、「内部リンクのリンク切れが存在するアイテム」の「リンクURL」フィールドの値を、全てクリアする。

Remove Broken Links
図2-1 Remove Broken Links

以上、当社が実施している定期的な運用の一部でした。
なお、本記事には手段の全てを記載してはおらず、細かなテクニックが必要な個所があります事、ご承知おき下さい。



※エントリーの内容・画像等は、公開時点での情報に基づきます。
※Sitecoreのバージョンによって実装されている機能が異なります。

この記事を読んだ人はこちらの記事も読んでます

Sitecore導入に関するご相談・資料ダウンロード

導入をご検討・ご依頼の方や、サービスについてご不明点がございましたらお気軽にお問い合わせください。

Sitecoreの運用問題を解決する

既にSitecoreを導入しているお客様向けサービス