- 締切済み
ページへのリンク作成で悩んでいます。
ページへのリンク作成で悩んでいます。 現在4つのページをもつWEBサイトがあったとし、それぞれのページに下記のようなリンク(メニュー)があったとします。 1.ホーム 2.商品説明 3.フォーム 4.会社概要 ここで5.Q&Aというページを作成したとして、各ページへのリンクをメニューに追加したいのですが、各ページずつのhtmlを修正していたのでは非常に効率が悪いかと思います。 外部にひとつhtmlのメニュー用のファイルを用意し、それぞれのページの任意の場所で読み込むことができれば、今後メニュー数が増えた際でも外部ファイルひとつ更新すれば楽になるのではないかと思うのですが、その方法が分かりません。 1.上記の方法の是非とやり方 2.他の方法 の2点をご教授いただければと思います。 よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- ORUKA1951
- ベストアンサー率45% (5062/11036)
SEO的にも、様々な条件を考えてHTMLをすべて書きなおすのが良いです。 私は、正規表現で置換可能なテキストエディタを使用しています。 たとえば、 編集 →ファイルから置換にて (<ul class="nav">\n\t\t<li>.*</li>\n\t\t<li>.*</li>\n\t\t<li>.*</li>\n)(</ul>) | 置換 ↓ \1\n\t<li><a href="QA.html">Q&A</a></li>\n</ul> として、[置換]ボタンを押すだけで何百ページあろうがたちどころに置換される。 私は、テキストエディタ EmEditor - Unicode、巨大ファイルにも対応する Windows用定番テキストエディター! ( http://jp.emeditor.com/ )をつかってます。
- yyr446
- ベストアンサー率65% (870/1330)
PHPを使えないなら、 メニュー部をインラインフレーム<iframe>にして外出しするか、 javascriptでAJAXでロードするのが、普通です。 ※フレームセットはもう使わない方がよいでしょう。 ※javascriptオフや、javascript非サポートの端末は見捨てるしか無いです。 ※iframe内や動的生成部分は、検索エンジンの対象外になりますが、 ナビゲーションメニュー的な物なら、外れてもSEO的に悪いとは一概に いえないですが、すべての端末で問題なく操作できると言う点でひっかかり ます。 もう一つ、SSI(サーバーサイドインクルード)という手法がありますが、 最近SSIのページはあまりみかけません。理由は知りません。
- k_yukichan
- ベストアンサー率57% (8/14)
>1.上記の方法の是非とやり方 ・方法1 フレームを使う。<frameset> <frame> タグで検索してみてください。 ※ 古典的な方法です。 HTMLだけで組めて簡単ですが SEO 的に好ましくありません。 ・方法2 リンク部分を JavaScript で用意し、ページごとに、この JavaScript を読み込ませる。 ※ 現実的ではありません。メンテナンスが面倒です。 検索エンジンが JavaScript を実行しないため SEO 的に好ましくありません。 ・方法3 PHP などの サーバ側で動くスクリプトを使う。 ※ おすすめですが、PHP の知識 & PHP が動くサーバ環境でなければなりません。 > メニュー数が増えた際でも外部ファイルひとつ更新... この要件を満たすベストな方法です。 例 <body> <div class="head"><h1>○○株式会社</h1></div> <div class="menu"> <?php include('menu.html'); ?> 【← PHP はここです】 </div> <div class="content"> ここに本文 </div> </body> >2.他の方法 HTML が【数ページ程度】であれば、1ページずつメニューを更新するのも悪くありません。 HTML 中にコメントをわかりやすく書いておけば置き換えも、そう苦にならないです。