آموزش ساخت نقشه سایت 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 28 |
<?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 = array( 'طراحی-سایت', 'سئو', 'برنامه-نویسی', 'طراحی-سایت-فروشگاهی', 'طراحی-سایت-با-وردپرس', ); foreach( $pages as $page ) { $url = $base_url . rawurlencode( $page ); echo '<url>'; echo "<loc>{$url}</loc>"; echo '</url>'; echo "\n"; } echo '</urlset>'; ?> |
با جایگزین کردن بخش میانی کد بالا با دستورات خواندن از پایگاه داده، میتوانید یک نقشهی سایت پویا یا داینامیک برای سایت خود ایجاد نمایید که همیشه به روز خواهد بود.