人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

htmlの質問です
たくさんのhtmlファイルが使われているサイトを運営しています
今までheadの中身や上部に表示されいているメニューバーを変更する場合は
html一括変換ソフトで置換して対応してきましたが、更新に時間がかかります。
外部cssを使っているのですがそれと同じように1箇所のhtmlを変更すれば全てのhtmlが変わるようにしたいのですがどうすればいいでしょうか?
使ってるサーバーはさくらレンタルサーバーです

●質問者: takanii
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 5/5件

▽最新の回答へ

1 ● きゃづみぃ
●40ポイント

http://news.mynavi.jp/news/2008/02/01/042/index.html

HTMLファイルをインクルードしてやればいいと思いますよ。


2 ● Cherenkov
●40ポイント

WordpressとかCMSで管理する。CMSならヘッダー、サイドバー、メニュー、本文と部品に分かれてる。


3 ● うぃんど
●40ポイント

案1)ブログシステムやCMSを使う

管理画面でデザイン変更を行えばすべてのページに反映できる。
メニューなど固定部分はヘッダー、サイドバー、フッターなどに共通のものを出せる。
リンク、サイトマップなども自動的に追従できたりする。
移植にはかなりの手間がかかるが移植後のメンテナンスは非常に楽になる。

ライトプラン以外のさくらのレンタルサーバ、さくらのマネージドサーバでは、
Wordpress、MOVABLE TYPE、Xoops Cubeが準備されています。
http://www.sakura.ne.jp/function/cms.html


案2)SSIを使う

さくらのレンタルサーバ、さくらのマネージドサーバは標準で対応
http://support.sakura.ad.jp/manual/rs/tech_cgi.html
全HTMLファイルに対し、共通ファイルを読み込むための一行を書き加える必要がある。
一度書き加えれば、あとは共通ファイルをいじるだけで情報を反映できる。

<!--#include file="menu.txt"-->

上記さくらのサポートページでは htaccess 書き換え不要となっているが、
拡張子htmlでもSSIを利用可能にするためには下記の一行を書き加える必要がある。

AddType text/x-server-parsed-html .html .htm


没案)JAVAScriptでのインクルード

環境依存となるためお勧めはできない。


4 ● gatchan
●40ポイント

サーバースクリプトでインクルードするのが一般的な方法かと思います。
JavaScript等だと、ユーザー環境によっては使えない可能性もなくはないので。
まず、PHPが使えること。
読み込み元のhtmlの拡張子を変えたくない場合は.htaccess等によってサーバーの設定を変更できること、
などが前提となりますが。

以下のサイト等を参考にしてください。
共通部分のインクルード-ホームページ制作-
http://seo.k-m-k-m.com/hp/include/

コード例
[読み込み元] index.html (もしくはindex.php)

<html>
...
<body>
<!--例えばナビゲーションメニューを読み込み-->
<?php include("navi.html"); ?>

...コンテンツ...
</body>
</html>

インクルードする拡張子(ここではnavi.html)は .phpでも構いません。また、ファイルパスはindex.htmlからのパスを指定してください。
ナビゲーション等のhtmlソースを書いたものを用意してください。
おそらく、これでうまくいくはずです。

別の方法として、ローカルの作業ベースだと、Dreamweaverのライブラリ機能を利用するという方法でもできます(ただ、この場合は、作業は1ファイル変更ですが、Dreamweaverが関連ファイル全てを更新変更してしまいますが)

以上、お試しください。

---
.htaccessによるアクセス制御|さくらのレンタルサーバ|さくらインターネット公式サポートサイト
http://support.sakura.ad.jp/manual/rs/web/htaccess.html


gatchanさんのコメント
あとサーバーサイドならSSIもあります。 とほほのSSI入門 http://www.tohoho-web.com/wwwssi.htm 例. <!--#include file="navi.html" -->

5 ● a-kuma3
●40ポイント

メニューの変更がちょいちょいある、ということであれば、その部分を切り出して、フレームにすれば良いんじゃないかと、思うんですけど。

後、外部ファイルで javascript のファイルをひとつ読み込むようにしておくと、ちょっとした変更が楽に済む 可能性 があります(最初は、空っぽで良い)。
万能ではありませんけどね。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ