CMS「すぐ使えるCGI」の開発者がご質問にお答えします

 

SSIでHTMLに「短い一覧:画像表示付」を組み込む (No. 306)

回答日: 2008-02-15

質問

「短い一覧」に画像表示を設定し、SSIで「public_html/index.html」に組み込んだ際に「短い一覧」の画像が表示されません。
管理画面の「チェック」「短い一覧」では画像は表示されています。

「public_html/index.html」での画像へのパスを見ると「写真書き出しディレクトリ名」が抜けているようです。

環境変数は以下の通りに変更しています。
$conf{web_dir} = '../../../jinbutu/';
$conf{relative_web_dir} = '../../../jinbutu/';

お忙しいところすいませんがご教授ねがいます。


ちなみにディレクトリ構造は以下を参考に・・・

/public_html/  ←ウェブサイト用ディレクトリ
  |
  |-- sugu_admin/  ←管理用ディレクトリ
  |    |
  |    |-- jinbutu/  ← 人物写真管理用
  |         |-- admin/
  |         |-- data/
  |         |-- templates/
  |         |-- tempfiles/
  |
  |-- jinbutu/  ←人物写真書き出しディレクトリ

投稿日時: 2008-02-15 16:32

回答

SSI で短い一覧を組み込んだ場合、HTMLページが一つ上の階層にある場合と同じになります。

>「public_html/index.html」での画像へのパスを見ると
>「写真書き出しディレクトリ名」が抜けているようです。

ご認識の通り、ここが問題の原因ですので、以下のように設定して下さい。

■設定方法

◇1.templates/article/short_list.txt を編集

テキストエディタで templates/article/short_list.txt を開いて、
<img> タグの src 属性に、トップページから書き出しディレクトリ「jinbutu」へのパスを追加して下さい。

トップページの表示、管理画面からの確認の両方の場合に期待通り表示されるようにするには、スラッシュ「/」を頭に付けて、サーバルートからのパスで指定します。

============================================================
変更前の<img>タグ(例)  templates/article/short_list.txt 内
============================================================
<img src="%_d_%/%_filename_escaped_%"
    alt="" width="50" vspace="4" hspace="4">
============================================================

============================================================
変更後の<img>タグ(例) templates/article/short_list.txt 内
============================================================
<img src="/jinbutu/%_d_%/%_filename_escaped_%"
    alt="" width="50" vspace="4" hspace="4">
============================================================

◇2.アップロード

編集したファイルをサーバ上の同じ位置に上書きアップロードして下さい。

◇3.編集操作

管理画面から、1回記事編集操作を行って下さい。

編集操作を行うことにより、生成ページにテンプレートの変更が反映されます。
編集を行っても変更が反映されない場合、ブラウザの表示を再読み込みしてみて下さい。
回答日: 2008-02-15