CMS 还是仅基于 HTML 的站点?
CMS or just HTML based site?
我是 WebDesigner 新手,有一个问题困扰了我一段时间。我使用 HTML 和 CSS 从头开始编写网站。这些网站上有几个页面,到目前为止,我只是将基本布局从 index.html 复制到例如about.html,然后手写那个页面的内容。现在,如果需要进行小的调整,例如菜单(一个额外的选项卡),我必须手动将新代码复制到所有页面。不用说这是浪费时间,所以我考虑尝试像 Drupal 和 Joomla 这样的 CMS。
我尝试了这些 CMS,但就是无法掌握它(在我看来,文档令人困惑,对于初学者来说可能有点过于技术化)。我也喜欢手工编码我的网站,因为它给了我很多可能性。
问题:有没有一种方法既可以为您的网站创建模板,又可以手动编码内容?
你会用 PHP.
在 php 中,您可以使用常规 html 代码,但这允许单个 header.php、navigation.php、footer.php 等...待创建。
然后您可以使用 php 包含将这些部分中的每一个都调用到您的站点中。
<?php include('footer.php'); ?>
要对此进行扩展,header.php
会说包含所有 header 代码。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link type="text/css" href="style.css">
<title>my site</title>
</head>
<body>
然后 navigation.php
将包含导航代码。
<nav>
<ul>
<li><a href="#"></a>home</li>
<li><a href="#"></a>stuff</li>
<li><a href="#"></a>products</li>
<li><a href="#"></a>blog</li>
</ul>
</nav>
那么 footer.php
可能看起来像...
<footer>
<div class="footer-stuff"></div>
</footer>
</body>
</html>
CSS
要回答关于每页不同 css 的问题,您可以执行以下操作...
在 header.php
中替换 <link href="" rel="">
以使用 php 变量 $page_css
,您将把它添加到站点中的每个 page.php
文件中.如下所示。
header.php
在下面的代码片段中;将 css-folder/
更改为 css 在站点中的位置,如果它在根文件夹中,则将其替换为 /
.
<head>
<meta charset="utf-8">
<?php if(isset($page_css)) { foreach($page_css as $value) { ?>
<link href="css-folder/<?php echo $value ?>" rel="stylesheet" media="screen"/>
<?php } echo "\n";}?>
<title>My Site</title>
</head>
<body>
我已将对 CSS 的调用放在 foreach 循环中,它将输出与您在下面添加的 array()
中添加的文件一样多的 css 文件。
page.php
将此添加到单个页面文件的顶部,例如。 index.php
...
<?php
$page_css = array('index.css');
?>
将 index.css 替换为您的 css 文件名。
如果您要添加多个 CSS 文件,那么您可以用逗号分隔它们。
<?php
$page_css = array('index.css', 'about.css');
?>
技术发展得非常快,您有远见摆脱静态开发是件好事。 PHP 是进行动态站点开发的基本步骤,并开始从您周围的框架和样板中学习。
Github是开源协作的地方,mercurial是另一个选择。由于您的站点会不时扩展,因此最好继续使用版本控制系统。
归根结底,答案很长,路径也很长,抓紧时间,但最好先深入了解地面技术。地面技术有CSS、JS、PHP、HTML5.
我最近使用的CMS是Craft CMS (www.buildwithcraft.com)。它对小型网站是免费的,并且可以很好地扩展到更大的网站。
同样值得一看的 CMS 是 Perch 和 Kirby CMS。
还有一种可能性(虽然很新)是使用静态站点生成器,例如 Assemble。
我是 WebDesigner 新手,有一个问题困扰了我一段时间。我使用 HTML 和 CSS 从头开始编写网站。这些网站上有几个页面,到目前为止,我只是将基本布局从 index.html 复制到例如about.html,然后手写那个页面的内容。现在,如果需要进行小的调整,例如菜单(一个额外的选项卡),我必须手动将新代码复制到所有页面。不用说这是浪费时间,所以我考虑尝试像 Drupal 和 Joomla 这样的 CMS。 我尝试了这些 CMS,但就是无法掌握它(在我看来,文档令人困惑,对于初学者来说可能有点过于技术化)。我也喜欢手工编码我的网站,因为它给了我很多可能性。 问题:有没有一种方法既可以为您的网站创建模板,又可以手动编码内容?
你会用 PHP.
在 php 中,您可以使用常规 html 代码,但这允许单个 header.php、navigation.php、footer.php 等...待创建。
然后您可以使用 php 包含将这些部分中的每一个都调用到您的站点中。
<?php include('footer.php'); ?>
要对此进行扩展,header.php
会说包含所有 header 代码。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link type="text/css" href="style.css">
<title>my site</title>
</head>
<body>
然后 navigation.php
将包含导航代码。
<nav>
<ul>
<li><a href="#"></a>home</li>
<li><a href="#"></a>stuff</li>
<li><a href="#"></a>products</li>
<li><a href="#"></a>blog</li>
</ul>
</nav>
那么 footer.php
可能看起来像...
<footer>
<div class="footer-stuff"></div>
</footer>
</body>
</html>
CSS
要回答关于每页不同 css 的问题,您可以执行以下操作...
在 header.php
中替换 <link href="" rel="">
以使用 php 变量 $page_css
,您将把它添加到站点中的每个 page.php
文件中.如下所示。
header.php
在下面的代码片段中;将 css-folder/
更改为 css 在站点中的位置,如果它在根文件夹中,则将其替换为 /
.
<head>
<meta charset="utf-8">
<?php if(isset($page_css)) { foreach($page_css as $value) { ?>
<link href="css-folder/<?php echo $value ?>" rel="stylesheet" media="screen"/>
<?php } echo "\n";}?>
<title>My Site</title>
</head>
<body>
我已将对 CSS 的调用放在 foreach 循环中,它将输出与您在下面添加的 array()
中添加的文件一样多的 css 文件。
page.php
将此添加到单个页面文件的顶部,例如。 index.php
...
<?php
$page_css = array('index.css');
?>
将 index.css 替换为您的 css 文件名。
如果您要添加多个 CSS 文件,那么您可以用逗号分隔它们。
<?php
$page_css = array('index.css', 'about.css');
?>
技术发展得非常快,您有远见摆脱静态开发是件好事。 PHP 是进行动态站点开发的基本步骤,并开始从您周围的框架和样板中学习。
Github是开源协作的地方,mercurial是另一个选择。由于您的站点会不时扩展,因此最好继续使用版本控制系统。
归根结底,答案很长,路径也很长,抓紧时间,但最好先深入了解地面技术。地面技术有CSS、JS、PHP、HTML5.
我最近使用的CMS是Craft CMS (www.buildwithcraft.com)。它对小型网站是免费的,并且可以很好地扩展到更大的网站。
同样值得一看的 CMS 是 Perch 和 Kirby CMS。
还有一种可能性(虽然很新)是使用静态站点生成器,例如 Assemble。