ディレクトリをHTMLインデックスに変換する方法、またはサイトマップを作成する方法

Windowsフォルダを閲覧可能なHTMLインデックスに変換するには、index.htmlフォルダの内容への相対リンクを含むページを作成します。PowerShellを使えば、コンバーターをインストールしなくても生成できます。検索エンジンのサイトマップのことであれば、公開されているWebサイトのURLを一覧にした別のXMLファイルを作成してください。ローカルディスクのディレクトリはWebサイトのサイトマップではありません。

HTMLディレクトリインデックスとウェブサイトサイトマップの比較

HTMLディレクトリ インデックスは、ユーザーがファイルやフォルダを閲覧するために開くことができるページです。これは、PC、共有ドライブ、または Web サーバー上に配置できます。XMLサイトマップは、Web サイトが推奨する公開 URL を機械が読み取れる形式でリストしたものです。Google は、完全修飾された絶対 URL と正規バージョンのページを推奨しています。サイトマップを送信することは発見のヒントであり、Google がすべての URL をクロールまたはインデックスすることを保証するものではありません。Googleのサイトマップに関するガイダンスを参照してください。

Dir2HTMLはどうなったのですか?

この記事の初版では、単一ページまたは複数ページのHTMLインデックスを作成するWindowsユーティリティであるArclab Dir2HTMLを推奨していました。しかし、Arclabは現在Dir2HTMLのサポート終了を公表しています。開発と配布は終了し、ダウンロードも提供されておらず、今後のアップデートもありません。以前のダウンロードリンクやWindows 2000、XP、Vistaとの互換性に関する記述は無効です。現在使用する場合は、メンテナンスされていない不明なダウンロードサイトからのインストーラーに頼ることは避けてください。代わりに、以下のPowerShell組み込みメソッドを使用してシンプルなインデックスを作成することをお勧めします。Arclabの公式レガシーソフトウェアFAQに最新の状況が記載されています。

WindowsディレクトリからHTMLインデックスを作成する

この例では、index.htmlリスト化したいフォルダ内にファイルを作成します。ファイルとサブフォルダを再帰的に含め、相対リンクを使用してインデックスがフォルダツリーと共に移動できるようにし、インデックスとスクリプト自体はスキップします。スクリプトを.ps1ファイルとして保存し、実行する前にサンプルパスを変更してください。

  1. ソースフォルダーを選択してください。ファイルエクスプローラーで、カタログ化するディレクトリ(例:)を指定しますD:\ProjectFiles。生成されたページはそのフォルダーに保存されるため、インデックスを移動または公開する場合は、ファイルやサブフォルダーと同じ場所に保存してください。共有するコンテンツのみを含めてください。このページには名前とリンクが一覧表示され、フォルダーのアクセス権限は変更されません。
Windows 11のファイルエクスプローラーでProjectFilesディレクトリを開き、assets、docs、images、README.md、notes.txt、sample.pdfを表示し、assetsが選択された状態にする。
HTMLページに表示させたいディレクトリを選択してください。
  1. PowerShell スクリプトを保存します。メモ帳を開き、以下のコードを貼り付け、最初の行のパスを更新して、ファイルを として保存しますCreate-DirectoryIndex.ps1。このスクリプトは PowerShell の を使ってGet-ChildItemディレクトリ ツリーを列挙します。Microsoft のドキュメントによると、この-Recurseオプションは子フォルダー内のアイテムも対象に含めます。また、ファイル名を HTML および URL 用にエンコードします。
PowerShellウィンドウに、サンプルソースパスD:\ProjectFilesと出力パスindex.htmlが表示されています。
スクリプトの冒頭付近に、ソースフォルダと出力ファイルを設定してください。
$root = (Resolve-Path -LiteralPath 'D:\ProjectFiles').Path
$outFile = Join-Path $root 'index.html'
$scriptPath = $PSCommandPath

$items = foreach ($entry in (Get-ChildItem -LiteralPath $root -Recurse | Where-Object {
    $_.FullName -ne $outFile -and $_.FullName -ne $scriptPath
} | Sort-Object FullName)) {
    $relative = $entry.FullName.Substring($root.TrimEnd('\').Length) -replace '^[\\/]+', ''
    $href = (($relative -split '[\\/]') | ForEach-Object {
        [Uri]::EscapeDataString($_)
    }) -join '/'
    $label = $relative
    if ($entry.PSIsContainer) {
        $href += '/'
        $label += '/'
    }
    $label = [System.Net.WebUtility]::HtmlEncode($label)
    '<li><a href="' + $href + '">' + $label + '</a></li>'
}

if (-not $items) { $items = '<li>No files or folders found.</li>' }
$entryHtml = $items -join [Environment]::NewLine
$html = @"
<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><title>Directory index</title></head>
<body><h1>Directory index</h1><ul>
$entryHtml
</ul></body></html>
"@

Set-Content -LiteralPath $outFile -Value $html -Encoding UTF8
Write-Host "Created $outFile"
Start-Process $outFile

このコードは、Microsoft の組み込みコマンドレットであるGet-ChildItemとResolve-Pathに依存しています。PowerShell のパラメーターを追加しない限り、非表示のアイテムは含まれません-Force。アカウントがサブフォルダーを読み取れない場合は、アクセス許可を修正するか、表示権限のあるアカウントからインデックスを作成してください。

  1. スクリプトを実行します。PowerShellを開き、スクリプトを保存したフォルダーに移動して実行します。たとえば、スクリプトがにある場合はD:\ProjectFiles、と入力しSet-Location -LiteralPath 'D:\ProjectFiles'、次にと入力します.\Create-DirectoryIndex.ps1。最後のコマンドは、スクリプトを書き込んindex.htmlで既定のブラウザーで開きます。組織でスクリプトの実行が制限されている場合は、このタスクのためだけにシステム全体の設定を変更するのではなく、組織のポリシーに従ってください。
PowerShell で、D:\ProjectFiles から Create-DirectoryIndex.ps1 が実行され、メッセージが「D:\ProjectFiles\index.html が作成されました」と表示されます。
PowerShellは、インデックスの書き込みが完了すると出力パスを報告します。
  1. ページとリンクを確認してください。ファイル名が正しく表示され、サンプルファイルへのリンクが期待どおりのファイルを開くことを確認してください。フォルダリンクは、ブラウザまたはWebサーバーがディレクトリナビゲーションを許可している場合に機能します。ホスト型サイトの場合は、独自のインデックスページを持つフォルダを使用するか、フォルダ一覧表示が無効になっている場合はディレクトリエントリを削除してください。生成されたHTMLは、同じディレクトリ構造の横に配置してください。そうしないと、相対リンクが誤った場所を指す可能性があります。
ローカルディレクトリのインデックスページのブラウザプレビュー。アセット、ドキュメント、画像、README.md、notes.txt、sample.pdfへのリンクが含まれています。
生成されたHTMLファイルを開き、共有する前に関連リンクを確認してください。

この軽量ページにはパスのみが表示され、ファイルサイズ、日付、説明、カスタムテーマなどは表示されません。これらの詳細は、読者が必要とする場合にのみ追加してください。より詳細なディレクトリカタログを作成するには、メンテナンスツールやカスタムスクリプトが必要になる場合があります。

稼働中のウェブサイト用のXMLサイトマップを作成する

PowerShell インデックスを SEO サイトマップとして送信しないでください。クローラーは、https://www.example.com/guides/setup/ローカルパス (例: ) ではなく、 のようなサイトの公開 URL を必要としますD:\ProjectFiles\guide.pdf。利用可能な場合は、CMS の組み込みサイトマップを使用してください。そうでない場合は、サイトの正規ページリストから XML を生成し、検索エンジンに考慮させたい URL のみを含めてください。lastmod日付を捏造しないでください。Google は、値が常に正確で検証可能な場合にそのフィールドを使用する可能性があると述べています。

基本的な XML サイトマップは、<urlset>ルートと、各ページへの<url>完全修飾URLを含むエントリを使用します<loc>。XML の要件に従って、特殊文字をエスケープします。単一のサイトマップは、Google の制限である 50,000 URL と 50 MB の非圧縮サイズ内に収めてください。大規模なサイトでは、ファイルを分割してサイトマップ インデックスを使用できます。サイトマップをサイト (通常はルート) に公開し、Search Console に送信するか、robots.txt<sitemap> のような行で参照します。ファイル形式については、サイトマップ プロトコルを、作成と送信のガイダンスについては、 Google Search Central をSitemap: https://www.example.com/sitemap.xml参照してください。

コメントを残す

FotoSketcherで写真を絵画、スケッチ、漫画に変換

FotoSketcherで写真を絵画、スケッチ、漫画に変換

FotoSketcher Studioを使えば、写真を絵画、鉛筆画、漫画に変換できます。エフェクトの選択方法、プレビューの調整方法、作品の保存方法を学びましょう。

オーディオ識別ツールで音声ファイルを詳細に分析・識別する

オーディオ識別ツールで音声ファイルを詳細に分析・識別する

オーディオ識別子がビットレート、エンコーダー、タグについて何を明らかにするのか、従来のワークフローがどのように機能するのか、そして現在利用可能なツールの中で、ファイルの検査や楽曲の識別に使えるものはどれなのかを学びましょう。

My Photo Index:Windows用オープンソース写真整理ツール

My Photo Index:Windows用オープンソース写真整理ツール

My Photo Indexは、ローカル画像のタグ付け、評価、閲覧を行うための、Windows向けの旧来の写真カタログツールです。その機能、互換性の制限、および現在もサポートされている代替ツールについてご確認ください。

Attribute Changerを使用してファイルとフォルダの属性、日付、時刻を変更する

Attribute Changerを使用してファイルとフォルダの属性、日付、時刻を変更する

Attribute Changerを使用して、Windowsファイルの属性とタイムスタンプを編集したり、JPEG EXIF写真の日付を更新したり、バッチ変更を安全にプレビューしたりする方法を学びましょう。

Windows 10で各モニターに異なる壁紙を設定する方法

Windows 10で各モニターに異なる壁紙を設定する方法

Windows 10の各モニターに個別の壁紙を設定し、ディスプレイを識別し、画像のフィットを調整し、モニターの選択肢が見つからない場合のトラブルシューティングを行います。

pViewer:最小限の画像ビューアとマンガ&コミックリーダー

pViewer:最小限の画像ビューアとマンガ&コミックリーダー

pViewerの機能、写真モードとコミックモードの仕組み、ダウンロードすべきWindows版、そして旧バージョンと改訂版の違いについて学びましょう。

NeoDownloader:パラメータ設定とウェブサイトからの画像の一括ダウンロード

NeoDownloader:パラメータ設定とウェブサイトからの画像の一括ダウンロード

NeoDownloaderプロジェクトの作成方法、クロール範囲の選択方法、画像フィルタと保存先の設定方法、バッチダウンロードの確認方法を学びましょう。

Windows 7および8でホットキーを使って次のデスクトップ背景に切り替える方法

Windows 7および8でホットキーを使って次のデスクトップ背景に切り替える方法

Windows 7または8用のスライドショーを設定し、簡単なVBScriptショートカットを作成して、キーボードショートカットキーを割り当てて次の壁紙に進めるようにします。

XnConvert:エフェクトの適用と画像フォーマットの一括変換

XnConvert:エフェクトの適用と画像フォーマットの一括変換

XnConvertを使えば、エフェクトの適用、写真のリサイズ、画像フォーマットの一括変換が可能です。出力設定の選択、編集内容のプレビュー、オリジナル画像の保護も行えます。

PickMeApp: 保存された設定でWindowsプログラムを転送する

PickMeApp: 保存された設定でWindowsプログラムを転送する

PickMeAppを使って、インストール済みのWindowsアプリケーションを別のPCに移行しましょう。TAPパッケージの仕組み、設定の取得方法、転送できない可能性のある項目について学びます。