tightenco/jigsaw-blog-template

Jigsaw静态网站生成器Tighten的博客起始模板

v1.4.0 2024-07-26 13:27 UTC

README

这是一个创建美观、可定制的Jigsaw博客的起始模板,无需花费太多精力。您只需更改几个设置,即可轻松开始。

查看博客模板预览。

安装

安装Jigsaw后,从您的项目目录运行以下命令

./vendor/bin/jigsaw init blog

此起始模板包括常见页面类型的示例,并预先配置了

  • 一个完全响应式的导航栏
  • Tailwind CSS,一个实用CSS框架,允许您在不触摸CSS代码的情况下自定义设计
  • Purgecss从CSS中删除未使用的选择器,从而减小CSS文件的大小
  • 使用highlight.js进行语法高亮
  • 一个自动生成sitemap.xml文件的脚本
  • 一个自定义的404页面
  • 一个用于接受Mailchimp时事通讯注册的组件
  • 一个示例联系表单
  • 一个由Fuse.jsAlpine.js驱动的搜索栏,它会自动索引您的内容,且无需任何配置

Blog starter template screenshot

配置您的新网站

与所有Jigsaw网站一样,配置设置可以在config.php中找到;您可以通过在该文件中更新变量来使用针对您网站的特定设置。您还可以在该文件中添加新的配置变量以跨网站使用;请参阅Jigsaw文档了解更多信息。

// config.php
return [
    'baseUrl' => 'https://my-awesome-jigsaw-site.com/',
    'production' => false,
    'siteName' => 'My Site',
    'siteDescription' => 'Give your blog a boost with Jigsaw.',
    ...
];

提示:此配置文件也是您定义任何“集合”的地方(例如,您网站的贡献者集合,或按主题组织的博客文章集合)。请参阅官方Jigsaw文档了解更多信息。

添加内容

您可以使用多种文件类型(例如)编写内容。默认情况下,此起始模板期望您的内容位于source/_posts/文件夹中。

每个内容页面的顶部都包含一个YAML标题,指定其渲染方式。使用title属性为每个页面动态生成HTMLtitle和OpenGraph标签。使用extends属性定义此内容文件将与其父Blade布局一起渲染(例如,_layouts.post将与source/_layouts/post.blade.php一起渲染),使用section属性定义期望将此内容放置其中的Blade“部分”。

---
extends: _layouts.post
section: content
title: Getting Started
date: 2022-08-02
description: Getting started with the Jigsaw blog starter template
cover_image: /assets/img/post-cover-image-2.png
featured: true
---

添加资产

需要编译的任何资产(例如JavaScript、Less或Sass文件)都可以添加到source/_assets/目录中,当运行npm run devnpm run prod时,Laravel Mix将处理它们。处理后的资产将存储在/source/assets/build/中(注意第二个assets目录中没有下划线)。

然后,当Jigsaw构建您的网站时,包含您构建的文件(以及您选择存储在该处的任何其他静态资源目录,如图片或字体)的整个/source/assets/目录将被复制到目标构建文件夹(在您的本地机器上的build_local)。

不需要处理的文件(如图片和字体)可以直接添加到/source/assets/

关于使用Laravel Mix在Jigsaw中编译资源的更多信息。

构建您的网站

现在您已经编辑了配置变量,并且知道了如何自定义样式和内容,让我们开始构建网站。

# build static files with Jigsaw
./vendor/bin/jigsaw build

# compile assets with Laravel Mix
# options: dev, prod
npm run dev