با Reactjs و Hygraph CMS یک وب سایت بلاگ بسازید

با استفاده از سیستم مدیریت محتوا (CMS) می توان مدیریت محتوای وبلاگ را برای شما و مشتریانتان آسان تر کرد. CMS نرم افزاری است که به شما امکان می دهد محتوای دیجیتال خود را به راحتی با یا بدون دانش فنی ایجاد و مدیریت کنید.
در این مقاله، نحوه ساختن یک برنامه وبلاگ کاملا کاربردی با React و Hygraph CMS را یاد خواهید گرفت.
Hygraph چیست؟
Hygraph یک پلتفرم محتوای فدرال است که از GraphQL برای API های محتوا استفاده می کند و توزیع محتوا را آسان تر می کند. بعداً در مقاله خواهید دید که چگونه Hygraph ایجاد طرحواره های محتوا و دسترسی به همه آنها را از طریق GraphQL API آسان می کند.
پیش نیازهای پیگیری:
دانش متوسط React;
یک IDE، ترجیحاً کد VS؛
مرورگری مانند کروم؛
شروع با Hygraph
با ایجاد یک حساب کاربری با Hygraph شروع کنید. برای ایجاد پروژه ادامه دهید، نام، توضیحات و منطقه ذخیره سازی داده را انتخاب کنید.
این شما را وارد این صفحه می کند.
در منوی سمت چپ، روی schema کلیک کنید تا مدل محتوای خود را پر کنید. کنار گزینه models. بر روی گزینه افزودن کلیک کنید و جزئیات پست وبلاگ خود را تکمیل کنید.
حالا که با این کار تمام شده اید. Hygraph شما را وارد گزینه فیلدها می کند که به شما امکان می دهد تمام جزئیات وبلاگ خود را اضافه کنید.
پس از پر کردن محتوای خود به بخش تنظیمات پروژه در سمت چپ صفحه بروید. در اینجا میتوانید به APIهایی که برای واکشی دادهها به برنامه React خود استفاده میکنید دسترسی داشته باشید.
برای مشاهده پرس و جوهای GraphQL ایجاد شده، روی بخش API Playground کلیک کنید.
اکنون زمان ایجاد اپلیکیشن React است. این را با اجرا پیاده کنید npx create react app
در ترمینال کد VS شما.
پس از انجام این کار، زمان واکشی این داده ها فرا رسیده است. یک پوشه کامپوننت در برنامه React خود ایجاد کنید و یک فایل Blogcard.js ایجاد کنید. از این کد استفاده کنید:
لطفاً توجه داشته باشید که نام پروژه های من اتفاقاً متفاوت است زیرا کد زیر مربوط به پروژه ای است که قبلاً با Hygraph ساخته بودم.
import "./Blogcardstyles.css";
import React, { useState, useEffect } from "react";
import { Link } from "react-router-dom";
import image1 from "../assets/claudio-testa--SO3JtE3gZo-unsplash.jpg";
import image2 from "../assets/tomoko-uji-eriuKJwcdjI-unsplash.jpg";
import image3 from "../assets/henry-be-IicyiaPYGGI-unsplash.jpg";
import { request } from 'graphql-request';
const Blogcard = () => {
const [blogs, setBlogs] = useState([]);
useEffect(() => {
const fetchBlogs = async () => {
const { blogappsmwendwa } = await request(
`your api key goes here`
{
blogappsmwendwa {
hereWeGoWithTheBlogapp
loremIpsumLoremIpsum
}
}`
);
setBlogs(blogappsmwendwa);
};
fetchBlogs();
}, []);
return (
<div className="work-container">
<h1 className="project-heading">All Blogs</h1>
<div className="project-container">
<div className="project-card">
<img src={image1} alt="nature" />
<h2 className="project-title">Content fetched from Hygraph CMS</h2>
<div className="pro-details">
{blogs.map((blogapp) => (
<p>{blogapp.hereWeGoWithTheBlogapp}</p>
))}
<div>
<Link to="/Page" className="btn">Read More</Link>
</div>
</div>
</div>
<div className="project-card">
<img src={image2} alt="nature" />
<h2 className="project-title">Content fetched from Hygraph CMS</h2>
<div className="pro-details">
{blogs.map((blogapp) => (
<p>{blogapp.hereWeGoWithTheBlogapp}</p>
))}
<div>
<Link to="/Page" className="btn">Read More</Link>
</div>
</div>
</div>
<div className="project-card">
<img src={image3} alt="nature" />
<h2 className="project-title">Content fetched from Hygraph CMS</h2>
<div className="pro-details">
{blogs.map((blogapp) => (
<p>{blogapp.hereWeGoWithTheBlogapp}</p>
))}
<div>
<Link to="/Page" className="btn">Read More</Link>
</div>
</div>
</div>
</div>
</div>
)
};
export default Blogcard;
که در BlogCard.js
، توانستید یک درخواست GraphQL ایجاد کنید که محتوای وبلاگ شما را از طرحواره Hygraph واکشی می کند.
پس از آن توانستید استفاده کنید map()
روشی برای تعیین اینکه هر بخش از داده ها کجا می رود.
اکنون می توانید صفحه خود را بازخوانی کنید تا تمام داده های ذخیره شده در طرح Hygraph خود را مستقیماً در برنامه React خود مشاهده کنید.
را ادامه مطلب دکمهها به صفحه جدیدی هدایت میشوند که دادههای بیشتری را از طرحی که قبلا ایجاد کردهاید نمایش میدهد. برای مشاهده برنامه کامل وبلاگ، مخزن Github من را برای کد بررسی کنید.
نتیجه
از طریق این مقاله، CMS چیست، مزایای آن و نحوه ایجاد یک برنامه وبلاگ با محتوای واکشی شده از Hygraph که یک پلتفرم محتوای فدرال است، آموخته اید.