26 مرداد 1402

“وردپرس” headless بدون سر! معرفی شد [با نگاهی به سخنرانی ایوان پوپوف در WCEU]

 

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

person using a laptop to install headless wordpress

در این راهنمای جامع به ما بپیوندید که شامل جزئیاتی از جلسه WordCamp Europe 2022 ایوان پوپوف می‌شود و ما در حال بررسی دنیای وردپرس بدون سر و مزایای سازمانی آن هستیم.

برای دسترسی به بخش‌های خاصی از پیوندهای پرش زیر استفاده کنید:

1. چرا وردپرس بدون سر؟
2. مزایا و فواید پیکربندی وردپرس بدون سر
3. نقاط ضعف و چالش‌های پیکربندی وردپرس بدون سر
4. چگونه می‌توانیم یک وب سایت وردپرس بدون سر راه‌اندازی کنیم؟

وردپرس بدون سر چیست؟

برای درک اینکه چه چیزی پیکربندی وردپرس بدون هدلس را از وردپرس سنتی متمایز می‌کند، ابتدا باید در مورد سیستم‌های مدیریت محتوای هدلس به طور کلی صحبت کنیم.

بیشتر CMS هایی که احتمالاً با آنها کار کرده اید برای مدیریت هر دو قسمت جلویی وب سایت – رابطی که بازدیدکنندگان با آن تعامل دارند، مانند یک صفحه وب – و انتهای وب سایت – فایل های ذخیره شده در سرورها، از جمله اسکریپت ها و یک پایگاه داده محتوا قسمت پشتی جایی است که شما قبل از انتشار محتوا در قسمت جلویی محتوا را ایجاد، سازماندهی و مدیریت می کنید.

می‌توانیم به این راه‌اندازی به عنوان یک معماری CMS «همراه» اشاره کنیم، زیرا ابزارهای ویرایش جلویی و ابزارهای مدیریت پشتیبان در یک نصب هستند. هر دو بخش جلویی و پشتی به پایگاه داده دسترسی دارند و با هم صفحات وب و سایر دارایی هایی را که بازدیدکنندگان درخواست می کنند تولید می کنند. از آنجایی که یک معماری تلفیقی به صاحبان وب سایت اجازه می دهد تا کل وب سایت خود را از داخل یک برنامه بصری (مانند وردپرس) مدیریت کنند، این تنظیم برای مبتدیان محبوب است.

یک CMS بدون هد متفاوت کار می کند: ابزارهای جلویی را حذف می کند و فقط ابزارهای مدیریت محتوای پشتیبان را باقی می گذارد. در اصل، شما “سر” (انتهای جلویی) وب سایت خود را از بقیه “بدنه” آن (انتهای پشتی) جدا می کنید.

CMS های بدون سر همچنان به شما امکان آپلود، ایجاد، ویرایش و سازماندهی محتوا را می دهند. اما، به جای اینکه محتوا را مستقیماً به قسمت جلو هدایت کند، یک CMS بدون هد، منابع خود را از طریق یک REST API در دسترس یک راه حل front-end جداگانه قرار می دهد . این موضوع اصلاً به نحوه ظاهر محتوا برای بازدیدکنندگان مربوط نمی شود.

با این راه‌اندازی، پایگاه داده تنها در انتهای نصب قابل دسترسی است.

وردپرس هدلس cms در مقابل نمودار cms سنتی

اینجاست که وردپرس بدون سر و صدا وارد می شود: وردپرسی که من و شما می شناسیم از معماری تلفیقی استفاده می کند. شما دارایی های وب سایت خود را در داشبورد مدیریت می کنید و ظاهر آن را از طریق تم ها و افزونه ها کنترل می کنید.

اما، با اشتراک گذاری محتوا از طریق WordPress REST API ، هر نصب وردپرس را می توان بدون سر و صدا کرد. در پیکربندی وردپرس بدون هد، ابزارهای مدیریت محتوا هنوز در دسترس هستند، اما ویژگی‌های فرانت‌اند مانند تم‌ها و ویرایشگر بلوک موجود نیستند. یکی دیگر از برنامه های فرانت اند نحوه ظاهر وب سایت وردپرس شما را بررسی می کند.

راه اندازی هدلس بهترین راه حل برای همه کاربران وردپرس نیست. با این حال، مواقعی وجود دارد که این پیکربندی ایده آل است. در مرحله بعد، بیایید بحث کنیم که چرا یک کسب و کار ممکن است بخواهد وردپرس بدون هد را امتحان کند.

 

مزایای وردپرس بدون سر

چرا کسی از راحتی وردپرس سنتی برای هدلس چشم پوشی می کند؟ در برخی موارد، یک راه‌اندازی هدلس ممکن است برای یک وب‌سایت تجاری مناسب‌تر از نصب معمولی وردپرس باشد. در اینجا چند دلیل کلیدی وجود دارد:

عملکرد بهبود یافته

وردپرس سنتی صفحات وب را به صورت پویا رندر می کند. این بدان معناست که به جای ذخیره صفحات HTML ایستا برای ارسال به کاربران در صورت درخواست، سرور میزبان هر بار که درخواستی وارد می شود یک صفحه HTML ایجاد می کند. این به سرور نیاز دارد تا فرآیندهای PHP و MySQL را اجرا کند تا تمام منابع لازم را از پایگاه داده دریافت کند. ، آنها را در یک صفحه جمع کنید، سپس این صفحه را برای یک کاربر ارسال کنید.

ایوان پوپوف، مدیر عامل آژانس Vipe Studio ، در جلسه WCEU خود توضیح داد: “این باید برای هر بازدید کننده وب سایت اتفاق بیفتد، که بار بیشتر و بیشتری روی سرور شما وارد می کند. ” این می تواند منجر به کاهش زمان بارگذاری صفحه شود که به تجربه کاربر آسیب می رساند و تبدیل ها را کاهش می دهد .

با سپردن تحویل front-end به یک برنامه جداگانه مانند npm یا next.js، می توانید سرعت سایت خود را افزایش دهید. به گفته پوپوف، با این برنامه ها، تقریباً هیچ اسکریپت نویسی لازم نیست وقتی بازدیدکنندگان به سایت شما می آیند.

دلیل آن این است که آنها محتوا را از پایگاه داده واکشی می کنند و آن را در صفحات HTML از پیش رندر شده جمع آوری می کنند، سپس در صورت درخواست آن ها را برای مشتریان ارسال می کنند.

47e30be9fff77574392d8d0e390a6274-590x402

منبع تصویر

در حالی که کارهای ساده‌تری وجود دارد که می‌توانید برای بهبود عملکرد در نصب استاندارد وردپرس انجام دهید، سایت‌های سازمانی با ترافیک زیاد از سرعت‌های سریع‌تری که وردپرس بدون هدلس ارائه می‌کند بسیار سود خواهند برد.

پوپوف تاکید کرد: “ارزش وردپرس بدون سر و صدا زمانی به دست می آید که وب سایت بزرگ باشد.” بنابراین ناشران و سایر سایت های سازمانی که میلیون ها بازدید کننده در ماه دارند باید این سرمایه گذاری را در نظر بگیرند.

انعطاف پذیری جلویی

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

با یک CMS بدون هد، می‌توانید بخش «مدیریت محتوا» از CMS وردپرس را که می‌شناسید و دوست دارید، نگه دارید و تا زمانی که آن نرم‌افزار بتواند درخواست‌هایی را به API وردپرس ارائه دهد، تقریباً به هر نرم‌افزار دیگری که می‌خواهید برون‌سپاری کنید.

پوپوف توضیح داد که این برای مدیران سایت و تولیدکنندگان محتوا که به وردپرس عادت دارند ایده آل است زیرا تجربه آنها یکسان خواهد بود. «محتوا هنوز در وردپرس در حال تولید است. بنابراین ایجاد و انتشار پست در وردپرس به همین صورت است. آنها همچنان می توانند منوها و گزینه های دیگر را نیز به همین روش مدیریت کنند.

این راه‌اندازی همچنین برای توسعه‌دهندگان فرانت‌اند که می‌خواهند در برنامه دیگری کار کنند، از زبان‌های برنامه‌نویسی متفاوتی نسبت به آنچه وردپرس استفاده می‌کند، استفاده کنند و/یا یک چارچوب فرانت‌اند مانند React اضافه کنند تا کارشان آسان‌تر شود، مفید است.

وردپرس عمدتاً از PHP و جاوا اسکریپت ساخته شده است، اما وردپرس بدون سر به توسعه دهندگان اجازه می دهد محتوای سایت را بازیابی کنند، آن را هر طور که می خواهند بدون محدودیت وردپرس بسته بندی کنند و آن را در یک صفحه وب قرار دهند تا مخاطبان شما ببینند. در همین حال، تیم محتوای شما می تواند بدون نگرانی از اینکه این توسعه دهندگان از چه ابزارهایی استفاده می کنند، به کار در وردپرس ادامه دهند.

علاوه بر این، اگر بخواهید سیستم جلویی خود را تغییر دهید، چه؟ یا، اگر بخواهید سایت خود را دوباره طراحی کنید، یا از ابتدا آن را پشتیبان بسازید، چه؟ وردپرس بدون سر مسلماً همه اینها را آسان‌تر می‌کند، زیرا محتوای شما از قسمت جلویی جدا شده است. شما می توانید چهره وب سایت خود را تا جایی که می خواهید تغییر دهید، اما محتوا بدون تغییر باقی می ماند.

انتشارات چند کاناله

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

اگر چنین باشد، یک CMS بدون هد می‌تواند به عنوان یک منبع متمرکز برای چندین کانال انتشار عمل کند. در جلسه WCEU، پوپوف توضیح داد که نصب وردپرس بسیاری از کانال‌های بدون هد را تغذیه می‌کند. او گفت : «بنابراین ادمین‌های سایت محتوایی را اضافه می‌کنند که می‌تواند توسط هر وب‌سایت، برنامه تلفن همراه یا هر برنامه‌ای که داده‌ها را می‌خواند، استفاده کند.»

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

تصور کنید سعی می کنید این کار را با یک CMS سنتی انجام دهید. شما باید محتوای خود را برای هر رابط قالب بندی مجدد کنید – این به سادگی مقیاس پذیر نیست.

امنیت بهبود یافته

پوپوف در مصاحبه بعدی با جلسه WCEU خود توضیح داد: “یک وب سایت بدون هد سمت سرور ایجاد می شود، بنابراین بازدید کننده وب سایت هیچ ارتباطی با پایگاه داده ندارد.” این به دلایل امنیتی عالی است. او گفت: “یک هکر به چیزی برای هک نیاز دارد و با هدلس، آنها چیزی برای هک ندارند.”

در حالی که مکان یابی و دسترسی به پایگاه داده شما غیرممکن نخواهد بود، اگر قسمت جلویی شما از قسمت پشتی شما جدا شود بسیار دشوارتر خواهد بود.

باز هم، کارهایی وجود دارد که می توانید برای محافظت از سایت وردپرس خود بدون هدلس انجام دهید، اما مزیت امنیتی آن یک امتیاز دیگر از راه اندازی هدلس است.

 

معایب وردپرس بدون سر

قبل از اینکه در تلاش برای بی‌هدف ماندن با بک‌اند وردپرس خود به مشکل بخورید، به خاطر داشته باشید که این راه‌حل برای اکثر کاربران وردپرس ایده‌آل نیست.

پوپوف در مصاحبه بعدی گفت: “شما باید بدانید که کجا این فناوری را تطبیق دهید – نه اینکه فقط با آن سازگار شوید.”

اگر فقط یک وب سایت راه اندازی کرده اید یا بودجه محدودی دارد، می توانید از رویکرد سنتی استفاده کنید. Headless یک سرمایه گذاری بزرگ است که ممکن است هنگام شروع انتخاب هوشمندانه ای نباشد، به خصوص اگر دنبال یک کمپین بزرگ نباشید.

یکی از جذابیت های مهم سیستم مدیریت محتوا وردپرس، تجربه بدون کد است. با وردپرس بدون سر، اینطور نیست. شما باید یا از قبل با زبان های توسعه front-end مانند جاوا اسکریپت خیلی راحت باشید یا شخصی را استخدام کنید که قسمت بدون هدلس را بسازد. “شما حتی برای تغییرات کوچک هم به توسعه دهندگان قابل اعتماد می شوید.”

علاوه بر مهارت‌های لازم، راه‌اندازی یک وب‌سایت وردپرس بدون هد سرمایه‌گذاری زمانی قابل توجهی است – شما اکنون به جای یک سیستم، دو سیستم دارید که باید از آن مراقبت کنید. اگر محتوایی را با نرخ بالا منتشر نمی کنید، زمان، هزینه و انرژی لازم برای اجرای چنین وب سایتی ارزش تغییر را ندارد.

به همین دلیل است که شما تمایل دارید پیکربندی‌های بدون هد را بیشتر مشاهده کنید که توسط شرکت‌های بزرگ‌تر با منابع کافی برای انجام کار و محتوا و کانال‌های کافی برای توجیه سرمایه‌گذاری انجام می‌شوند.

 

چگونه یک وب سایت وردپرس بدون سر راه اندازی کنیم

اگر مزایا و معایب وردپرس بدون هد را سنجیده اید و به این نتیجه رسیده اید که ارزش دنبال کردن آن را دارد، راه های مختلفی برای انجام آن وجود دارد. روش شما بر اساس تخصص فنی و منابع، زبان‌ها و چارچوب‌های ترجیحی، و میزبان وردپرس ترجیحی شما که می‌تواند میزبانی بدون هد ارائه دهد، متفاوت خواهد بود.

صرف نظر از روش شما، باید با زبان های فرانت اند (از جمله جاوا اسکریپت) و با WordPress REST API راحت باشید. مهم نیست که چگونه آن را برش می دهید، خودتان قسمت جلویی را کدنویسی می کنید یا به کسی پول می دهید که این کار را برای شما انجام دهد.

ما می‌توانیم رویکردهای مختلف وردپرس بدون هد را به دو دسته کلی تقسیم کنیم: افزونه‌ها و کدنویسی خودتان. اجازه دهید در ادامه به طور مختصر در مورد هر روش بحث کنیم.

از یک افزونه استفاده کنید.

افزونه های وردپرس معمولاً به عنوان راه حلی برای نوشتن کد عمل می کنند. متأسفانه این مورد در مورد پلاگین های بدون هد وردپرس صدق نمی کند، که هنوز نیاز دارند که به زبان های برنامه نویسی مرتبط و مفاهیم API مسلط باشید تا بتوانید front-end خود را بسازید و به API درخواست دهید. با این حال، چند پلاگین قابل توجه (و رایگان) در دسترس هستند که می توانند زندگی شما را آسان تر کنند.

افزونه اصلی که می خواهیم برجسته کنیم WPGraphQL است که به توسعه دهندگان امکان می دهد نصب وردپرس خود را به یک API GraphQL تبدیل کنند . این بدان معنی است که توسعه دهندگان می توانند طرحواره های داده خود را ایجاد کنند که هر کلاینت فرانت اند ممکن است برای بازیابی داده ها از CMS بدون هد شما استفاده کند. اگر می‌خواهید طرح‌واره‌های داده خود را بنویسید و کد زمان اجرا را بنویسید که نحوه رسیدگی به درخواست‌های خاص را دیکته می‌کند، ممکن است یک API مبتنی بر GraphQL را به API REST WordPress ترجیح دهید.

صفحه دانلود افزونه وردپرس هدلس WPGraphQL

منبع تصویر

اگر به تجارت الکترونیک بدون سر علاقه دارید، CoCart یکی دیگر از افزونه های وردپرس است که باید در نظر بگیرید. CoCart فروشگاه WooCommerce شما را می گیرد و یک API بدون هد در بالای آن قرار می دهد و به مشتریان جلویی اجازه می دهد منابع فروشگاه مانند محتویات محصول و سبد خرید را درخواست کنند. این افزونه می تواند بسیار مفید باشد اگر می خواهید یک فروشگاه را در چندین پلتفرم راه اندازی کنید (به عنوان مثال، یک وب سایت و یک برنامه تلفن همراه) و محتوای خود را از یک بک اند WordPress/WooCommerce مدیریت کنید.

صفحه دانلود کوکارت پلاگین وردپرس هدلس

منبع تصویر

در نهایت، هنگامی که قسمت جلویی سایت هدلس خود را راه اندازی کردید، می توانید از پلاگین Headless Mode استفاده کنید تا هرکسی که سعی در دسترسی به سایت وردپرس قدیمی شما را دارد به آدرس front-end جدید خود بفرستد. این افزونه بسیار ساده است و تضمین می کند که بازدیدکنندگان بازگشتی پس از تغییر URL ها در تلاش برای دسترسی به سایت قدیمی شما سردرگم نخواهند شد.

خودت کد کن

در حالی که پلاگین ها اجرای API را آسان تر می کنند، اگر انعطاف پذیری می خواهید، نمی توانید رویکرد کدنویسی DIY را شکست دهید. آموزش های آنلاین زیادی وجود دارد که به طور عمیق و گام به گام نحوه پیاده سازی پیکربندی هدلس را در کپی وردپرس خود توضیح می دهد.

بهترین راهنمای گام به گام برای کار با WordPress REST API برای کسانی که کاملاً تازه وارد وردپرس بدون هد می شوند، این راهنمای مجله Smashing است که هر مرحله از فرآیند را با تکه کدهایی که می توانید خودتان استفاده کنید، طی می کند.

به‌جای ساختن قسمت جلویی وب‌سایت خود از ابتدا، ما همچنین توصیه می‌کنیم چارچوبی را یاد بگیرید که بسیاری از کارهای سنگین را برای شما انجام می‌دهد. گتسبی یکی از این فریم ورک ها است که به دلیل سازگاری با وردپرس قابل توجه است. با آن می توانید محتوای خود را از طریق وردپرس مدیریت کنید. سپس، وب سایت خود را از طریق سرویس ابری گتسبی راه اندازی کنید و در عین حال از افزایش عملکردی که گتسبی به شما می دهد لذت ببرید.

برای اطلاعات بیشتر در مورد بهبودهایی که گتسبی ارائه می دهد، این ویدیو را از توسعه دهندگان بررسی کنید:

اگر قبلاً این کار را نکرده‌اید، توصیه می‌کنیم به react React ، یک کتابخانه جاوا اسکریپت متعلق به متا برای ساختن قسمت‌های جلویی و استفاده مجدد از مؤلفه‌ها برای عملکرد بهتر، نگاه کنید. برای اتصال بک‌اند وردپرس خود به یک سایت فرانت‌اند مبتنی بر React، چارچوب رایگان و منبع باز Frontity را امتحان کنید ، که ساخت سایت‌های WordPress-React را آسان‌تر می‌کند.

به یک وردپرس انعطاف پذیرتر نیاز دارید؟ سعی کن بی سر بروی

در حالی که وردپرس بدون سر به وردپرس سنتی آنطور که ما می دانیم پایان نمی دهد، این یک گزینه عملی برای کسب و کارهایی است که به اندازه کافی بزرگ هستند تا از هزینه اجرا و نگهداری پشتیبانی کنند. ممکن است در ابتدا کار بیشتری برای شروع به نظر برسد، اما یک رویکرد بی‌هدف می‌تواند زمان زیادی را برای شما صرفه‌جویی کند و انعطاف‌پذیری بیشتری نسبت به وردپرس در اختیار شما قرار دهد.