Android & Flutter
گرفتن Rest Api از وردپرس و ساده سازی JSON دریافتی با پلاگین برای استفاده در اپ اندروید
با سلام و وقت بخیر خدمت شما دوستان عزیز
قصد دارم توی این مقاله در مورد این که چطور از وردپرس REST API بگیریم صحبت کنم.
ما به عنوان توسعه دهنده اندروید،نیاز به بک اند داریم که بتونیم داده هایی رو که میخوایم از سرور بگیریم و در برنامه خودمون نمایش بدیم،راه حلی که معمولا ابتدای کار از اون استفاده میکنیم،سایت هایی هست که json خودمون رو روی اون آپلود میکنیم و یه لینک به ما میده که میتونیم توی اپ استفاده کنیم،ولی خوب معایبی داره برای مثال ممکنه حذف بشه فایلمون یا بخوایم چیز تازه ای اضافه کنیم که کارمون رو سخت میکنه
راه حل دومی که به ذهنمون میرسه،این هست که به کسی که طراح سایت بسپریم که یک سرور برای ما ران کنه که api داشته باشه به همراه پنل که هزینه بالایی داره و قطعا راه پیشنهادی برای کسب و کار هست
و راه سومی که میشه ازش استفاده کرد سیستم مدیریت محتوای وردپرس هست که به ما اجازه میده به راحتی وبسایت شخصی خودمون رو راه اندازی کنیم و با استفاده از پلاگین به طور رایگان میتونیم از وردپرسمون api بگیریم و توی اپ از داده هامون استفاده کنیم و برای راه اندازی یک سایت شخصی که نمیخوایم هزینه زیادی کنیم با کمتر از 100 هزارتومن میتونیم به راحتی راه اندازیش کنیم یا حتی رایگان
خوب قطعا انتظار میره شمایی که مقاله رو میخونید کار با وردپرس رو بلد باشید در حد ابتدایی
ما به دو طریق میشه از وردپرس api بگیریم یکی کدنویسی و یکی استفاده از پلاگین هست،که اگر بخوایم خودمون کدنویسی کنیم نیاز به دونستن php و .. هست ...
راه دومی که ما میخوایم استفاده کنیم استفاده از پلاگین هست که پلاگینی که ما استفاده میکنیم
پلاگین WP REST API که روی اسم پلاگین کلیک کنید وارد صفحه میشید و اون رو دانلود کنید و توی قسمت Plugin وردپرستون اپلود کنید و فعالش کنید.
و به همین راحتی api شما ساخته میشه و به یکی از این دو آدرس میتونید json رو مشاهده کنید:
mysite/wp-json/wp/v2/posts
or
mysite/index.php?rest_route=/wl/v2/posts
در اینجا میتونیم اطلاعات مختلفی رو ببینیم، که قطعا برای ما که میخوایم صرفا یه اطلاعات ساده ای از پست هامون داشته باشیم json دریافتی خیلی پیچیده هست و مارو کلافه میکنه
چند تا راه هست برای این که json رو ساده تر کنیم و ساده تر ببینیم:
یکی از راه ها این هست که همه فایل رو با استفاده پلاگین از Generate POJOs from JSON توی اندروید استودیو کپی کنیم و خود به خود مدل مارو میسازه و از اونایی که نیاز داریم توی اپ استفاده کنیم و یا اینکه اضافیا رو توی اندروید استودیو حذف کنیم
و راه دوم این هست با استفاده از سایت های مثل jsonEditorOnline جیسون دریافتی رو توی سایت کپی کنیم و مواردی که نیاز نداریم رو حذف کنیم و فایل نهایی رو دریافت کنیم و توی اندروید استودیو مدلمون رو بسازیم
راه سومی که من میخوایم در موردش توضیح بدیم،طبق آموزشی هست که توی یوتیوب هست و میتونید این آموزش رو که 15 دقیقه هست مشاهده کنید و یک api بنویسید که صرفا id و title و contentو image هر پستی رو میگیره و نمایش میده که اگر خوب دقت کنید میتونید فیلدهای دیگه ای هم که نیاز دارید رو خودتون اضافه کنید
ولی اگر مثل من حوصله ندارید خودتون کد نویسی کنید D: و یا آشنایی ندارید با php، میتونید کدنهایی این جلسه رو به از اینجا دریافت کنید
توی تصویر بالا ،بالای سایت میبینید که نوشته download zip پلاگین رو دانلود کنید و به افزونه های وردپرس اضافه کنید و فعالش کنید
و برای دیدن فایل json ساده شده خودتون باید به جای آدرس بالا از این آدرس استفاده کنید
آدرس قبلی شما به این صورت هست:
mysite/index.php?rest_route=/wp/v2/posts
و آدرس جدید به این صورت:
mysite/index.php?rest_route=/wl/v1/posts
و json دریافتی بدون پیچیدگی هست و به راحتی میتونیم توی اپ از اون استفاده کنیم
و نکته ای که مهمه ممکنه به مشکل بربخورید این هست که baseurl رو صرفا آدرس اصلی سایت بدید توی رتروفیت
مثلا baseurl: iman.com
و توی انوتیشن get بقیه ادرس رو قرار بدید به این صورت: GET("index.php?rest_route=/wl/v1/posts")
امیدوارم که مقاله براتون مفید بوده باشه
اگر سوالی داشتین یا به مشکلی برخوردین خوشحال میشم کمکتون کنم
موفق باشین
یاعلی
مطلبی دیگر از این انتشارات
بررسی نحوهی کارکرد this در Class های جاوا اسکریپت
مطلبی دیگر از این انتشارات
پرونده ای علیه تحصیل
مطلبی دیگر از این انتشارات
راهنمای نصب Visual Studio Code برای مبتدیان