MT3.33でエントリーのファイル名にパス指定をしたい

このQ&Aのポイント
  • MT3.33でエントリーを作成する際、指定したディレクトリにファイルを保存する方法について教えてください。
  • エントリーのファイル名の部分を指定したディレクトリと連結させることができないようです。
  • a/b/game/2007というディレクトリの下層にtest.htmlを作成する方法について教えてください。
回答を見る
  • ベストアンサー

MT3.33でエントリーのファイル名にパス指定をしたい

どうもお世話になります。 MT3.33でエントリーを作成する際、指定したディレクトリにファイルを保存するにはどういう設定が必要なのでしょうか? 例として、 ブログの公開設定のパス=/a/bとします。 ファイル名=testとしてエントリーを作成すると、a/b/test.htmlというファイルが作成されます。 これを作成するエントリーによって、a/b/game/2007/test.htmlというようにブログの公開設定のパス=/a/bの下層に/game/2007/を作成し、そこにtest.htmlが出来るようにしたいのです。 (予め、a/b/game/2007というディレクトリはFTPソフトで作成してあります) 単純に、エントリーのファイル名の部分をa/b/game/2007/testとしても勝手にabgame2007testというファイル名に変更されてパス指定が出来ないようです。 お手数ですが対処方法がありましたら教えて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Muller3
  • ベストアンサー率81% (800/979)
回答No.1

「設定」-「公開」の一番下に「アーカイブマッピング」という設定項目があります。多分「アーカイブ種類:エントリー」にチェックが入っていると思いますので、その出力フォーマットを変更します。 プルダウンメニューの一番下に「カスタマイズする」という項目があるので、それを選択するとパスをカスタマイズできるようになります。 エントリーごとに保存ディレクトリを変えたい場合は変数を使わないといけないので、ディレクトリ名となる何か(テンプレートタグに置き換えられるもの)をエントリー投稿時に設定できるように組み込んでやらないといけません。 例えば a/b/category/yyyy/entry_basename.html とアーカイブマッピング設定をしたとします。 「test」というファイル名を設定したエントリーに「game」というカテゴリを設定してやることで、このエントリーアーカイブページのパスは サイト・パス(アーカイブ・パス)/a/b/game/2007/test.html になります。 カテゴリ名が日本語の場合は、カテゴリの設定で出力ファイル名を設定できます。 あとはこのあたりも参考に 「アーカイブ・ファイル名定義」 http://www.sixapart.jp/movabletype/manual/3.3/e_archive_file_path_specifiers/

big_egg
質問者

お礼

アドバイスありがとうございます。 サイトを業者から引き継いだ関係もあり、カテゴリーのファイル名の意味が分かっていない状態でした。 カテゴリーのファイル名がディレクトリ名になる事が分かったので、カテゴリーとサブカテゴリーを指定する事で対処が出来ました。 他のカテゴリーに影響を与えたくないので現時点ではこれが一番良い形のようです。 どうもありがとうございました。

関連するQ&A

  • ファイル名を取得できない

    次のようなソースでディレクトリ内のファイル名を取得しようとしています。 $dh=opendir("."); while(($entry=readdir($dh))){ if(is_file($entry)){ print $entry."<>"; } } closedir($dh); このソースを、取得したいディレクトリ内で動かすとまったく問題ないのですが、ディレクトリのパスを1個上の階層などから相対パスで指定すると、.phpファイルと.htmlファイルは取得するのですが、ほかのファイル名は取得されなくなってしまいます。 何かphp.iniなどで設定があるのでしょうか。 回避方法がありましたら是非ご教授ください。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • パスを指定してディレクトリに存在するファイル名?

    お世話になります、 JavaAPIで パスを指定してディレクトリに存在するファイル名およびその大きさを知るメソッドを探しています。 JDKは1.3です。 よろしくお願いします。

    • ベストアンサー
    • Java
  • MTのアーカイブ(エントリー)のファイル名

    MovableTypeを利用しているのですが、 Ver.2.66のころは、各エントリー(個別記事)のファイル名は作成された順番に数字が割り当てられ、Archivesディレクトリに格納されていました。 しかし、Ver.3.11-jaを利用するようになると archives/[作成年]/[作成月]/[entryのタイトル] のようになってしまいます。さらに、この[entryのタイトル]の部分は、日本語の場合適当な文字列に変換されてしまうようです。 ネットで検索したところ、[ウェブログの設定]→[アーカイブの設定]→「アーカイブ・ファイルのテンプレート」にて変更可能なようなのですが、上記の逆の設定は載っていてもVer.2.66のように戻すための設定方法は見つけることが出来ませんでした。 MovableTypeをCMSとして使用したいので、以前のエントリーに対しても修正を比較的頻繁に行うため年や月で分類されたり、日本語が適当な文字列に変換されるのは避けたいので、以前のバージョンのような仕様に戻す方法か、よりよい管理方法を探しています。 皆様のお知恵をお貸し願えませんでしょうか。 以上、宜しくお願いいたします。

  • 実行ファイルのパスの取得

    現在実行ディレクトリはAです。 また実行ファイルはtest.plでこれらは /A/B/test.pl という関係になっています。 test.plでこのようなパスを取得するにはどのようにしたら良いでしょうか? お分かりの方どうぞ教えてください。

    • ベストアンサー
    • Perl
  • インクルードパスを相対パスで指定

    Visual C++ 2017を使用したプロジェクト開発で、次のようなディレクトリ構造になっているとします。 root/  └ dev/    └ L1/      ├ L2/      │ ├ L3/      │ │ └ L4/      │ │   └ MyProj(開発用ディレクトリ)      │ └ foo/      │      └ include/ プロジェクトファイルやソースファイルは全てMyProjの直下にあります。 L2と同じ階層にあるincludeディレクトリにあるtest.hをソースファイルにインクルードするために、次のような#include文を記述します。 #include "../../../include/test.h" これで問題なくコンパイルが通ります。 次に、プロジェクトのプロパティの「追加のインクルードディレクトリ」に"../../foo"を追加します。 これは次のようなオプションと解釈されてコンパイラに渡されます。 /I"../../foo" fooというディレクトリのみを参照パスに追加するつもりで、プロジェクトファイルからの相対パスで指定しました。 さてここで#include文を次のように書き換えてみました。 #include "../../include/test.h" これでコンパイルが通るのです。 ソースファイルからtest.hへの相対パスは ../../../include/test.h のはずですが、なぜこれでコンパイルが通るのでしょうか? ちなみに「追加のインクルードディレクトリ」に何も指定しない状態では、includeファイルを開けないと出てコンパイルエラーとなります。 なのでこの設定が影響しているのだとは思いますが。

  • Movable Type 4のアーカイブ指定

    先日Movable Type4にアップグレードして、ブログを作りました。 テスト用ディレクトリで作業をして、いざ出来たので、テスト用ディレクトリの中身を一旦ダウンロードして、それを公開するディレクトリにコピーしました。 トップページは問題なく表示されたのですが、アーカイブにあるページを見ようとすると、テスト用ディレクトリに行ってしまうので困っています。 ftpでindex.htmlのパスを公開用ディレクトリに変更しても、アーカイブファイルについてはどうにもなりません。 これはもしかして、テスト用のディレクトリにあったファイルをコピーしたから仕方ないのであって、最初から公開用ディレクトリで作り直さないとだめでしょうか。 ご存知の方、どうかよろしくお願いします。

  • MT3.1でエントリーを公開するとサイドバーが消える

    MT3.1でエントリーを公開するとサイドバーが消えてしまいます。 サイドバーがあるべき部分が背景のみになってしまします。また記事が長かったり、エントリーが増えると本文自体途中で消えてしまいます。高さだ固定されているようです。 エントリーを全て削除すると元に戻ります。 cgiファイルは全て755。dbディレクトリは777、blogディレクトリは755です。何が悪いのでしょうか… 

    • ベストアンサー
    • CGI
  • unzipで解凍先のパスを指定できますか?

    unzipコマンドで、解凍先のディレクトリを指定することは可能でしょうか? unzip /home/a/test /home/b/test.zip 以下の例ではbさんのzipをaさんの下に解凍したいのですが testというファイルがないというエラーになりました。 http://itpro.nikkeibp.co.jp/linux/command/unzip.shtml を見たらできそうですが指定方法がわかりませんでした。

  • VBA ファイルを開くダイアログでの初期表示にファイルサーバーを指定

    こんにちは、Excelでマクロを組んでいます。ネットワークにファイルサーバーのNasを利用しているのですが、ファイルを開くダイアログで初期表示されるディレクトリをNasのフォルダに指定したいと思っています。 ChDir "\\Nas\最初に開きたいフォルダ" Application.GetOpenFilename で指定しても、なぜかローカルのマイドキュメントが開かれてしまいます。ローカルのマイドキュメントはカレントディレクトリに設定されていますが、例えば ChDir "C:\テストフォルダ名"としてから Application.GetOpenFilename とすると、きちんとテストフォルダ名が最初に表示されます。Nasへの接続の問題でしょうか?でも、Nasへログオンするにはユーザー名やパスワードを指定するはずなので、ログオンしていなかった場合はそれを聞いてくると思われるのですが・・・いかがでしょう?パスが間違っていたら、パスが間違っていますというエラーメッセージになると思いますし、、、よろしくお願いします。

  • ディレクトリの分からないファイルのパスを調べる

    php 5.2.8 Linux です。 ディレクトリの分からないファイルのパスを調べたいです。 glob("*/ファイル名")やrealpath("*/ファイル名")などとしましたが 出てきません。ディレクトリにワイルドカードは使えないのでしょうか? 別の方法でも良いのでphpでディレクトリの分からないファイルのパスを調べる方法があればお教え願います。よろしくお願いいたします。

    • ベストアンサー
    • PHP