آموزش ساخت نقشه سایت XML با php
نقشهی سایت فایلی است که در قالب xml تولید میشود و شامل ساختار صفحات موجود در یک سایت است. هرچند نقشه سایت کاربردهای متعددی دارد، ولی کاربرد اصلی آن، آسان کردن کار موتورهای جستجو برای یافتن تمامی محتوای موجود در یک سایت اینترنتی است.
سیستمهای مدیریت محتوا مثل وردپرس، جوملا و دروپال افزونههایی برای ساخت نقشهی سایت را به آسانی انجام میدهند. فریمورکهای برنامهنویسی مثل لاراول هم دارای کتابخانههای برای تولید نقشه سایت هستند. همچنین ابزارهای آنلاینی وجود دارند که نقشهی سایت را با پیمایش صفحات یک سایت برای یک بار به انجام میرسانند.
در این نوشته روش ایجاد نقشهی سایت را برای سایتهای سفارشی طراحی شده با php بررسی خواهیم نمود.
برای شروع کافی است یک فایل با نام xmlsitemap.php در سایت خود ایجاد نمایید. و محتویات زیر را درون آن قرار دهید.
1 2 3 4 5 6 7 8 9 |
<?php header( "Content-type: text/xml" ); echo '<?xml version="1.0" encoding="UTF-8"?>'; echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'; echo "\n"; echo '</urlset>'; ?> |
قطعه کد بالا شامل یک نقشهی سایت خالی است که هیچ صفحهای در آن وجود ندارد. خط نخست از کد بالا که با دستور header شروع شده است، سبب میشود مرورگر یا گوگل، نوع محتوای ایجاد شده توسط این فایل را xml شناسایی کند.
در ادامه سرآمد فایل xml و سپس یک عنصر urlset ایجاد میشود. نشانی صفحات سایت میبایست درون این عنصر قرار بگیرند.
برای خواندن محتوای صفحات، معمولا لازم است تا ارتباط با پایگاه داده ایجاد شود و نشانی صفحات از آن طریق در نقشهی سایت قرار گیرند. در این نوشته ما با استفاده از یک آرایه که نشانی چند صفحهی سایت را در خود جای داده، کد خود را تکمیل میکنیم:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
<?php header( "Content-type: text/xml" ); echo '<?xml version="1.0" encoding="UTF-8"?>'; echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">'; echo "\n"; $base_url = 'https://rokaweb.ir/'; $pages = [ 'طراحی-سایت', 'سئو', 'برنامه-نویسی', 'طراحی-سایت-فروشگاهی', 'طراحی-سایت-با-وردپرس', ]; foreach( $pages as $page ) { $url = $base_url . rawurlencode( $page ); echo '<url>'; echo "<loc>{$url}</loc>"; echo '</url>'; echo "\n"; } echo '</urlset>'; |
با جایگزین کردن بخش میانی کد بالا با دستورات خواندن از پایگاه داده، میتوانید یک نقشهی سایت پویا یا داینامیک برای سایت خود ایجاد نمایید که همیشه به روز خواهد بود.
نکات فنی در تولید نقشه سایت
باید توجه داشته باشید که فایل نقشه سایت ممکن است حجم بسیار زیادی پیدا کند و اگر تعداد صفحات سایت شما زیاد است میبایست نقشهی سایت را به قطعات کوچکتر تقسیم کنید. همچنین با توجه به محدودیت استفاده از حافظه، استفاده از روش بالا به جای تولید کدهای XML توسط کتابخانههای موجود در php این مزیت را دارد که احتمال مشکلات در این زمینه به حداقل میرسد.
معرفی نقشه سایت به موتورهای جستجو
معرفی نقشه سایت به موتورهای جستجو مثل بینگ و گوگل میبایست به صورت دستی انجام شود. با ورود به بخش کنسول جستوگر مورد نظر و رفتن به بخش نقشهی سایت میتوانید لینک نقشه سایت را به موتور جستجوگر معرفی نمایید.
همچنین امکان درج لینک نقشه سایت در فایل robots.txt سایت وجود دارد. بهتر است معرفی نقشه سایت را با هر دو روش انجام دهید تا رباتهای جستجوگر بیشتری بتوانند به آسانی ساختار صفحات سایت شما را پیمایش کنند.
ثبت نقشه سایت در فایل robots.txt به شکل زیر انجام میشود:
1 |
Sitemap: https://example.com/sitemap.xml |