Skip to content
编程技术网站源码
PHP CSS JavaScript HTML
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ajax
css
ctf
fonts
images
introduction
js
submit
template
tool
.gitignore
403.html
404.html
500.html
BUGS.md
NEWS.md
README.md
article.php
article_content.php
book.php
config.php
contact.php
favicon.ico
index.php
message.php
subsite.php

README.md

www

编程技术网站源码

模板来源:http://www.cssmoban.com/cssthemes/8385.shtml

实例网站:http://www.eonew.cn/

最近更新: NEWS.md

近期问题: BUGS.md

引用库

  1. Jquery
  2. Bootstrap
  3. showdown
  4. font-awesome

模块简介

绝大部分文章使用markdown写的,欢迎大家对文章进行填充和修正

1. 全局配置文件:config.php

所有的网页都会引用这个文件,其中定义了ROOT_DIR全局根目录,一些数据库的信息,还有relative(string $file)函数,该函数依赖于ROOT_DIR,主要功能为根据ROOT_DIR全局根目录来计算其传入的文件路径的相对偏移。这样即使移动了某个Php文件,仅需修正开头的

include_once('./config.php');

即可让整个文件的引用目录自动校正。

relative(string $file) 要求ROOT_DIR全局根目录是以/结尾,所以在config.phpROOT_DIR是下面这样引用的:

define('ROOT_DIR', dirname(__FILE__).'/');

在计算完相对路径之后,程序会定义全局宏RELATIVE_PATH,下次调用该程序的时候会先判断有无全局宏RELATIVE_PATH,若有的话直接返回。

2. 全局源: template/source_footer.php 和 template/source_header.php

这里面引用了我们需要的全局jscss文件,为了网页的速度,设计的时候是将css文件放在template/source_footer.php当中,js文件放在template/source_header.php当中。

3. 全局页眉: template/source_header.php 全局页脚: template/footer.php

每个网页的页眉和页脚都是一样的,而具体的内容就定义在文件里,通过修改这两个文件可以将整个站点的页眉和页脚的样式改变。

4. style-mod.css 和 global.js

除了这两个文件外,其它的都是模板原有的,很少经过修改,style-mod.css 主要对后面加的一些html内容进行修正,global.js 设计的是一些全局ajax和jq 的效果,还有classmarkdown的文章转化为html,具体实现如下:

var converter = new showdown.Converter();

$("article.markdown").each(function(){
    var raw = $(this).html();
    var html = converter.makeHtml(raw);
    $(this).html(html);
});

5. 主要的动态网页

  • book.php
  • message.php
  • article.php
  • article_content.php

6. 编程入门模块: introduction

introduction/content.php来显示其具体内容,其内容由下决定:

// 读取配置文件
$data = json_decode(file_get_contents('data.json'),true);

具体的配置文件格式如下:

{
    "c": {
        "description": "C语言入门",
        "keywords": "C语言入门",
        "title": "C语言入门",
        "name": "C语言",
        "markdown_file_path": "./c.md",
        "sidenav": [
            {
                "url": "https://www.bilibili.com/video/av2831981/?p=1",
                "title": "C语言视频教程"
            },
            {
                "url": "http://www.runoob.com/cprogramming/c-tutorial.html",
                "title": "推荐网页文档"
            }
        ]
    }
}

网页的内容由md文件来编写

7. submit模块

该模块主要处理客户端发送过来的数据。该模块仅用于Ajax交互提交数据,里面的文件本身不会返回网页内容。

注意:message.php提交的内容由该网页自行处理。

8. Ajax模块

该模块是为了缓解站点带宽压力而设计的Ajax交互网页

You can’t perform that action at this time.