1

私は何年もの間ウェブサイトを作っています。それらのほとんどは10ページ未満である傾向があり、プログラミングをまったく必要としません。経験豊富な人なら誰でも、この種のウェブサイトを立ち上げるための標準的または最良の方法を勧められるのではないかと思います。私が何を意味するのか、もう少し詳しく説明しましょう。

これは私が過去に作ったウェブサイトの典型的な構造です。

/css
/images
/js
/html
/html/about.html
header.php
footer.php
index.php

この場合、index.phpの上部にheader.phpファイル、下部にfooter.phpファイルが含まれ、PHPのswitch関数を使用して、表示したいコンテンツのさまざまなケースを処理します。たとえば、URLバーにindex.php?z = aboutと表示され、index.phpが/htmlでabout.htmlというファイルを検索します。

これを行うための最善の方法は本当にあるので、これはすべて質問するのが少し馬鹿げているように見えることを私は知っていますか?

ページによっては、私の主要なナビゲーション項目の1つに「アクティブ」クラスがあります。作業はPHPで行われますが、javascriptを使用する方が良い解決策になるのではないかと思います。

返信をいただければ幸いです。ありがとうございます。

4

4 に答える 4

2

私の頭のてっぺんからほんの少しのこと:

  • はい、activeクラスはPHPを使用します。JavaScriptが無効になっている人もいます。
  • URLの書き換えを使用して、URLを非醜くすることをお勧めします。(例:http://www.example.com/aboutURLバーでサーバー上でに書き換えられますhttp://www.example.com/index.php?z=about
  • サイトが大きくなった場合は、フォルダー内のファイルの代わりにデータベースを使用することをお勧めします。
  • header.phpドキュメントルートの外、footer.phpまたは403Forbiddenエラーでアクセスを許可しないincludesフォルダーに配置します。
于 2010-07-03T03:44:45.883 に答える
2

サンプルサイトのzipファイルをhttp://superuntitled.com/default/default.zipにアップロードしました。よろしければご覧ください。

私はすべてのhtmlコンテンツをインクルードされたファイルに保存し、index.phpファイルを残してこれらのファイルをtemplate.phpファイルに呼び出すのが好きです...

require_once('common.php');

$view = (isset($_GET['page']) && $_GET['page'] != '') ? $_GET['page'] : '';

switch ($view) {
    case '' :
        $view = 'home';
        $section    = 'templates/template-default.php';
            $pageTitle = "The Homepage";        

        break;

    case 'about' :
        $view = 'about';
        $section = 'templates/template-about.php';  
            $pageTitle = "The About Page";          
    $sidebar = 1;

        break;

    case 'notfound' :
            $section    = "templates/template-not-found.php";   
            $pageTitle  = "404 not found";
        break;
}

require_once 'view/template.php';

テンプレートファイルは次のように単純です。

require_once('header.php');  
if(isset($sidebar))include("view/sidebar.php"); 
echo "<div id='content'>";
    require_once (SERVER_URL.$section);
echo "</div>";
require_once('footer.php');  

このようにして、index.phpファイルにあらゆる種類の変数を設定できます。「きれいなURL」はhtaccess(RewriteRule ^([-\A-Za-z0-9\_]*)$ index.php?page=$1)で簡単です。

common.phpファイルには、すべてのグローバル、セッション変数が含まれ、データベース接続ファイルとphp関数ファイルが含まれています。

アクティブなクラスに関しては、navセクションで$ view変数をチェックできます。私は、単純なphp関数を使用します。

function curPage($current, $pageTitle) {
  if ($pageTitle==$current) 
  echo " class=\"selected\"";
}

そして、ナビゲーションセクションでは、単にこの関数を呼び出します。

<a href="about" <? curPage('about',"$view"); ?> >About</a>

このようにして、物事をクリーンでシンプルに保ちます。

于 2010-07-03T03:59:02.340 に答える
0

最も単純なものを使用し、必要なことを実行します。あなたが説明したことは問題ないようです、そしてそれがあなたのために働くならば、それを進めてください。そして、はい、「アクティブな」クラスを生成するためにPHPを使用します。実際、JavaScriptに依存する必要がないように、PHPでできる限りのことを行います。

于 2010-07-03T03:48:02.247 に答える
0

シンプルなテンプレートフレームワークを使ってみませんか?それらは理解するのが比較的簡単で、いくつかの試行錯誤された方法論にあなたをさらします。

また、すべてを自分でコーディングするのではなく、すでに利用可能なリソースを使用する経験も得られます。

最初の設計上の決定を自分で行う必要はありません。これにより、起動と実行が高速化されます。(このような単純なケースでは)

例: http ://www.smarty.net/

優れたドキュメントとその背後にあるアクティブな開発者コミュニティを備えたものを選択してください。

于 2010-07-03T12:11:55.777 に答える