چگونه مسئله oEmbed Facebook را در وردپرس برطرف کنیم

از 24 اکتبر ، فیس بوک پشتیبانی از جاسازی های تأیید نشده وردپرس را حذف می کند. بنابراین ، اگر محتوای فیس بوک و اینستاگرام را در سایت وردپرس خود جاسازی کنید ، آنها خراب می شوند.

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

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

بیایید آماده شویم!

نحوه استفاده وردپرس از تعبیه شده برای قرار دادن محتوا h2>

oEmbed پروتكلی است كه به سایتها اجازه می دهد تا محتوای سایتهای شخص ثالث دیگر را فقط با یك URL تعبیه كنند. این در درجه اول برای جلوگیری از نیاز به کپی کردن HTML از سایتهای دیگر طراحی شده است. وردپرس از oEmbed برای نمایش محتوای جاسازی شده استفاده می کند (مانند عکس ها یا فیلم ها ).

تمام کاری که شما باید انجام دهید این است که منبع URL را در قسمت محتوا قرار دهید و وردپرس به طور خودکار تبدیل می شود آن را در جاسازی کنید و پیش نمایش زنده آن را نشان دهید.

Embedding content with just a URL in WordPress

تعبیه محتوا فقط با یک URL در وردپرس

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

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

لیست ارائه دهندگان معتبر oEmbed وردپرس شامل بسیاری از سایت های محبوب میزبانی محتوای و شبکه های اجتماعی مانند Imgur ، Facebook ، Instagram ، Tumblr ، YouTube ، Vimeo و بسیاری دیگر است. این ارائه دهندگان می توانند هر محتوایی مانند فیلم ها ، iframes ، JavaScript و حتی HTML تصادفی را تعبیه کنند.

Facebook و Instagram oEmbed Endpoints (Legacy)

نقاط پایانی Facebook و Instagram oEmbed ستون فقرات برای جاسازی محتوای Facebook و Instagram در سایت های وردپرسی است.

An example of how WordPress embeds Facebook content

نمونه ای از نحوه جاسازی وردپرس در محتوای فیس بوک

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

An example of how WordPress embeds Instagram content

نمونه ای از نحوه جاسازی وردپرس در محتوای Instagram

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

نقاط پایانی “oEmbed” فیس بوک و اینستاگرام جدید h2>

فیس بوک اخیراً اعلام کرده است که از 24 اکتبر سال 2020 نقاط انتهایی موجود خود را استرداد می کند. آنها اکنون این نقاط انتهایی قدیمی را به عنوان نقاط انتهایی Legacy oEmbed .

تا 24 اکتبر 2020 ، هنگام پرس و جو از API نمودار برای تصاویر نمایه کاربر از طریق UID ، FB OEmbeds و IG OEmbeds ، توسعه دهندگان باید از یک کاربر ، برنامه یا رمز مشتری استفاده کنند. توسعه دهندگان هنگام پرس و جو برای تصاویر نمایه از طریق UID یا ASID ، باید یک کاربر یا کد برنامه ارائه دهند ، اگرچه رمزهای مشتری نیز پشتیبانی می شوند. لطفاً برای تغییرات تصویر کاربر ، Facebook OEmbed و Instagram OE برای جزئیات بیشتر در مورد چگونگی شروع تماس با این نقاط انتهایی Graph API ، آنها m تخت را وارد کنید.
فیس بوک برای توسعه دهندگان

آنچه که اکنون برای استفاده از API Facebook oEmbed به آن نیاز دارید h3>

بر خلاف وب باز بودن API وب oEmbed ، API جدید Facebook oEmbed نیازهای مختلفی دارد:

  • شما باید یک حساب کاربری Facebook برای برنامه نویس داشته باشید.
  • سپس برای ایجاد یک شناسه برنامه منحصر به فرد ، باید یک برنامه Facebook ثبت شده داشته باشید.
  • بعد ، شما باید محصول oEmbed را برای برنامه ثبت شده خود فعال کنید.
  • سپس باید یک Token Access App یا یک Client Access Token ایجاد کنید.
  • سرانجام ، باید برنامه Facebook را روی حالت زنده تنظیم کنید.

در پاسخ به این نیازهای جدید ، وردپرس Facebook و Instagram را به عنوان منابع معتبر oEmbed حذف می کند.

ما انتظار داریم که به روزرسانی عمده بعدی وردپرس شامل این تغییرات باشد. اگر از افزونه Gutenberg استفاده می کنید ، آخرین نسخه Gutenberg 9.0 پشتیبانی از آنها را از قبل حذف کرده است. p >

چه اتفاقی برای جاسازی های قدیمی فیس بوک و اینستاگرام می افتد؟ h2>

وردپرس پاسخهای oEmbed شده را در پایگاه داده خود در زیر post meta یا نوع پنهان حافظه پنهان پنهان می کند (در حال حاضر فقط در ابزارک ها استفاده می شود ).

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

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

نحوه قرار دادن محتوای فیس بوک و اینستاگرام پس از 24 اکتبر h2>

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

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

A simulated embed using legacy Facebook oEmbed endpoints 

جاسازی شبیه سازی شده با استفاده از نقاط انتهایی قدیمی Facebook oEmbed

جاسازی های برگشتی فیس بوک به عنوان گزیده های کوچک (حداکثر 120 نویسه) در آگهی های پیشنهادی نمایش داده می شود. همچنین شامل پیوندهایی به نویسنده و منبع اصلی است ، اما فراتر از آن چیز دیگری نیست.

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

A simulated embed using legacy Instagram oEmbed endpoints 

جاسازی شبیه سازی شده با استفاده از نقاط انتهایی Instagram oEmbed قدیمی

در مقایسه ، جاسازی مجدد اینستاگرام با ساختار جاسازی شده بسیار بهتر است.

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

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

نحوه رفع مشکل مسئله نصب شده در وردپرس در فیس بوک و اینستاگرام h2>

ساده ترین راه برای بازیابی جاسازی شده فیس بوک و اینستاگرام در وردپرس استفاده از افزونه رایگان oEmbed Plus توسط Ayesh Karunaratne است . این به شما کمک می کند تا نقاط انتهایی جدید Facebook oEmbed را پیاده سازی کنید تا تعبیه های فیس بوک و اینستاگرام را در ویرایشگر بلوک دوباره فعال کنید.

oEmbed Plus plugin

افزونه وردپرس oEmbed Plus

برای شروع با آن ، ابتدا افزونه را نصب و فعال کنید . p >

توجه: oEmbed Plus برای کار به PHP 7.3 یا نسخه های بالاتر نیاز دارد. اگر میزبان فعلی وردپرس شما هنوز از نسخه های PHP نسخه 7.3+ پشتیبانی نمی کند ، ما به شما اکیداً توصیه می کنیم به دنبال میزبانی جدید .

در مرحله بعدی ، اگر فاقد حساب هستید ، یک حساب Facebook for Developers ایجاد کنید. یکی در حال حاضر سپس ، یک برنامه ایجاد کنید. در مورد من ، من نام برنامه خود را “سایت وردپرس” گذاشته ام ، اما شما می توانید نام آن را هرچه دوست دارید بنویسید.

Create an App in Facebook for Developers portal

ایجاد یک برنامه در فیس بوک برای پورتال توسعه دهندگان

ایجاد یک برنامه باعث ایجاد خودکار شناسه برنامه برای آن می شود.

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

Facebook for Developers ‘App ID’ and ‘App Secret’

فیس بوک برای توسعه دهندگان” شناسه برنامه “و” برنامه مخفی ”

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

محصول oEmbed به طور پیش فرض به طور خودکار فعال می شود ، بنابراین می توانید آن را همانطور که هست بگذارید.

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

Configuring oEmbed Plus plugin settings

پیکربندی تنظیمات افزونه oEmbed Plus

همچنین می توانید شناسه برنامه و برنامه راز را به wp-config.php پرونده . این قطعه کد است که باید استفاده کنید:

  define ('OEMBED_PLUS_FACEBOOK_APP_ID'، '7168 ... app.id ... 789')؛
define ('OEMBED_PLUS_FACEBOOK_SECRET'، '20e5 ... app.secret ... 890xyz')؛  

فراموش نکنید که مقادیر نشان داده شده در بالا را به مقادیر خود تغییر دهید! پس از اتمام ، پرونده را ذخیره کنید.

اگر برای پیکربندی oEmbed Plus ، پرونده

wp-config.php /code> را ویرایش کنید ، به طور خودکار شناسه برنامه و زمینه های فرم App در داشبورد وردپرس خود. بنابراین ، می توانید اعتبار برنامه خود را از سایر کاربران مخفی نگه دارید.

این تقریباً تمام است!

همه جاسازی های جدید فیس بوک و اینستاگرام اکنون از API احراز هویت جدید برای جاسازی محتوا در سایت وردپرس شما استفاده می کنند.

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

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

خلاصه h2>

وردپرس محبوب ترین CMS است که امروزه استفاده می شود. به همین ترتیب ، فیس بوک و Instagram محبوب ترین سیستم عامل های رسانه های اجتماعی هستند. بنابراین ، این تغییر به طور بالقوه میلیون ها سایت را تحت تأثیر قرار می دهد.

قراردادن محتوای رسانه های اجتماعی در وردپرس تجربه منحصر به فردتری را به بازدید کنندگان سایت شما ارائه می دهد. از 24 اکتبر سال 2020 ، بسیاری از کاربران ناآگاه ، جاسازی محتوای فیس بوک و اینستاگرام را ناامید کننده می دانند. امیدواریم این مقاله به شما کمک کند تا مسئله oEmbed Facebook را در وردپرس اصلاح کنید.

اگر هنوز در جاسازی فیس بوک و اینستاگرام با مشکل روبرو هستید ، از طریق نظرات به ما اطلاع دهید!


اگر از این مقاله لذت بردید ، پس از آن عاشق پلتفرم میزبانی وردپرس Kinsta’s می شوید. وب سایت خود را توربوشارژ کرده و از تیم پیشکسوت وردپرس ما پشتیبانی 24/7 ساعته دریافت کنید. زیرساختهای Google Cloud ما بر مقیاس گذاری خودکار ، عملکرد و امنیت تمرکز دارند. بگذارید تفاوت Kinsta را به شما نشان دهیم! برنامه های ما را بررسی کنید a >

منبع:
https://kinsta.com/blog/facebook-oembed/.

دیدگاهتان را بنویسید