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

سه‌شنبه ۰۵ دی ۱۳۹۶
۲ دقیقه مطالعه

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

تلگرام چطور برای برخی پیوندها پیش‌نمایش تولید می‌کند؟

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

مشکل کجا بود و چطور آن را حل کردم؟

با کمی بررسی متوجه شده که هرچند من کلمات کلیدی و عنوان را در هدر صفحات درج می‌کردم اما خبری از سایر تگ‌ها مثل شرح و نویسنده نبود. اول قصد داشتم این‌ها را به صورت دستی در هدر تم مهدیکس درج کنم ولی با یک جستجوی ساده پلاگینی برای جکیل پیدا کردم به نام ‬jekyll-seo-tag که همینکار را قبلا انجام داده است. بنابراین من این پلاگین را به تم اضافه کردم و تغییرات لازم را انجام دادم و یک نسخه جدید از تم با این تغییرات منتشر کردم.

اطلاعات ویژه موتورهای جستجو

اگر با گرفتن Ctrl + U سورس صفحه را ببینید. علاوه بر تگ‌های متای معمول یک تگ اسکریپت هم به صفحه اضافه شده است که کار همین پلاگین است. من قبلا قصد اضافه کردن آن را داشتم ولی آن را به آینده موکول کرده بودم که البته این پلاگین زحمت من را کم کرد. این تگ از جنس application/ld+json است و LD-JSON نام دارد. ماجرا از آنجا شروع شد که مدتی پیش با ابزارهای وب‌مستر گوگل سایتم را بررسی کردم و پی به مشکلاتی بردم. مثلا لینک‌های خراب و کلیدواژه‌های تکرار در همه صفحات. بخشی از آنها را رفع کردم. در میان راهنماهای گوگل بخشی هم بود برای افزودن LD-JSON به صفحات و شرح هرچه بهتر محتوای آنها برای موتورهای جستجو. نمایش ساختارمند برخی از وبسایتها در جستجوی گوگل همواره برایم جالب بود. اضافه کردن LD-JSON گامی است در همین مسیر هرچند در حال حاضر ممکن است نواقص زیادی داشته باشد. ولی اگر با دقت آن را بررسی کنید اطلاعات زیادی درونش گنجانده شده است.

چرا اینکارها جای تولید محتوا را نمی‌گیرد؟

به این قبیل کارها SEO یا سئو می‌گویند که مخفف Search Engine Optimization است. این اصلاحات نمایش را در موتورهای جستجو بهبود می‌دهد ولی پرواضح است که چیزی نمی‌تواند جای محتوای خوب را بگیرد. همه این کارها وقتی سودمند خواهد بود که مرتب و بیشتر و بهتر بنویسیم. بزرگترین چالش در برابر ما اینست که همواره بنویسیم. شاید در هیاهوی زندگی روزمره درک اهمیت نوشتن مشکل باشد. می‌شود یک وبسایت را هر روز زیباتر کرد و سئوی آنرا بهبود بخشید ولی آنچه ماورای همه‌ی سئوهاست نوشته‌های ارزشمند است. برای بهتر شدن هم باید خواند و نوشت.

نسخه ۰.۱.۱۹ تم مهدیکس هم منتشر و آماده استفاده است. اصلاحات دیگری هم انجام داده‌ام از قبیل بکارگیری کامنت‌دونی استاتیک که بزودی در مورد آنها خواهم نوشت.

سورس