2010-07-03 135 views
1

我一直在制作网站多年。他们中的大多数往往不到10页,根本不需要任何编程。我想知道如果有很多经验的人可以推荐标准或最好的方式去设置这些类型的网站。让我更详细地解释我的意思。建立简单网站的最佳方式是什么?

以下是我过去所做的一个网站的典型结构。

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

在这种情况下,我的index.php包括顶部的header.php文件,并在底部的footer.php文件,我使用PHP的开关函数来处理不同的情况下,有关的内容,我会喜欢查看。例如,我可能在URL栏中看到index.php?z = about并且我的index.php将在/ html中查找名为about.html的文件

我知道这一切似乎有点愚蠢,因为是真的有一个最好的方法去做这件事?

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

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

回答

2

只是把我的头顶部的几件事情:

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

我确实记得在htaccess文件中使用mod_rewrite重写URL之前的一次。谢谢你提醒我。 您的建议将页眉和页脚文件粘贴到/ inc文件夹听起来不错。我通常会将这些文件留在根目录中,因为我似乎总是陷入困境。我会看看我能否做到这一点,以免我再次遇到这个问题。 – Justin 2010-07-03 03:50:59

+0

数据库连接文件也应该保存在文档根目录 – RSK 2010-07-03 04:13:36

0

使用什么是最简单的,但你需要什么。你所描述的看起来很好,如果它适合你,请继续。是的,使用PHP来生成“活动”类 - 事实上,尽可能在PHP中做到这一点,这样就不需要依赖JavaScript。

+0

有趣的是,我想避免使用PHP来处理我的标题,内容和页脚情况,所以我开发了一种jQuery的方式来处理不同的内容页面。你可以在这里看到它:http://stackoverflow.com/questions/3155828/how-to-reference-pound-sign-in-jquery 但是,一个朋友告诉我,你做了同样的事情,而不是依靠JavaScript为这与页面导航一样重要。 – Justin 2010-07-03 03:54:14

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函数文件。

至于活动课,$视图变量可以对在导航部分进行检查,我用一个简单的PHP函数:

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

而在导航部分,我只需调用这个函数:

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

这种方式保持干净和简单。

+0

我有机会获得该zip文件的副本吗? – 2012-07-05 12:32:56

+1

我已更新链接。 – superUntitled 2012-07-17 14:18:36

0

为什么不使用简单的模板框架?他们相对容易理解,并会让您接触到一些经过验证的测试方法。

您还将获得使用已有资源而不是自己编码一切的经验。

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

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

选择一个具有良好的文档和它背后活跃的开发者社区。

相关问题