こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

どのページにも同じメニューを表示させる方法を教えてください

ホームページビルダー10を使ってネットショップのホームページを作り始めました。

レイアウト枠と表を使用して画面の上と下の部分と
左側にメニューなどを作成したのですが、
これをどのページにも表示させるには、
どのような機能を使えばいいでしょうか。

ユーザーテンプレートというのに登録して
そのユーザーテンプレートを各ページを作成す時に
使用しようとしたのですが、
この場合、もしユーザーテンプレートの内容が変わった時
(メニュー項目がひとつ増えた等・・)、
既に作成したページにその内容の変化は反映されないように思われます。

どのネットショップのHPを見ても、
だいたい上と下、左側のメニューはどのページにも
同じ内容が表示されるようになっていますが、
これはどのような作成方法を作るのでしょうか。

ひとつSSIという方法を教わったので、
これはこれから試してみようと思っています。
これが基本的な方法なのでしょうか?

詳しい方ぜひ教えてください。
本もだいぶ買い込みましたが参考になる内容が
見つかりませんでした。

どうぞよろしくお願いします。

投稿日時 - 2006-04-20 11:27:30

QNo.2102923

すぐに回答ほしいです

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

ホームページビルダー固有の機能は判りません。

ごく一般的な制作方法をアドバイスさせて頂きます。

制作方法として、出来ることであれば、CSSを利用したほうが良いと思いますが、テーブル(表)で作成する方法を書きます。理由はテーブルの方が簡単だからです。

まず、商品ページを1個作成します。

1、1行2列のテーブルを作成します。
全体の幅を700pxとして、メニュー部分左側を200pxとして商品を掲載するスペースを500pxとします。大きさは自由に変更して頂いてかまいません。

2、左側のスペースに、10行1列のテーブルを作成する。行数は必要分作成してください。この部分をメニューにします。

3、上記2番で作成したHTMLファイル本体をコピーします。

4、コピーしたHTMLファイルを判りやすいファイル名に変更します。この時点でメニューが同じファイルが2個出来たことになります。

5、同じように必要分のHTMLファイルを作成します。

6、必要分のファイルを作成したら、一番初めに作成したファイルを開いて、各HTMLファイルへのリンクを作成します。

7、上記の作業を全てのファイルに行います。

8、最後に各ページで右側の部分に商品掲載して、ファイルを完成させます。

上記の作業を全てのファイルに行います。ファイルが100個あれば、100回行うということです。大変だと思いますが、頑張ってください。

ホームページ作成ソフトを利用しているのであれば、一番初めに作成したメニュー部分のみを、コピーして、他のファイルに貼り付け(ペースト)することも可能です。

以上
考え方として、まずは基本になる商品ページを作成し、その後にそのファイルを必要分コピーし、リンク先の修正、商品の掲載作業等を行うということです。

ちなみに、メニューが増えたときは全てのファイルを修正することになります。上記の方法ではこの作業を避けることは出来ません。

作業を少しでも軽減させるので有れば、商品をカテゴリ別にして、トップページには各カテゴリへのリンクのみにすれば、メニューが増えた場合、そのカテゴリ内のみの修正で済みます。

それが嫌ななら、フレームを使うことになります。
フレームとは、単に製作者の作業量を減らすだけで、利用者には何もメリットがないと思っています。ご理解して頂いてる通り、SEO敵にも不利です。

もう少しスキルが付いてきたら、SSIやCGIを利用して作業の簡素(軽減)化も行えると思います。ちなみに、SSIは利用できない所も多いので事前にご確認ください。CGIはショッピングカートのCGIが有りますので、利用すれば作業が軽減されます。

また、話が少しそれますが、ショッピングサイトの作成を考えているみたいですが、本業が販売ならサイトの作成に時間を割かないで、本業に力を入れたほうが良いと思います。

サイトの構築は業者に依頼するなり、レンタルサーバのショッピングカート等を利用したほうが、簡単で安全なサイトが構築できると思います。

合わせてご検討ください。

ショッピングカートが利用できるレンタルサーバ
http://estore.co.jp/

ご自身で頑張るのも大切だと思いますが、思っているほどホームページの作成は簡単な物では無いことをご理解ください。

投稿日時 - 2006-04-23 15:11:47

お礼

ご回答ありがとうございました。
とても参考になりました。

まずはユーザーテンプレートを利用して
全部のページを作ることにしました。

投稿日時 - 2006-04-26 17:40:40

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.5

まず目的を明確にしましょう。という事で「メニューを各ページに付けたい。」という事で。

次に手段の検討で、まずは完成品をupする方法と材料をupして閲覧時に合成する方法、そして完全に見た目は合成品となる様にするという方法・・・。


「完成品をup」という考え方は、一番簡単な例が、全ページに同じ「メニュー内容」の記述を手作業でするという方法です。手間はかかるが知識は一番少なくてすみます。
更新時のupするファイルはメニューを含んでいる全ページです。
また、サーバにもPCなどにも一番負荷がかからない方法と思われます。
その分、作成者に負荷がかかる訳ですが・・・。

で、その作成者にかかる負荷を軽減する方法として、ツールを用いる事です。既に質問文にて「ユーザーテンプレート」と提示されていますね。
これにより作成者の負荷は軽減されます。
また、完成品のupなのでサーバやPCにも負荷は軽いです。(他の手段との比較で)
まぁそれでも更新時のupするファイルはメニューを含んでいる全ページという手間は完成品をupという前提を選ぶ以上、回避は困難です。


次に「材料をupして閲覧時に合成」という考え方は、CGIや JavaScript でソースを書き出すというか書き換えるというか、動的に表示するという事です。
この場合は、メニューにあたるページというかデータを別ファイルでupし、他にそれを処理する記述もupしておけば良いので、更新管理は楽です。ただし一番知識を必要としますし、環境によっては選択すら不可・・・。
また、サーバまたはPCなどにも処理の為の負荷が余計にかかります・・・。
とはいえ、メニューを変える時に1つのファイルだけを書き換えてそれをUPするだけで済むのは便利です。
ただあたりまえの事ですが、メニューの領域など事前にしっかりと設計をしておかないと意味がありません。
そしてメニューの書き換えはその制約に縛られるという事を覚悟する必要があります。
メニューの更新の度に本文のレイアウトもいじらないといけないとかCGIの処理も変更しないといけないとなると、動的ページとした意味,効果がありませんというか逆に手間ともなります・・・。


という事で、「材料をupして閲覧時に合成で、見た目は完成品」・・・。フレームの使用が考えられます。
フレーム未対応のブラウザをどう扱うかによって検討の余地はあります。
これは知識もあまり必要とせずその上で手間もあまりかからない。サーバやPCなどへの負荷も割りと少ないと・・・。



などと列挙した上で、作成者側の優先度を改めて意識して、何かしら妥協して諦める覚悟をして選択すれば良いと思います。
まぁ理想は「ネットショップ」という事から提示商品も容易に更新との考えで、「材料をupして閲覧時に合成」のCGI利用が理想かと思います。
商品データを管理するだけで、全ページが管理できるかも・・・。
まぁ在庫管理と連動するなら、CGIは必須でしょうが・・・。まぁ業務でなければ関係ないでしょう・・・。



>どのネットショップのHPを見ても、
提示する商品自体も入れ替わるでしょうから、
それこそ全体がCGIで処理され
システム化されていると思いますが・・・。
それこそかなり知識が必要ですが・・・・・。


尚、私のお勧めは、とりあえず全ページに同じメニューを書く事をお勧めします。
ここで質問している時点で、学ぶ必要があるのは確実なので、まずは手間でも出来る限り全て書く事です。
すると何が手間であるとか、何が同じであり何に規則性があり何が任意であるかなど、感覚がつかめると思います。

つぎはぎで作成すると、その都度の作成者の知識レベルで全然違う発想になりかねないので(1から作り直し)要注意です。

投稿日時 - 2006-04-22 03:23:59

お礼

ご回答ありがとうございました。
とても参考になりました。

まだまだ知識が足りないので、
まずは全ページに同じメニューを書くことにしました。

投稿日時 - 2006-04-26 17:39:29

ANo.4

参考になるかどうかわかりませんが・・・

>どのネットショップのHPを見ても、
>だいたい上と下、左側のメニューはどのページにも
>同じ内容が表示されるようになっていますが、
>これはどのような作成方法を作るのでしょうか。

某大手ショッピングサイトの場合、ヘッダー、左メニュー基本的に全ページ共通です。ヘッダー、フッターを編集する特別メニューがあって、そこで編集したものがすべてに反映されます。ちなみにそのサイトはjavascriptやCSSが不可で、HTMLは3.2で作らないといけないので結構大変です。

大手じゃないほうが自由度はあるのかな?

>ネットショップのホームページを作り始めました。

システムも構築されるのですか?
私も共通部分はSSIをオススメします。

投稿日時 - 2006-04-20 22:09:27

ANo.3

どちらかというとSSIなどで定型の処理をいれる
と間違いがないかと。サーバーが対応していれば
どんな端末からでも同じメニューがだせます。

あとはjavascriptで外部ファイルから読み込む
ようなものを全てのページに貼っておけば
便利かもしれません。これはクライアント
(ブラウザ)に依存しますので極端に効果は期待
できません。

投稿日時 - 2006-04-20 12:36:19

再び#1です。

>SEO対策
そこをお考えだったのですね。
確かにSEO対策にはよくないのです…。
私が一番オススメしたいのは、CSSなのですが…正直初心者の方はとっつきにくいです。
が、初めから覚えてしまえるのであればこれが一番いいんですよ。
テーブルレイアウトも本当はお勧めできない方法なんですね。
完全にCSSで組んで、CSSを外してもサイトとして成り立つものを作る事ができればいいんですが…ちょっと難しいかもしれません。

投稿日時 - 2006-04-20 12:36:06

お礼

ご回答ありがとうございました。
CSSというのはスタイルシートのことでしょうか。
もしこれが最善の方法でしたら
これからネットや本で勉強します。
(ただショップ作りはかなり急いでいますが??)
おすすめのサイトや本があれば教えていただけますか。

投稿日時 - 2006-04-20 13:17:20

こんにちは。

フレームを活用なさってはいかがでしょうか?
フレームとは、ひとつの画面を複数に区切ることです。
例えば、上下ふたつに分け、上にメニューを設置すれば、そこをクリックすることで下の部分だけを切り替えることができます。
デメリットとしてはあまり多くフレームを使うと、重くなってしまうことでしょうか。
詳しい方法は若干複雑になりますので、もしこの方法をご活用なさる場合は、改めてご質問頂ければお答え致します。

少々気になるのですが、レイアウト枠は、ブラウザによっては上手に表示されない場合があります。できれば避けたほうが無難かもしれません。

>どのネットショップのHPを見ても~
これは恐らく、フレームとテーブルレイアウトを組み合わせて使っているのだと思います。

>SSI
文面から察するに、HP作成は初めてでしょうか?
SSIは若干難しいかもしれません。
まずは、単純にHTMLのみで作ってみてはいかがでしょうか?
作りこむうちに自然に実力がついてきますよ。

参考URLはビルダーの解説です。
初心者向けなのでとてもわかりやすいですよ。

参考URL:http://hpb.cool.ne.jp/

投稿日時 - 2006-04-20 11:48:28

お礼

早速ご回答ありがとうございます!

フレームはSEO対策には良くないといろいろなHPで見たので、
ネットショップでは使用しないものと思い込んでいました。

フレームとテーブルレイアウトを組み合わせればできるんですね。
フレームのこと、これからちょっと調べてみます。

投稿日時 - 2006-04-20 12:11:04

あなたにオススメの質問