بهکاراندازی سایت
Hugo وبسایتهای استاتیک را ایجاد میکند و امکان گزینههای میزبانی انعطافپذیر را فراهم میکند. این صفحه راهنماهایی برای بهکاراندازی سایت هگزترا شما در پلتفرمهای مختلف ارائه میکند.
شروع سریع از طریق Template
imfing/hextra-starter-template
با استفاده از template در بالای صفحهای مخزن میتوانید به سرعت شروع به کار کنید.

ما یک گردش کاری GitHub Actions ارائه کردهایم که میتواند به ساخت و بهکاراندازی خودکار سایت شما در گیتهاب Pages، برای میزبانی رایگان کمک کند. برای گزینههای بیشتر، بهکاراندازی سایت را بررسی کنید.
شروع به عنوان پروژه جدید
دو راه اصلی برای اضافه کردن تم هگزترا به پروژه Hugo وجود دارد:
- ماژولهای Hugo (توصیه میشود): سادهترین و توصیه شدهترین. ماژولهای Hugo به شما امکان میدهند تم را مستقیما از منبع آنلاین آن وارد کنید. تم به صورت خودکار دانلود و توسط Hugo مدیریت میشود.
- سابماژول گیت: در عوض، هگزترا را به عنوان یک سابماژول گیت اضافه کنید. تم توسط گیت دانلود شده و در پوشه
themes
پروژه شما ذخیره میشود.
هگزترا را به عنوان ماژول Hugo راهاندازی کنید
پیشنیازها
قبل از شروع، باید این نرمافزارها را نصب کنید:
مراحل
راهانداختن یک سایت جدید Hugo
hugo new site my-site --format=yaml
پیکربندی تم هگزترا از طریق ماژول
# مقداردهی اولیه ماژول هیوگو
cd my-site
hugo mod init github.com/username/my-site
# افزودن تم هگزترا
hugo mod get github.com/imfing/hextra
با افزودن موارد زیر، hugo.yaml
را برای استفاده از تم هگزترا پیکربندی کنید:
module:
imports:
- path: github.com/imfing/hextra
اولین صفحههای محتوای خود را ایجاد کنید
ایجاد صفحه محتوای جدید برای صفحه اصلی و صفحه مستندات:
hugo new content/_index.md
hugo new content/docs/_index.md
پیشنمایش سایت به صورت محلی
hugo server --buildDrafts --disableFastRender
پیشنمایش سایت جدید شما در http://localhost:1313/
در دسترس است.
چگونه تم را بهروز کنیم؟
برای بهروزرسانی همه ماژولهای Hugo در پروژه خود به آخرین نسخههایشان، دستور زیر را اجرا کنید:
hugo mod get -u
برای بهروزرسانی هگزترا به آخرین نسخه منتشر شده، دستور زیر را اجرا کنید:
hugo mod get -u github.com/imfing/hextra
برای جزئیات بیشتر به ماژولهای هیوگو مراجعه کنید.
هگزترا را به عنوان سابماژول Git راهاندازی کنید
پیشنیازها
قبل از شروع، باید این نرمافزارها را نصب کنید:
مراحل
راهانداختن یک سایت جدید Hugo
hugo new site my-site --format=yaml
افزودن تم هگزترا به عنوان یک سابماژول Git
git submodule add https://github.com/imfing/hextra.git themes/hextra
با افزودن موارد زیر، hugo.yaml
را برای استفاده از تم هگزترا پیکربندی کنید:
theme: hextra
اولین صفحههای محتوای خود را ایجاد کنید
ایجاد صفحه محتوای جدید برای صفحه اصلی و صفحه مستندات:
hugo new content/_index.md
hugo new content/docs/_index.md
پیشنمایش سایت به صورت محلی
hugo server --buildDrafts --disableFastRender
پیشنمایش سایت جدید شما در http://localhost:1313/
در دسترس است.
هنگام استفاده از CI/CD برای بهکاراندازی وبسایت Hugo، از اجرای دستور زیر قبل از اجرای دستور hugo
مطمئن شوید و ضروری است.
git submodule update --init
اجرا نشدن این دستور باعث میشود که پوشه تم با پروندههای تم هگزترا پر نشود و منجر به خرابی ساخت شود.
چگونه تم را بهروز کنیم؟
برای بهروزرسانی تمام سابماژولهای در مخزن خود به آخرین commitها که موجود هست، دستور زیر را اجرا کنید:
git submodule update --remote
برای بهروزرسانی هگزترا به آخرین commit، دستور زیر را اجرا کنید:
git submodule update --remote themes/hextra
برای جزئیات بیشتر به سابماژولهای Git مراجعه کنید.
بعدی
برای شروع اضافه کردن مطالب بیشتر، بخشهای زیر را کاوش کنید:
گیتهاب Pages
گیتهاب Pages روشی توصیه شده برای بهکاراندازی و میزبانی وبسایت شما به صورت رایگان است.
اگر سایت را با استفاده از hextra-starter-template راهاندازی سریع پیادهسازی میکنید، گردش کار گیتهاب Actions را به صورت خارج از جعبه ارائه کردهایم که بهکاراندازی خودکار در گیتهاب Pages به شما کمک میکند.
پیکربندی گیتهاب Actions
در زیر یک پیکربندی مثال از hextra-starter-template آورده شده است:
# Sample workflow for building and deploying a Hugo site to GitHub Pages
name: Deploy Hugo site to Pages
on:
# Runs on pushes targeting the default branch
push:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
# Default to bash
defaults:
run:
shell: bash
jobs:
# Build job
build:
runs-on: ubuntu-latest
env:
HUGO_VERSION: 0.117.0
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version: '1.21'
- name: Setup Hugo
uses: peaceiris/actions-hugo@v2
with:
hugo-version: '0.117.0'
extended: true
- name: Build with Hugo
env:
# For maximum backward compatibility with Hugo modules
HUGO_ENVIRONMENT: production
HUGO_ENV: production
run: |
hugo \
--gc --minify \
--baseURL "https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}/"
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
path: ./public
# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2

بهطور پیشفرض، گردش کار گیتهاب Actions بالا .github/workflows/pages.yaml
فرض میکند که سایت در حال بهکاراندازی در https://<USERNAME>.github.io/<REPO>/
است.
اگر در حال استفاده از https://<USERNAME>.github.io/
هستید، سپس --baseURL
را تغییر دهید:
|
|
اگر میخواهید روی دامنه شخصی خود استقرار پیدا کند، لطفا مقدار --baseURL
را بر این اساس تغییر دهید.
کلودفلر Pages
- کد منبع سایت خود را در یک مخزن Git (به عنوان مثال گیتهاب) قرار دهید
- وارد پیشخوان کلودفلر شوید و حساب خود را انتخاب کنید
- در صفحه اصلی حسابکاربری، Workers & Pages > Create application > Pages > Connect to Git را انتخاب کنید
- مخزن را انتخاب کنید و در بخش Set up builds and Deployments اطلاعات زیر را وارد کنید:
Configuration | Value |
---|---|
Production branch | main |
Build command | hugo --gc --minify |
Build directory | public |
برای جزئیات بیشتر، بررسی کنید:
Netlify
- کد خود را به مخزن Git خود (گیتهاب، گیتلب و غیره) ارسال کنید.
- وارد کردن پروژه به Netlify
- اگر از [hextra-starter-template][hextra-starter-template] استفاده نمیکنید، موارد زیر را به صورت دستی پیکربندی کنید:
- دستور Build را روی
hugo --gc --minify
پیکربندی کنید - دایرکتوری Publish را برای
public
مشخص کنید HUGO_VERSION
متغیر محیط استقرار را اضافه کنید و روی0.119.0
تنظیم کنید
- دستور Build را روی
- استقرار!
برای جزئیات بیشتر Hugo را در Netlify بررسی کنید.
Vercel
- کد خود را به مخزن Git خود (گیتهاب، گیتلب و غیره) ارسال کنید.
- به پیشخوان Vercel بروید و پروژه Hugo خود را وارد کنید
- پروژه را پیکربندی کنید، Hugo را به عنوان چارچوب Preset انتخاب کنید
- دستور Build و Install را لغو کنید:
- دستور Build را روی
hugo --gc --minify
تنظیم کنید - دستور Install را روی
yum install golang
تنظیم کنید
- دستور Build را روی