メインコンテンツにスキップ
  • Middleman ホームページ
  • サポート
  • コミュニティ
  • ドキュメント

基礎

  • インストール
  • v4 へのアップグレード
  • 新しいサイトの作成
  • ディレクトリ構造
  • 開発サイクル
  • ビルド & デプロイ
  • Frontmatter
  • テンプレート言語
  • ヘルパーメソッド
  • レイアウト
  • パーシャル
  • リダイレクト
  • ブログ機能

高度な機能

  • 設定
  • プロジェクトテンプレート
  • 動的ページ
  • データファイル
  • 多言語化 (i18n)
  • アセットパイプライン
  • 外部パイプライン
  • Rack ミドルウェア
  • サイトマップ
  • きれいな URL (ディレクトリインデックス)
  • キャッシュ機能の改善
  • ファイルサイズ最適化
  • カスタム拡張
  • テンプレートエンジンオプション

きれいな URL (ディレクトリインデックス)

デフォルト設定では Middleman はプロジェクトの中であなたが記述したとおり正確に ファイルを出力します。例えば source フォルダの中の about-us.html.erb ファイルはプロジェクトのビルド時に about-us.html として出力されます。 example.com の Web サーバのルートディレクトリにプロジェクトを配置すれば, このページは次の URL でアクセスできます: http://example.com/about-us.html


Middleman は .html 毎にフォルダを作り, そのフォルダの index としてテンプレートを 出力するディレクトリインデックス拡張を提供します。 config.rb で次のように指定します:

activate :directory_indexes

このプロジェクトがビルドされた時, about-us.html.erb ファイルは about-us/index.html として出力されます。"index ファイル" 対応の Web サーバに 置かれた場合 (Apache や Amazon S3), このページは次の URL でアクセスできます:

http://example.com/about-us

別のファイル名で出力したい場合, index_file 変数が設定できます。 例えば IIS では default.html が使用されます:

set :index_file, "default.html"

もしくは PHP ファイルにしたい場合:

set :index_file, "index.php"

アセットパスに関する注意事項

ディレクトリインデックスを有効化する場合, 画像ファイル名だけで アセットファイルの呼び出し (例: 画像ファイル) を行うと失敗します。 次のように完全な抽象パスを使って呼び出す必要があります:

![すごい画像](/posts/2013-09-23-some-interesting-post/amazing-image.png)

わずかにこのプロセスを自動化するには, Markdown をまずは ERB で作成します。 例えば /posts/2013-09-23-some-interesting-post.html.markdown.erb ファイルが あるとします:

![すごい画像](<%= current_page.url %>some-image.png)

オプトアウト

自動的に名前を変更したくないページがある場合, 除外できます:

page "/i-really-want-the-extension.html", :directory_index => false

1 度にたくさんのファイルのインデックスを無効化にしたい場合, page には 正規表現かファイルのパターンマッチを与えることができます。

ページ毎に Frontmatter に directory_index: false を追加することもできます。

手動インデックス

テンプレートのファイル名がすでに index.html の場合, Middleman は 手をつけません。例えば, my-page/index.html.erb はあなたの予想どおり my-page/index.html としてビルドされます。

© 2011–2022 Thomas Reynolds

コントリビュータ の助けを借りて コアチーム によって メンテナンスされています。

  • Twitter
  • GitHub