设置简单网站的最佳方式是什么?

时间:2010-07-03 03:39:51

标签: php html frameworks header footer

我多年来一直在制作网站。他们中的大多数往往不到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的文件

我知道这一切似乎都有点愚蠢,因为有没有最好的办法去做呢?

根据页面的不同,我的一个主要导航项目将具有“活动”类。这项工作是用PHP完成的,但我想知道使用javascript是否是一个更好的解决方案。

我会感谢任何回复,谢谢。

4 个答案:

答案 0 :(得分:2)

只是我头脑中的一些事情:

  • 是的,坚持使用PHP active课程。有些人禁用了JavaScript。
  • 您可能希望使用网址重写来对网址进行去除。 (例如,URL栏中的http://www.example.com/about会在服务器上重写为http://www.example.com/index.php?z=about
  • 如果网站变大,您可能希望使用数据库而不是文件夹中的文件。
  • 我将header.phpfooter.php放在文档根目录之外,或放在一个不允许访问403 for Forbidden错误的包含文件夹中。

答案 1 :(得分: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文件中设置各种变量。使用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>

这样可以保持简洁。

答案 2 :(得分:0)

使用最简单的东西来做你需要的东西。你所描述的似乎很好,如果它对你有用,那就继续吧。是的,使用PHP生成“活动”类 - 事实上,尽可能多地使用PHP,这样您就不需要依赖JavaScript了。

答案 3 :(得分:0)

为什么不使用简单的模板框架?它们相对简单易懂,并且会让您接触到一些久经考验的方法。

您还将获得使用已有资源的经验,而不是自己编写所有内容。

您不需要自己做出初步设计决策,这样可以让您更快地开始运行。 (在这种简单的情况下)

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

选择一个包含良好文档和活跃开发者社区的文档。