WebStack-Hugo | 一个静态响应式导航主题 #10

shenweiyan announced in 1.3-折腾

WebStack-Hugo | 一个静态响应式导航主题#10

​编辑shenweiyan

on Oct 23, 2023 · 6 comments · 7 replies

Return to top

shenweiyan

on Oct 23, 2023

Maintainer

Via:我给自己做了一个导航网站 | BioIT爱好者

 

📢 让更多人的人制作自己的导航网站。如果你觉得本主题对你有所帮助,欢迎请作者 喝杯咖啡 >.<

主题开源地址

GitHub | Gitee | GitCode

主题展示地址

WebStack-Hugo 网址导航 | 生信网址导航

为什么做这个网站

之所以想着要给自己倒腾一个导航网站,主要有几个原因:

  • 购买了一个域名,且也备案成功了,总想折腾点跟它有关的事情;
  • 经常在公司、家里(有时候还有其他的临时场所)更换电脑,每次同步书签(或者登陆一些导航网站)需要各种登陆,麻烦。

说干就干,从 WebStack 的开源项目开始,断断续续的折腾了好几天,终于把轮子造起来了。

webstack-apple

跟其他导航网站有什么区别

这是 Hugo 版 WebStack 主题。可以借助 Github/Gitee Pages 或者云平台直接托管部署,无需服务器。

本项目是基于纯静态的网址导航网站 webstack.cc 制作的 Hugo 主题,其中部分代码参考了以下几个开源项目:

  • https://github.com/WebStackPage/WebStackPage.github.io
  • https://github.com/liutongxu/liutongxu.github.io
  • https://github.com/iplaycode/webstack-hugo

总体说一下特点:

  • 采用了一直以来最喜欢的 hugo 部署方式,方便高效。
  • 主要的配置信息都集成到了 config.toml,一键完成各种自定义的配置。
  • 导航的各个信息都集成在 data/webstack.yml 文件中,方便后续增删改动。
- taxonomy: 科研办公icon: fas fa-flask fa-lglist:- term: 生物信息links:- title: NCBIlogo: n/ncbi.jpgurl: https://www.ncbi.nlm.nih.gov/description: National Center for Biotechnology Information.- title: Biocondalogo: b/bioconda.jpgurl: https://anaconda.org/bioconda/description: "Bioconda :: Anaconda.org."- term: 云服务器links:- title: 阿里云logo: a/aliyun.jpgurl: https://www.aliyun.com/description: 上云就上阿里云。- title: 腾讯云logo: c/cloud-tencent.jpgurl: https://cloud.tencent.com/description: 产业智变,云启未来。
  • 做了手机电脑自适应以及夜间模式。
  • 增加了搜索功能,以及下拉的热词选项(基于百度 API)。
  • 增加了一言、和风天气的 API(和风天气 API 已经官方已经不再支持,目前还没到到替代)。

Windows 下安装部署

本安装部署在 Windows 7 x64 上测试没问题,相关操作同样适用于 Windows 10,如有任何问题,欢迎留言或者微信与我联系。

第一,下载 hugo

下载链接:https://github.com/gohugoio/hugo/releases,在这里我们下载 hugo_0.89.4_Windows-64bit.zip。

download-hugo-windows

第二,解压

我们把 hugo_0.89.4_Windows-64bit.zip 下载到 F:\WebStack 目录下,然后解压到当前文件夹。

解压完成后,在该目录会多出 hugo.exeLICENSEREADME.md 三个文件:

unzip hugo_0.89.4_Windows-64bit

第三,检测是否安装成功

通过下面的方法,检测 hugo 是否安装成功。

🏷️ 温馨提示:

Windows 命令运行窗口中可以使用 Tab 进行命令行补全,例如你当前目录下有一个 WebStack-Hugo 目录,你在命令行窗口中输入一个 w 后按下 Tab 键,命令行就会自动出现 WebStack-Hugo!

使用命令行补全,可以减少代码(或者文件名)的输入,方便快捷,又能减少错误!

  1. 在 Windows 中使用 Win+R 打开“运行”对话框,在对话框中输入“cmd”,点击确认。

    win-r-cmd

  2. 在 Windows 运行窗口,先切换盘符到 F 盘,然后进入 hugo 的解压缩目录(F:\WebStack),具体操作如下。

    • 在光标处输入 F:,然后按回车;

      cmd-change-dir

    • 我们就将盘符切换为 F 盘;

      cmd-f-dir

    • 接着输入 cd WebStack,回车,就进入了 F:\WebStack 目录;使用 ls 可以看到当前目录下的文件。

      webstack-win-ls

    • 最后,输入 hugo.exe version,回车,如图所示,则代表安装成功。

      hugo-exe-version

第四,下载 WebStack-Hugo

浏览器打开 https://github.com/shenweiyan/WebStack-Hugo,点击 Code 下的 "Download ZIP",把 WebStack-hugo-main.zip 下载到刚才 hugo 解压缩的目录(F:\WebStack)。

webstack-download-zip

webstack-hugo-main-zip

第五,解压和重命名

把 WebStack-Hugo-main.zip 解压到当前目录。

webstack-hugo-main-unzip

webstack-hugo-main-rename

第六,安装主题

首先,进入 F:\WebStack 目录;

然后,创建一个 themes 的文件夹;

create-themes-dir

接着,把解压后的 WebStack-Hugo 整个文件夹移动到 themes 中。

mv-webstack-hugo-to-themes

第四,将 themes/WebStack-Hugo/exampleSite 目录下的所有文件复制到 hugo 站点根目录(即 F:\WebStack)。

cp-examplesite

第七,启动预览

在刚才已经打开的 Windows 命令运行窗口中,使用下面的命令执行 hugo server,启动站点——Hugo 可以启动一个 Web 服务器,同时构建站点内容到内存中并在检测到文件更改后重新渲染,方便我们在开发环境实时预览对站点所做的更改。

hugo.exe server

hugo-exe-server

最后,在浏览器中打开 http://127.0.0.1:1313/,即可看到生成的站点。

webstack-hugo-1313

Linux 下安装部署

安装完本 WebStack-Hugo 主题后,将 exampleSite 目录下的文件复制到 hugo 站点根目录,根据需要把 config.toml 的一些信息改成自己的,导航的网址信息可通过 data 目录下 webstack.yml 修改。

具体执行步骤如下:

mkdir /home/shenweiyan/mysite
cd /home/shenweiyan/mysite# 安装 WebStack-Hugo 主题
git clone https://github.com/shenweiyan/WebStack-Hugo.git themes/WebStack-Hugo# 将 exampleSite 目录下的文件复制到 hugo 站点根目录
cd /home/shenweiyan/mysite
cp -r themes/WebStack-Hugo/exampleSite/* ./# 启动 hugo 站点
hugo server
# 如果你知道你的公网 ip, 如下面的 132.76.230.31, 可以使用下面的方式执行 hugo server
hugo server --baseUrl=132.76.230.31 --bind=0.0.0.0

也可以参考 @jetsung 在 pull 15 所用的方法安装部署:

# 创建项目
mkdir navsites
cd $_# 初始化项目
git init# 将 WebStack-Hugo 源下载到 themes/WebStack-Hugo 文件夹
git submodule add https://github.com/shenweiyan/WebStack-Hugo.git themes/WebStack-Hugo
cp -r themes/WebStack-Hugo/exampleSite/* ./# 安装 hugo
go install github.com/gohugoio/hugo@latest# 本地测试
hugo server# 生成 docs 文件夹,将并静态内容生成至此处
hugo -D

导出 HTML 静态资源

Windows/Linux 下执行的 hugo server 命令将会通过热加载的方式临时启动一个 Hugo 服务器(Hugo 可以启动一个 Web 服务器,同时构建站点内容到内存中并在检测到文件更改后重新渲染,方便我们在开发环境实时预览对站点所做的更改),这个时候我们打开浏览器 http://127.0.0.1:1313/,就可以看到我们站点的样子了。

如果我们想要把我们的站点部署到 GitHub/Gitee Pages(或者本地的服务器),我们可以:

1. 生成静态页面内容

可以通过下面的命令,生成(构建)静态页面内容。

hugo -D 或者 hugo --minify

这个命令会默认在 public/ 目录中生成您的网站,当然您可以通过改变站点配置中的 publishDir 选项来配置这个输出目录。

🏷️ Hugo 小知识 - 草案、未来和过期内容

Hugo 允许您在网站内容的前言设定中设置文档的draftpublishdate甚至expirydate字段。默认情况下,Hugo 不会发布下面内容:

  1. publishdate 发布日期值设定在未来的内容;
  2. draft:true 草案状态设置为真的内容;
  3. expirydate 过期日期值设置为过去某事件的内容。

这三个可以在本地开发和部署编译时通过对hugohugo server分别添加如下参数来重新设定,或者在配置文件中设定对应(不包含--)域的 boolean 值:

  1. -F, --buildFuture include content with publishdate in the future
  2. -D, --buildDrafts include content marked as draft
  3. -E, --buildExpired include expired content

2. 部署站点

把生成的 public/ 静态内容目录上传到 GitHub,开启 GitHub/Gitee Pages,并且绑定 cname 域名即可。

使用说明与技巧

这是一个开源的公益项目,你可以拿来制作自己的网址导航,也可以做与导航无关的网站。

左导航栏图标

左侧、顶部导航栏图标用的都是 Font Awesome 图标库 v5 版本 Free 的图标。链接如下:

🔗 Find the Perfect Icon for Your Project in Font Awesome 5 | Font Awesome

fontawesome-v5-free

调整头部搜索栏

头部搜索栏的默认位置可以通过下面的方法进行修改。

  1. 直接修改 layouts/partials/content_search.html,调整对应部分的位置。
  2. 调整默认的搜索(即点击"常用/搜索/工具 ...." 时下指箭头的指向),把对应的 id 添加到对应的 label 里面。

set-default-search-bing

view-default-search-bing

自定义头部导航

WebStack-Hugo 把头部的导航菜单的各个信息集成在了 data/header.yml 文件中,每个人可以根据自己的需要调整。

- item: 首页icon: fa fa-homelink: "./"- item: 作者icon: fa fa-booklink: https://www.yuque.com/shenweiyan- item: 配置icon: fa fa-coglink: ""list:- name: 源码url: "#"- name: 图标url: "#"

获取网站图标

Bio & IT 网址导航默认使用的是个人收集的网站图标,主要是查看网站源码、百度、谷歌等途径把对应导航的图标下载下来,这个方法比较原始繁琐,适合导航不是很多的情况。

一为

你也可以使用一为提供的的 Favicon 图标 API:获取网站 Favicon - 免费 API 数据接口调用服务平台。

使用方法:

  1. 获取 Favicon 图标
https://api.iowen.cn/favicon/www.iowen.cn.png
  1. 刷新缓存
https://api.iowen.cn/favicon/www.iowen.cn.png?refresh=true
  1. 将上方代码中的 www.iowen.cn 替换为你需要获取的网址域名。
Favicon.im

除了一为的 API,你也可以使用 Favicon.im: Instant Website Favicon Fetcher 来在网页中插入其他网站的 Favicon 图片,可以放大显示。

favicon-im

Favicon Extractor

类似网站 Favicon Downloader,代码开源。

favicon-extractor

已知问题

  1. 日间模式与夜间模式切换时候,头部搜索栏的背景图片切换不够流畅(个人的 js 知识有限,在 footer.html 做了一些简单的调整来实现),如果你有更好的想法,欢迎 PR 或者交流。

感谢墙

本主题的部分代码参考了以下几个开源项目,特此感谢。

  • WebStackPage/WebStackPage.github.io
  • liutongxu/liutongxu.github.io
  • iplaycode/webstack-hugo

感谢 WebStack 的作者 Viggo 的肯定和推广宣传。

twitter-decohack-webstack-hugo

感谢以下所有朋友对本主题所做出的贡献。
@yanbeiyinhanghang
@jetsung

赞赏

如果你觉得本项目对你有所帮助,欢迎请作者喝杯热咖啡 >.<

donate-wecaht-aliapy

反馈与交流

最后,最重要的,秉承 WebStack 的宗旨,这是一个开源的公益项目,你可以拿来制作自己的网址导航,也可以做与导航无关的网站。

WebStack 有非常多的魔改版本,这是其中一个。

如果你对本主题进行了一些个性化调整,欢迎在本项目中 issues 中一起分享交流!

如果参考本主题构建了属于你自己的网址导航,欢迎在本评论区(或源码 issues 区)留下你网站的访问链接 >.<

Replies:6 comments · 7 replies

CharlieLZ

on Nov 14, 2023

Built in 35 ms
Environment: "development"
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop

CMD显示了这个,但是打开http://127.0.0.1:1313/ 显示的是Page Not Found

我有重命名对应文件夹,但是全部放在E盘,然后下载的是hugo_0.120.4_windows-amd64 (没有)

重新下载了hugo_0.89.4_Windows-64bit.zip

名字一模一样 问题 解决

2 replies

@shenweiyan

shenweiyanon Nov 14, 2023

MaintainerAuthor

问题解决就好 >.<

@iwrain

iwrainon Mar 9

是为什么,我也有这样的问题。

takayashoshi888

on May 20, 2024

非常好,感谢感谢

0 replies

konglquan

on Jul 15, 2024

用hugo server启动的时候 一切都是正常的,但是hugo -D 生成静态之后左侧、顶部导航栏图标不能显示了,变成了一个方块。大佬这个怎么解决,感谢。

1 reply

@shenweiyan

shenweiyanon Jul 15, 2024

MaintainerAuthor

F12 看一下对应图标的 url 链接是不是正常的,如果不正常,可以参考 shenweiyan/WebStack-Hugo#24 去排查一下。

jiespring

on Aug 22, 2024

希望安装步骤写完整一点,linux 的安装方法写详细一点。生成的网站样式错误,图片文件和样式文件加载全是404。

2 replies

@shenweiyan

shenweiyanon Aug 23, 2024

MaintainerAuthor

linux 的安装方法写详细一点,想问一下具体指的是哪个步骤?针对 404 的问题建议使用 F12 先对有问题的资源排查一下。

@jiespring

jiespringon Aug 23, 2024

linux 的安装方法写详细一点,想问一下具体指的是哪个步骤?针对 404 的问题建议使用 F12 先对有问题的资源排查一下。

按照步骤,在命令行中操作,已经重新安装成功了。
建议增加链接跳转确认页面,像知乎那样。

dsshbz

on Sep 17, 2024

想修改一下网格背景,但是为什么修改了custom-style.css这个文件后,网站样式没有变化啊。

2 replies

@dsshbz

dsshbzon Sep 17, 2024

我的地址NavNest

@shenweiyan

shenweiyanon Sep 18, 2024

MaintainerAuthor

有可能跟其他的样式发生了冲突,建议使用 F12 开发者模式调试一下,看一下具体是哪里出问题了。

musica2016

on Sep 24, 2024

这文档可以写得再清晰一点,看着有点晕啊

0 replies

Add a comment

Comment



Add your comment here...

 

Remember, contributions to this repository should follow our GitHub Community Guidelines.

Category

🛠️

1.3-折腾

Labels

语雀1.3.25-静态网站

8 participants

@shenweiyan

@jiespring

@musica2016

@CharlieLZ

@iwrain

@konglquan

@dsshbz

@takayashoshi888

Notifications

You’re not receiving notifications from this thread.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/93410.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/93410.shtml
英文地址,请注明出处:http://en.pswp.cn/diannao/93410.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

01 基于sklearn的机械学习-机械学习的分类、sklearn的安装、sklearn数据集、数据集的划分、特征工程中特征提取与无量纲化

文章目录机械学习机械学习分类1. 监督学习2. 半监督学习3. 无监督学习4. 强化学习机械学习的项目开发步骤scikit-learn1 scikit-learn安装2 sklearn数据集1. sklearn 玩具数据集鸢尾花数据集糖尿病数据集葡萄酒数据集2. sklearn现实世界数据集20 新闻组数据集3. 数据集的划分特…

携全双工语音通话大模型亮相WAIC,Soul重塑人机互动新范式

近日&#xff0c;WAIC 2025在上海隆重开幕。作为全球人工智能领域的顶级盛会&#xff0c;本届WAIC展览聚焦底层能力的演进与具体垂类场景的融合落地。坚持“模应一体”方向、立足“AI社交”的具体场景&#xff0c;Soul App此次携最新升级的自研端到端全双工语音通话大模型亮相&…

第2章 cmd命令基础:常用基础命令(1)

Hi~ 我是李小咖&#xff0c;主要从事网络安全技术开发和研究。 本文取自《李小咖网安技术库》&#xff0c;欢迎一起交流学习&#x1fae1;&#xff1a;https://imbyter.com 本节介绍的命令有目录操作&#xff08;cd&#xff09;、清屏操作&#xff08;cls&#xff09;、设置颜色…

Java 10 新特性解析

Java 10 新特性解析 文章目录Java 10 新特性解析1. 引言2. 本地变量类型推断&#xff08;JEP 286&#xff09;2.1. 概述2.2. 使用场景2.3. 限制2.4. 与之前版本的对比2.5. 风格指南2.6. 示例代码2.7. 优点与注意事项3. 应用程序类数据共享&#xff08;JEP 310&#xff09;3.1. …

【WRF工具】服务器中安装编译GrADS

目录 安装编译 GrADS 所需的依赖库 conda下载库包 安装编译 GrADS 编译前检查依赖可用性 安装编译 GrADS 参考 安装编译 GrADS 所需的依赖库 以统一方式在 $HOME/WRFDA_LIBS/grads_deps 下安装所有依赖: # 选择一个目录用于安装所有依赖库 export DIR=$HOME/WRFDA_LIBS库包1…

数据结构之队列(C语言)

1.队列的定义&#xff1a; 队列&#xff08;Queue&#xff09;是一种基础且重要的线性数据结构&#xff0c;遵循先进先出&#xff08;FIFO&#xff09;​​ 原则&#xff0c;即最早入队的元素最先出队&#xff0c;与栈不同的是出队列的顺序是固定的。队列具有以下特点&#xff…

C#开发基础之深入理解“集合遍历时不可修改”的异常背后的设计

前言 欢迎关注【dotnet研习社】&#xff0c;今天我们聊聊一个基础问题“集合已修改&#xff1a;可能无法执行枚举操作”背后的设计。 在日常 C# 开发中&#xff0c;我们常常会操作集合&#xff08;如 List<T>、Dictionary<K,V> 等&#xff09;。一个新手开发者极…

【工具】图床完全指南:从选择到搭建的全方位解决方案

前言 在数字化内容创作的时代&#xff0c;图片已经成为博客、文档、社交媒体等平台不可或缺的元素。然而&#xff0c;如何高效、稳定地存储和分发图片资源&#xff0c;一直是内容创作者面临的重要问题。图床&#xff08;Image Hosting&#xff09;作为专门的图片存储和分发服务…

深度学习篇---PaddleDetection模型选择

PaddleDetection 是百度飞桨推出的目标检测开发套件&#xff0c;提供了丰富的模型库和工具链&#xff0c;覆盖从轻量级移动端到高性能服务器的全场景需求。以下是核心模型分类、适用场景及大小选择建议&#xff08;通俗易懂版&#xff09;&#xff1a;一、主流模型分类及适用场…

cmseasy靶机密码爆破通关教程

靶场安装1.首先我们需要下载一个cms靶场CmsEasy_7.6.3.2_UTF-8_20200422,下载后解压在phpstudy_pro的网站根目录下。2.然后我们去访问一下安装好的网站&#xff0c;然后注册和链接数据库3.不知道自己数据库密码的可以去小皮面板里面查看4.安装好后就可以了来到后台就可以了。练…

【C语言】指针深度剖析(一)

文章目录一、内存和地址1.1 内存的基本概念1.2 编址的原理二、指针变量和地址2.1 取地址操作符&#xff08;&&#xff09;2.2 指针变量和解引用操作符&#xff08;*&#xff09;2.2.1 指针变量2.2.2 指针类型的解读2.2.3 解引用操作符2.3 指针变量的大小三、指针变量类型的…

半导体企业选用的跨网文件交换系统到底应该具备什么功能?

在半导体行业的数字化转型过程中&#xff0c;跨网文件交换已成为连接研发、生产、供应链的关键纽带。半导体企业的跨网文件交换不仅涉及设计图纸、工艺参数等核心知识产权&#xff0c;还需要满足跨国协同、合规审计等复杂需求。那么&#xff0c;一款适合半导体行业的跨网文件交…

影刀RPA_初级课程_玩转影刀自动化_网页操作自动化

声明&#xff1a;相关内容来自影刀学院&#xff0c;本文章为自用笔记&#xff0c;切勿商用&#xff01;&#xff08;若有侵权&#xff0c;请联络删除&#xff09; 1. 基本概念与操作 1.1 正确处理下拉框元素&#xff08;先判断页面元素&#xff0c;后进行流程编制&#xff09;…

Spark初探:揭秘速度优势与生态融合实践

更多推荐阅读 Spark与Flink深度对比&#xff1a;大数据流批一体框架的技术选型指南-CSDN博客 LightProxy使用操作手册-CSDN博客 Sentry一看就会教程_sentry教程-CSDN博客 微前端架构解析&#xff1a;核心概念与主流方案特性对比_微前端方案对比-CSDN博客 目录 Spark为何比Hadoo…

详谈OSI七层模型和TCP/IP四层模型以及tcp与udp为什么是4层,http与https为什么是7层

一、网络模型&#xff1a;OSI七层 vs TCP/IP四层OSI七层模型 (理论参考模型):目的&#xff1a;提供一个标准化的理论框架&#xff0c;用于理解网络通信过程和各层的功能划分&#xff0c;促进不同厂商设备的互操作性。它是一个理想化的模型。分层 (从下到上):物理层&#xff1a;…

ClickHouse 高性能实时分析数据库-索引与数据跳过(查询的“瞬移”能力)

告别等待&#xff0c;秒级响应&#xff01;这不只是教程&#xff0c;这是你驾驭PB级数据的超能力&#xff01;我的ClickHouse视频课&#xff0c;凝练十年实战精华&#xff0c;从入门到精通&#xff0c;从单机到集群。点开它&#xff0c;让数据处理速度快到飞起&#xff0c;让你…

Jetpack - Room(Room 引入、Room 优化)

一、Room 引入 1、基本介绍 Room 在 SQLite 上提供了一个抽象层&#xff0c;以便在充分利用 SQLite 的强大功能的同时&#xff0c;能够流畅地访问数据库&#xff0c;官方强烈建议使用 Room 而不是 SQLite 2、演示 &#xff08;1&#xff09;Setting 模块级 build.gradle depend…

【江科大CAN】2.1 STM32 CAN外设(上)

2.1 STM32 CAN外设&#xff08;上&#xff09;2.1.1 STM32 CAN外设简介2.1.2 外围电路设计2.1.3 STM32 CAN内部结构2.1.4 发送流程详解2.1.5 接收流程详解2.1.6 关键配置位总结STM32 CAN外设讲解 大家好&#xff0c;欢迎继续观看CAN总线入门教程。本节开始&#xff0c;我们正式…

人工智能技术革命:AI工具与大模型如何重塑开发者工作模式与行业格局

引言&#xff1a;AI技术爆发的时代背景过去五年间&#xff0c;人工智能领域经历了前所未有的爆发式增长。从2020年GPT-3的横空出世到2023年多模态大模型的全面突破&#xff0c;AI技术已经从实验室走向了产业应用的前沿。开发者作为技术生态的核心推动者&#xff0c;其工作模式正…

傅里叶变换

傅里叶变换:运用频域的出发点就是能够将波形从时域变换到频域&#xff0c;用傅里叶变换可以做到这一点。有如下3种傅里叶变换类型&#xff1a;1.傅里叶积分(FI); 2.离散傅里叶变换(DFT); 3.快速傅里叶变换(FFT)。傅里叶积分是一种将时域的理想数学表达变换成频域描述的数学技术…