استارت‌آپ و کارآفرینی

نگاهی بر سایت‌ساز Hugo

Hugo یک سایت‌ساز استاتیک است. برخلاف سیستم‌های دیگه که به صورت داینامیک با هر بازدید کاربر یک صفحه ایجاد می‌کنند, هوگو صفحه را وقتی شما محتوا را تولید می‌کنید ایجاد می‌کند. سایت‌هایی که توسط هوگو ساخته می‌شوند سریع‌تر و بسیار امن‌تر هستند. سایت‌های ساخته‌شده با هوگو می‌توانند در هر جایی میزبانی شوند, مانند صفحات گیت هاب, هروکو و…
سایت‌های ایجاد شده توسط هوگو بدون هیچ وابستگی به یک اجراگر مانند Ruby, Python و یا PHP و بدون وابستگی به یک پایگاه‌داده اجرا می‌شوند.

نصب هوگو

برای نصب هوگو کافی است به صفحه انتشار آن در گیت‌هاب رفته و نسخه باینری مرتبط با سیستم عامل خود را دانلود و نصب کنید.

برای نصب هوگو از طریق سورس کد شما به Git و Go ورژن ۱٫۵ به بالا نیاز دارید. بعد از نصب این پیش‌نیازها کافی است این دستور را اجرا کنید:

go get -v github.com/spf13/hugo

استفاده از هوگو

بعد از نصب هوگو, برای ایجاد یک وب‌سایت جدید دستور زیر را اجرا کنید:

hugo new site SiteName

به جای SiteName نام سایتی که می‌خواهید ایجاد کنید را بنویسید. بعد از ایجاد سایت توسط هوگو به داخل پوشه‌ای که ایجاد شده بروید.
حال وقت آن است که یک مطلب جدید به سایت اضافه کنیم, برای اینکار دستور زیر را اجرا کنید:

hugo new post/post-name.md

در اینجا هم به حای post-name نام مطلبی که می‌خواهید بنویسید را وارد کنید. توجه داشته باشید حتما بعد نام, فرمت .md نوشته شده باشد.
این دستور در پوشه content یک پوشه به نام post ایجاد میکند و فایل مطلب را در آن ایجاد می‌کند.

داخل فایل دستوراتی مانند این می‌بینید:

+++
date = "2016-02-14T16:11:58+05:30"
draft = true
title = "post name"

+++

این دستورات مشخصات مطلب شما هستند. date تاریخ ایجاد مطلب, draft نشان‌دهنده پیش‌نویس بودن مطلب و title هم عنوان مطلب هست.
برای نوشتن مطلب کافی است زیر +++ دوم شروع به نوشتن کنید.
هوگو از فرمت Markdown استفاده می‌کند. برای آشنایی با این فرمت می‌توانید از این وبسایت استفاده کنید.

نمایش محتوا

بعد از ایجاد سایت و نوشتن یک مطلب, نوبت نمایش محتوا می‌رسد. برای اینکار دستور زیر را اجرا کنید:

hugo server

با اجرای این دستور, نتیجه‌ای مانند زیر می‌بینید:

۰ of 1 draft rendered
۰ future content
۰ pages created
۰ paginator pages created
۰ tags created
۰ categories created
in 9 ms
Watching for changes in /Users/USERNAME/SiteName/{data,content,layouts,static}
Serving pages from memory
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop

با توجه به نتیجه, می‌بینید که وب سایت بر روی پورت ۱۳۱۳ می‌باشد. به آدرس http://localhost:1313 بروید تا نتیجه را ببینید.
چیز خاصی نمایش داده نمی‌شود. دو دلیل وجود دارد:

۱- مطلبی که ایجاد کردیم به صورت پیش‌نویس بوده است. برای اینکه مطالب نشان داده شوند باید موقع اجرا دستور فلگ buildDrafts را به دستور بدهیم.

۲- هیچ تمی برای وب سایت تایین نکرده‌ایم.

برای گزینه اول دستور را به این حالت اجرا کنید:

hugo server --buildDrafts

حال می‌بینید که در نتیجه داده شده ۱ صفحه ایجاد شده است.

افزودن تم

برای پیدا کردن تم‌های اوپن سورس هوگو می‌توانید به این صفحه بروید.

بعد از انتخاب تم مورد نظر, به داخل پوشه themes در جایی که سایت خود را ایجاد کرده اید بروید. (نکته: در صورت عدم وجود این پوشه آن را ایجاد کنید)

بعد از رفتن به این پوشه, تم مورد نظر را با استفاده از git کلون کنید. برای مثال برای اضافه کردن تم robust این دستور را بزنید:

git clone https://github.com/dim0627/hugo_theme_robust.git

حال به پوشه اصلی سایت برگردید و دستور hugo server را به شیوه زیر اجرا کنید:

hugo server --theme=hugo_theme_robust --buildDrafts

تنظیمات سایت

با اجرا دستور قبلی خواهید دید که سایت با یک سری اطلاعات پیش‌فرض نمایش داده می‌شود. برای تغییر این مشخصات فایل SiteName/config.toml را باز کنید و مشخصات دلخواه خود را وارد کنید.
برای مثال محتوای فایل تنظیمات به این شکل می‌باشد:

baseURL = "http://example.org/"
languageCode = "en-us"
title = "Example"

[Params]
  Author = "Someone"

نمایش پست‌ها

تا این لحظه پست‌های ما به صورت پیش‌نویس بوده‌اند, برای این که یک پست را از حالت پیش‌نویس خارج کنید باید دستور زیر را اجرا کنید:

hugo undraft content/post/post-name.md

در اینجا نیز باید post-name را به نام مطلب تغییر دهید.

خروجی‌گرفتن از سایت

برای خروجی گرفتن از سایت کافی است دستور زیر را اجرا کنید:

hugo --theme=hugo_theme_robust

توجه داشته باشید که اگر از تم دیگری استفاده می‌کنید باید در دستور تغییر ایجاد کرده و نام تم خود را وارد کنید.
با اجرای این دستور در پوشه SiteName/public فایل‌ها ساخته خواهند شد. کافی است این فایل‌ها را به سرویس میزبانی مورد نظر خود انتقال دهید.

میزبانی در صفحات گیت‌هاب(دلخواه)

برای میزبانی سایت خود در صفحات گیت‌هاب کافی است baseURL سایت را به آدرس صفحه گیت‌هابی خود تغییر دهید. برای تغییر آن به فایل تنظیمات (SiteName/config.toml) بروید.

baseURL = "https://<your GitHub username>.github.io/SiteName/"

حال دستورات زیر را اجرا کنید تا سایت خود را بتوانید با گیت کنترل کنید:

git init
echo "/public/" >> .gitignore
echo "/themes/" >> .gitignore
git add --all
git commit -m "Initial commit

بعد از اجرای این دستورات به داخل پوشه public رفته و دستورات زیر را اجرا کنید:

cd public
git init
git remote add origin git@github.com:<github-username>/SiteName.git

حال فایل ها را کامیت کرده و به مخزن گیت‌هابی که ایجاد کرده‌اید پوش کنید:

git add --all
git commit -m ":tada: Initial Commit"
git push -f origin master

حال با رفتن به آدرس صفحه گیت‌هاب, می‌توانید سایت خود را مشاهده کنید.

 

منبع: +

2 نظرات
  1. mahm0ud می گوید

    خیلی عالی بود عرفان جان، داکیومنت فارسی برای استاتیک جنریتور ها کمه که امیدوارم با همکاری دوستان بیشتر بشه

  2. یاشار می گوید

    سلام. خیلی عالی بود. اگر ممکنه در مطلبی کمی بیشتر درباره امکانات Hugo توضیح بدین. و اینکه برای افراد عادی چطور می تونه کمک کنه.

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.