Skip to content

Commit c947cfc

Browse files
committed
Add README.md
1 parent c22636e commit c947cfc

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

README.md

+95
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
# SITCON 短網址服務
2+
3+
這個專案使用 GitHub Pages 建立一個簡單的短網址服務,開放自訂標題、摘要和 Open Graph 標籤。
4+
5+
## 如何建立新的短網址
6+
7+
1.`_redirects` 資料夾中建立一個新的 Markdown 檔案。檔名將成為短網址的一部分(slug)。
8+
例如:`template.md` 將產生 `https://i.sitcon.org/template`
9+
10+
2. 在 Markdown 檔案中使用以下格式:
11+
12+
```yaml
13+
---
14+
layout: redirect
15+
title: "您的自定義標題"
16+
description: "您的自定義描述"
17+
image: "/images/your-image.jpg" # 使用相對路徑引用 repo 中的圖片
18+
#
19+
image: "https://example.com/your-image.jpg" # 使用完整的 URL
20+
redirect_to: "https://example.com/your-long-url"
21+
---
22+
```
23+
24+
注意:
25+
- 如果圖片存放在本專案的 `images` 資料夾中,請使用相對路徑(例如:`/images/your-image.jpg`)。
26+
- 如果要使用外部圖片,請提供完整的 URL。
27+
28+
3. 如果你想使用自訂圖片,請將圖片檔案上傳到 `images` 資料夾。
29+
30+
4. 將變更提交並推送到 GitHub 儲存庫。
31+
32+
5. GitHub Actions 將自動建置並部署您的新短網址。
33+
34+
## 技術原理
35+
36+
本專案使用以下技術和工具:
37+
38+
1. **GitHub Pages**:用於託管靜態網站。
39+
2. **Jekyll**:靜態網站產生器,用於將 Markdown 檔案轉換為 HTML。
40+
3. **自訂 HTML 模板**:位於 `_layouts/redirect.html`,用於產生轉址頁面。
41+
4. **GitHub Actions**:自動化建置和部署流程。
42+
5. **Google Tag Manager**:用於追蹤轉換效果。
43+
44+
### 檔案結構
45+
46+
```
47+
/
48+
├── _redirects/ # 存放 Markdown 檔案的資料夾
49+
├── _layouts/ # 存放 HTML 模板
50+
├── images/ # 存放圖片檔案
51+
├── _config.yml # Jekyll 設定檔
52+
└── .github/workflows/ # GitHub Actions 設定
53+
```
54+
55+
### 轉址機制
56+
57+
轉址使用 JavaScript 延遲執行,以確保 Google Tag Manager 有足夠時間載入和執行。這個延遲設定在 HTML 模板中,可以根據需要調整。
58+
59+
### 自動化部署
60+
61+
每當有新的變更推送到主分支時,GitHub Actions 會自動觸發建置流程,將 Markdown 檔案轉換為 HTML,並部署到 GitHub Pages。
62+
63+
## 維護注意事項
64+
65+
1. 確保 `_config.yml` 中的設定正確,特別是 `collections``url` 部分。
66+
67+
2. 如需修改轉址邏輯或 Google Tag Manager 設定,請編輯 `_layouts/redirect.html` 檔案。
68+
69+
3. GitHub Actions 設定檔位於 `.github/workflows/build.yml`,如需調整自動化流程,請修改此檔案。
70+
71+
4. 若要更新 Google Tag Manager 程式碼,請在 HTML 模板中找到相應的程式碼區塊進行修改。
72+
73+
5. 圖片檔案應放在 `images/` 資料夾中。請確保使用適當大小和格式的圖片,以增進網站效能。
74+
75+
6. 在引用圖片時,請使用相對路徑(例如:`/images/your-image.jpg`)或完整的 URL。
76+
77+
7. 圖片路徑支援兩種格式:
78+
- 相對路徑:用於引用儲存在 `images/` 資料夾中的圖片(例如:`/images/your-image.jpg`)。
79+
- 完整 URL:用於引用外部圖片(例如:`https://example.com/your-image.jpg`)。
80+
請確保在 Markdown 檔案中正確指定圖片路徑。
81+
82+
8. 定期檢查外部圖片連結是否有效,以確保所有短網址頁面都能正確顯示預期的圖片。
83+
84+
## 效能考量
85+
86+
1. **頁面載入時間**:由於使用 JavaScript 進行轉址,頁面可能會有短暫的顯示時間。目前設定為 500 毫秒的延遲,可以在 `_layouts/redirect.html` 中調整這個值。
87+
88+
2. **SEO 影響**:雖然使用 JavaScript 轉址可能會稍微影響搜尋引擎最佳化,但已經加入了適當的 meta 標籤來避免這個問題。
89+
90+
## 相關資源
91+
92+
- [GitHub Pages](https://docs.github.com/en/pages)
93+
- [Jekyll](https://jekyllrb.com/docs/)
94+
- [Markdown 指南](https://www.markdownguide.org/)
95+
- [Open Graph 協議](https://ogp.me/)

0 commit comments

Comments
 (0)