🗣 Wd提问: Bootstrap ThinkPHP模板
🤖 Ai回答: 在使用 ThinkPHP 框架开发 Web 应用时,结合 Bootstrap 可以快速构建美观、响应式的前端页面。下面是一个基于 ThinkPHP 6 + Bootstrap 5 的模板示例,帮助你快速搭建一个基础的前后端分离或服务端渲染项目。
✅ 一、环境准备
确保你已经安装:
PHP = 7.4
Composer
ThinkPHP 6.x
Web 服务器(如 Nginx/Apache 或内置 PHP 开发服务器)
安装 ThinkPHP 6
bash
composer create-project topthink/think tp6-bootstrap
cd tp6-bootstrap
✅ 二、引入 Bootstrap
你可以通过 CDN 引入 Bootstrap,也可以使用 npm/yarn 安装并编译。
方法一:CDN 方式(推荐初学者)
在 `view` 模板中直接引入 CDN 资源。
✅ 三、创建基础布局模板(基于 ThinkPHP 模板引擎)
1、创建布局文件:`view/layout/default.html`
html
<!DOCTYPE html
<html lang=zh-CN
<head
<meta charset=UTF-8
<meta name=viewport content=width=device-width, initial-scale=1.0
<title{:isset($title) ? $title 、' ' : ''}我的网站</title
<! Bootstrap 5 CSS
<link href=https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css rel=stylesheet
<! 自定义样式
<style
body {
padding-top: 56px;
}
.main-content {
margin: 20px;
}
</style
</head
<body
<! 导航栏
<nav class=navbar navbar-expand-lg navbar-dark bg-primary fixed-top
<div class=container
<a class=navbar-brand href={:url('index/index')}我的网站</a
<button class=navbar-toggler type=button data-bs-toggle=collapse data-bs-target=navbarNav
<span class=navbar-toggler-icon</span
</button
<div class=collapse navbar-collapse id=navbarNav
<ul class=navbar-nav ms-auto
<li class=nav-item
<a class=nav-link href={:url('index/index')}首页</a
</li
<li class=nav-item
<a class=nav-link href={:url('about/index')}关于我们</a
</li
<li class=nav-item
<a class=nav-link href={:url('contact/index')}联系</a
</li
</ul
</div
</div
</nav
<! 主内容区
<div class=container main-content
{__CONTENT__}
</div
<! Bootstrap JS Bundle (包含 Popper)
<script src=https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.bundle.min.js</script
</body
</html
2、创建首页模板:`view/index/index.html`
html
{extend name=layout/default /}
{block name=content}
<div class=p-5 bg-light rounded-3
<div class=container-fluid
<h1 class=display-4欢迎使用 ThinkPHP + Bootstrap</h1
<p class=lead这是一个使用 ThinkPHP 6 和 Bootstrap 5 构建的响应式模板。</p
<hr class=my-4
<p点击上方菜单浏览其他页面。</p
<a class=btn btn-primary btn-lg href={:url('about/index')} role=button了解更多</a
</div
</div
<div class=row mt-5
<div class=col-md-4
<div class=card
<div class=card-body
<h5 class=card-title功能一</h5
<p class=card-text描述内容...</p
<a href= class=btn btn-outline-primary查看详情</a
</div
</div
</div
<div class=col-md-4
<div class=card
<div class=card-body
<h5 class=card-title功能二</h5
<p class=card-text描述内容...</p
<a href= class=btn btn-outline-primary查看详情</a
</div
</div
</div
<div class=col-md-4
<div class=card
<div class=card-body
<h5 class=card-title功能三</h5
<p class=card-text描述内容...</p
<a href= class=btn btn-outline-primary查看详情</a
</div
</div
</div
</div
{/block}
3、创建 About 页面:`view/about/index.html`
html
{extend name=layout/default /}
{block name=content}
<div class=text-center my-5
<h1关于我们</h1
<p class=lead我们是一个致力于使用 ThinkPHP 快速开发 Web 应用的团队。</p
<img src=https://via.placeholder.com/400x200 class=img-fluid rounded alt=About Us
</div
{/block}
4、创建 Contact 页面:`view/contact/index.html`
html
{extend name=layout/default /}
{block name=content}
<div class=row justify-content-center
<div class=col-md-6
<div class=card
<div class=card-header
<h5联系我们</h5
</div
<div class=card-body
<form
<div class=mb-3
<label for=name class=form-label姓名</label
<input type=text class=form-control id=name
</div
<div class=mb-3
<label for=email class=form-label邮箱</label
<input type=email class=form-control id=email
</div
<div class=mb-3
<label for=message class=form-label留言</label
<textarea class=form-control id=message rows=4</textarea
</div
<button type=submit class=btn btn-primary发送</button
</form
</div
</div
</div
</div
{/block}
✅ 四、控制器设置
1、修改 `app/controller/Index.php`
php
<?php
namespace app\controller;
use think\App;
use think\Controller;
class Index extends Controller
{
public function index()
{
return view('index/index', ['title' = '首页']);
}
}
2、创建 `app/controller/About.php`
php
<?php
namespace app\controller;
use think\Controller;
class About extends Controller
{
public function index()
{
return view('about/index', ['title' = '关于我们']);
}
}
3、创建 `app/controller/Contact.php`
php
<?php
namespace app\controller;
use think\Controller;
class Contact extends Controller
{
public function index()
{
return view('contact/index', ['title' = '联系']);
}
}
✅ 五、配置路由(可选)
编辑 `route/app.php` 添加路由规则(TP6 默认自动路由):
php
use think\facade\Route;
Route::get('/', 'index/index');
Route::get('about', 'about/index');
Route::get('contact', 'contact/index');
✅ 六、运行项目
bash
php think run
访问:[http://localhost:8000](http://localhost:8000)
✅ 七、进阶建议
使用 `npm` + `Vite/Webpack` 管理前端资源(适合大型项目)
将 Bootstrap 下载到本地 `public/static/` 目录
使用 ThinkPHP 的 Session、Auth、数据库等功能扩展功能
结合 AdminLTE 或其他 UI 框架做后台管理
✅ 效果预览
你将看到一个响应式导航栏、轮播卡片区、联系表单等,适配手机和桌面设备。
如果你需要 前后端分离 版本(ThinkPHP 作为 API,前端用 Vue/React + Bootstrap),我也可以提供方案。
是否需要打包成 ZIP 模板?或者添加用户登录示例?欢迎继续提问!
📣 商家广告:





0
IP地址: 157.97.15.38
搜索次数: 1
提问时间: 2025-11-10 22:05:43
🛒 域名购买:
qn.gs
5.he.cn
32.gs
728.net.cn
chang.net.cn
qj.gs
qz.gs
zhang.la
te.biz
3331.top
❓️ 热门提问:
户外机柜的厂家
高端网站 设计
机房怎么除湿
jp域名表示的是什么
一体化机房建设方案
上海托管机房
co.cn域名
i9主机价格
美国特价服务器租用
关键词广告线索评分
豌豆Ai站群搜索引擎系统
🌐 域名评估:
www.net.cn
catl.ah.cn
su.ah.cn
nn.ah.cn
q.xj.cn
ty.gs
trfi.cn
dji.sd.cn
ii.sc.cn
5a.gd.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
Us search engine
站搜
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。