惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园_首页
H
Help Net Security
N
Netflix TechBlog - Medium
Apple Machine Learning Research
Apple Machine Learning Research
P
Proofpoint News Feed
A
About on SuperTechFans
V
V2EX
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
宝玉的分享
宝玉的分享
aimingoo的专栏
aimingoo的专栏
F
Fortinet All Blogs
博客园 - 【当耐特】
Microsoft Security Blog
Microsoft Security Blog
Martin Fowler
Martin Fowler
I
InfoQ
Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
Engineering at Meta
Engineering at Meta
腾讯CDC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
B
Blog RSS Feed
U
Unit 42
The Cloudflare Blog
Y
Y Combinator Blog

吐槽大王部落格

在 X (Twitter) 上找 IT 工作靠谱吗? 如何在上游分支被反复重写时优雅地 Rebase 我的 2025 我在经营自己的社交帐号,但可能「玩脱了」 我依然没有学会怎么在网上提出技术问题 我是怎么差点被恶意 npm 包攻击的 我对 Vue Router「动态路由」的一点暴论 不用 eas-cli 编译 React Native (Expo) 应用的 Android 版本 【更正版】简单实现类型安全的、能触发 CustomEvent 的 EventTarget 在 IE11 使用 CSS Grid 实现多列卡片列表布局 自建云游戏服务的尝试(2024 更新) 在 Termux 编译和使用 bwm-ng(需要 root) 如何在已有的 Vue CLI 项目使用 esbuild 我的 2021 npm、镜像源与 package-lock.json 新的桌面工作站:HP Z2 G5 Tower 我的 2020 在 Intel 版 MacBook Pro 以 EFI 的形式安装 Windows 10 为什么大家都在安利这一样东西? 新的家庭服务器:MicroServer Gen10 我的 2019 在树莓派(Raspbian)上安装最新稳定版 nginx 驾照 宿舍用小型 UPS 电源与新台灯 拆解我爸 2010 年装的廉价 PC 我的 2018 2018 厦门面基记 我(曾经)设想过的外置智能大脑 没用的无懈可击 tcdw 与 ECMAScript
移植 CMS 程序模板的一般方法
tcdw · 2015-06-09 · via 吐槽大王部落格

我常常看见有人求把 xxx 程序的模板移植到 yyy 程序,但事实上这样的问题没啥意义,因为两款不同的程序可能模板思路不同,所以单纯替换模板语言在绝大多数情况下是不可行的。

我在这里介绍的方法当然不是从技术角度出发,而是将基本的思路介绍一下。该思路适用于任意一款 CMS 程序。

阅读本教程时,请确保拥有足够的 HTML 基础知识。

前期工作

首先你需要安装原主题所用的 CMS 程序。你可以直接在本地安装一个,或者直接去主题演示站,然后把首页的 HTML 的内容扒下来。

有的模板可能分文章页、单页等等,你也应该把必要的页面扒下来。

分析 HTML 内容

各种 CMS 程序的模板往往会把网页的头部、内容、尾部分开,而不是在每个不同的内容页把相同的头部、尾部或其它元素重复一遍。

通常情况下,一个网页的头部是指从 HTML 的最开头部分一直到网站 banner / 菜单的尾部,尾部是网页底部的信息一直到 HTML 收尾的部分。但具体怎么判断,还需要你对模板的体质进行实际的分析。

套用模板语言

目前大部分的 CMS 程序模板都不是写死的,即将主程序部分与模板部分完全分离。

大部分的 CMS 都会在它们的文档里提供模板语言的写法,你只需要把对应的 Copypasta 一通即可。

如果是某些冷门程序,没有提供模板开发文档或官网挂掉,也不是问题。参照默认模板或其它民间模板,观察模板语言的规律,只要你掌握一定量的英语单词和编程基础。我不相信有哪个正式发布的、具有规模的 CMS 程序会拿一堆奇怪的、让人不知所云的名称,就像 aaaadhdhhajw 之类的。

调试模板

在开发环境下安装目标 CMS 程序,然后把你新移植的模板放上去开始测试,如果出现错误(如白屏、程序报错),那么你需要通过错误信息来逐步排查语法并修改,直到模板可以正常工作为止。

结束语

这不是一篇真正的、技术性的模板移植教程,我只是希望通过本文,介绍我移植各种网站模板的一般方法。