PDA

View Full Version : نحوه کار این سایت http://www.xml-sitemaps.com ؟



mosi2007
پنج شنبه 28 اردیبهشت 1391, 11:17 صبح
سلام
من تو این سایت که برای ساختن سایت مپ هست رفتم و ادرسه وب سایتم دادم و برام یه فایل ایکس ام ال ساخت که نمیدونم چرا از صفحاتی که داخل فولدر بودند هیچ اطلاعاتی تو فایل ایکس ام ال نداد فقط و فقط از صفحاتی که در روت سایت بودن از اونا فایل ایکس ام ال رو ساخت
اصلا لازمه که ادرس همه صفحات رو تو سایت مپ داشته باشیم یا همون فایلهایی که در روت میباشد لازمه ؟؟؟

بعد اینکه از فایلهایی که کاربران تو سایت اپلود کرده ادرس اونا رو هم تو سایت مپ اورده مثلا ویدیو یا عکس ایا این هم لازمه و اینکه هر کاربری که میاد تو سایت یه چیزی رو اپلود میکنه ایا باید ادرس اون فایلها هم تو سایت مپ باشه ؟؟؟

djsaeedkhan
پنج شنبه 28 اردیبهشت 1391, 11:41 صبح
سلام
معمولا سایت مپ یا نقشه سایت شامل تمام صفحات سایت به صورت موضوعی می باشند. یعنی من صصفحه اصلی دارم، لوگین دارم و ... ولی دیگه نمیاد در قسمت مطالب سایت همه خبر ها با آیدی های مختلف رو نشون بده. این فقط برای این هست که اگر کاربر دنبال چیز خواصی می گشت و نمی دونست کجاست و چجوری می تونه پیداش کنه با رفتن به اون قسمت به همه دسترسی داشته باشه

mosi2007
پنج شنبه 28 اردیبهشت 1391, 15:24 عصر
سلام
معمولا سایت مپ یا نقشه سایت شامل تمام صفحات سایت به صورت موضوعی می باشند. یعنی من صصفحه اصلی دارم، لوگین دارم و ... ولی دیگه نمیاد در قسمت مطالب سایت همه خبر ها با آیدی های مختلف رو نشون بده. این فقط برای این هست که اگر کاربر دنبال چیز خواصی می گشت و نمی دونست کجاست و چجوری می تونه پیداش کنه با رفتن به اون قسمت به همه دسترسی داشته باشه
خب پس نتیجه میگیریم که اون سایت مپی که اون سایت برام ساخته درست نیست چون همه ادرسهامو نیاورده (اره یا نه)

djsaeedkhan
پنج شنبه 28 اردیبهشت 1391, 16:55 عصر
سایت مپ باعث لیست کردن مطالب سایت در صفحه ای ساده می شود ، که هدف از این کار دو دستی تقدیم کردن مطالب سایت به گوگل (xml) و راهنمای کاربران بصورت صفحه ایی (page)است. من نمی دونم چطوری برای شما این فایل درست شده و سرچ کنید چون برنامه هایی هم هست که اینکارو می کنند

mosi2007
پنج شنبه 28 اردیبهشت 1391, 19:07 عصر
سایت مپ باعث لیست کردن مطالب سایت در صفحه ای ساده می شود ، که هدف از این کار دو دستی تقدیم کردن مطالب سایت به گوگل (xml) و راهنمای کاربران بصورت صفحه ایی (page)است. من نمی دونم چطوری برای شما این فایل درست شده و سرچ کنید چون برنامه هایی هم هست که اینکارو می کنند

ولی من شنیده بودم که سایت مپ برای اینه که ادرس هر صفحه ای توش قرار بگیره و برای موتورهای جستجو خوبه و اینکه باعث میشه رنک سایت بره بالا و تو لیستهای موترهای جستجوگر در صدر قرار بگیره البته اینم میدونستم که برای راهنمایی کاربران هم هست
اگه تو رنک سایت و سئو تاثیری نداره ساخت سایت مپ که دیگه بی خیالش بشم ؟؟!
و اینکه عرض کردم که اون این سایت برای من سایت مپ رو ساخته بصورت انلاین
http://www.xml-sitemaps.com/

MMSHFE
پنج شنبه 28 اردیبهشت 1391, 19:38 عصر
این سایت (و تمام سایتهای ساخت نقشه سایت آنلاین) فقط برحسب لینکها کار میکنن. برای مثال اگه فایلی توی پوشه ریشه سایت باشه ولی هیچ لینکی از اون توی سایر فایلها نباشه و درنتیجه به هیچ طریقی با شروع حرکت Crawling از index و دنبال کردن لینکها نشه به اون صفحه برسیم، اون صفحه رو پیدا نمیکنه. بهترین کار، ساخت sitemap توسط اسکریپت خودتون هست. به زودی براتون یک اسکریپت آماده میکنم که کافیه اون رو با اسم sitemap.php توی فهرست ریشه سایتتون ذخیره کنید و اون رو بعنوان نقشه سایت معرفی کنید تا خروجی مناسب نقشه سایت رو براتون تولید کنه. این اسکریپت امکان تعریف صفحاتی که نمیخواین توی نقشه سایت باشن (مثل صفحات مدیریت و...) رو هم خواهد داشت.

ravand
پنج شنبه 28 اردیبهشت 1391, 22:48 عصر
چيزي كه من فهميدم اينه كه اگه 500 تا صفحه داشته باشي نميشه براش نقشه ساخت و براي صفحات محدود فقط جواب ميده.

MMSHFE
پنج شنبه 28 اردیبهشت 1391, 23:29 عصر
برای چنین مواردی هم راه حل وجود داره و اون هم ساخت نقشه سایت بصورت سلسله مراتبی هست. روش کار هم اینطوریه که یک sitemap اصلی داریم که هر لینک داخلش خودش یک sitemap فرعی هست و تعداد این لینکها رو میشه تا هر حدی که لازم باشه گسترش بدیم. اینطوری عملاً یک ساختار درختی برای نقشه سایت خواهیم داشت.

ravand
جمعه 29 اردیبهشت 1391, 09:41 صبح
من سه تا لينك اصلي دارم و يكي از اين اصلي ها حاوي مثلا700 تا آدرس هست چجوري ايني كه حاوي 700 تا آدرس هست فرعيش كنم؟
متشكرم.

MMSHFE
جمعه 29 اردیبهشت 1391, 11:08 صبح
باید بشکنید به دو قسمت (مثلاً 350 تایی) و آخرین لینک sitemap اصلی، لینک sitemap دوم باشه.

ravand
جمعه 29 اردیبهشت 1391, 11:11 صبح
مشكل اينجاست كه اين لينك ها در حال اضافه شدن هست.
شايد تا يه ماه ديگه بشه 1000 تا لينك:لبخند:

mosi2007
جمعه 29 اردیبهشت 1391, 11:36 صبح
برای لینکهایی که از اپلود ویدیوهای کااربران بوجود میاد لازمه ادرسش اضافه بشه تو سایت مپ یا نه فقط ادرس صفحات لازمه ؟؟؟

MMSHFE
جمعه 29 اردیبهشت 1391, 13:04 عصر
بستگی به نیازتون داره. اگه احساس میکنید توی رتبه سایتتون تأثیر میگذاره میتونید اونها رو هم بگذارین. البته یک نکته هم بد نیست گفته بشه: با یکی از برنامه نویسای وب هندی داشتم صحبت میکردم، میگفت گوگل جدیداً خیلی هوشمند شده و SiteMapهایی که حاوی لینکهای مجازی (لینکهایی که به صفحه فیزیکی اشاره نمیکنن - مثل لینک مطالب پویا و... که با htaccess. ساخته میشه) رو تشخیص میده و اینجور نقشه های سایت و حتی نقشه های سایت که خیلی زیاد آپدیت میشن رو Ignore میکنه. بنابراین توصیه میکرد بهتره نقشه سایت، فهرست واقعی فایلهای سایت باشه که میخواین در اختیار موتور جستجو قرار بدین و بقیه رو بگذارین خود Crawler موتور جستجو پیدا کنه.

MMSHFE
جمعه 29 اردیبهشت 1391, 17:07 عصر
این هم از اولین Site Map Generator که نوشتم! فقط چند تا متغیر اولش هست که باید توضیح بدم برای چیه و باید برحسب اطلاعات سایت خودتون تنظیمشون کنید:
url$ این متغیر، آدرس اصلی سایتتون (برای نمایش) هست که اول لینک همه صفحات باید بیاد. مثل /http://mysite.com دقت کنید که / آخر باید باشه.
root_dir$ این متغیر، آدرس فیزیکی پوشه ریشه سایتتون روی سرور رو مشخص میکنه که میتونه نسبی (نسبت به محل قرارگیری فایل sitemap مثل cms/.. یا بطور مطلق باشه (مثل / یا C:/wamp/www/mysite)
extensions$ پسوندهایی که میخواین توی نقشه سایت قرار بگیرن رو اینجا مشخص میکنید.
always_ignore$ مشخص میکنه کدوم کلمات اگه توی اسم فایل یا پوشه بودن، اون فایل یا پوشه توی نقشه سایت نیاد. مثلاً inc. یا admin و... که نکته مهم اینجاست که این کلمات هرجای اسم فایل یا پوشه دیده بشن، اون فایل یا پوشه از نقشه سایت حذف میشه.
ignore_files$ فایلهایی که میخواین توی نقشه سایت نیان رو مشخص میکنید (مثل config.php و...)
ignore_dirs$ پوشه هایی که نمیخواین توی نقشه سایت باشن رو توسط این متغیر تعیین میکنید (مثل admin و js و uploads و...)
برای اجرای اسکریپت هم کافیه مسیرش رو توی مرورگر وارد کنید (البته قبلش متغیرهایی رو که گفتم، تنظیم کنید). همونطور که میبینید، خروجی این فایل xml هست (با کمک تابع header) و درنتیجه مستقیماً میتونید این فایل رو بعنوان نقشه سایتتون معرفی کنید.
امیدوارم این اسکریپت مفید باشه. اگه نکته ای مدنظرتون بود بفرمایید. موفق باشید.

رضا قربانی
جمعه 29 اردیبهشت 1391, 18:32 عصر
برای امنیت بیشتر خوبه که : always_ignore$ - ignore_files$ و ignore_dirs$ در اچ تی اکسس تعریف بشه.

اسکریپت خوبیه . تشکر

Beginner2013
جمعه 29 اردیبهشت 1391, 18:57 عصر
با تشکر. همچنین بهتره فایلایی که مشول این انواع میشن{ always_ignore$ - ignore_files$ و ignore_dirs$} رو در فایل robot.txt به صورت dissalow قرار بدیم،مثلا


Disallow: /Admin/

mosi2007
جمعه 29 اردیبهشت 1391, 19:10 عصر
ا
root_dir$ این متغیر، آدرس فیزیکی پوشه ریشه سایتتون روی سرور رو مشخص میکنه که میتونه نسبی (نسبت به محل قرارگیری فایل sitemap مثل cms/.. یا بطور مطلق باشه (مثل / یا C:/wamp/www/mysite)

.

ممنون
ولی این یکی رو متوجه نشدم که منظورتون چی هست ایا باید مسیر فایل ایندکسو بدیم ؟؟

MMSHFE
جمعه 29 اردیبهشت 1391, 20:59 عصر
نه مسیر اصلی سایت که تولید نقشه از اونجا باید شروع بشه. مثلاً اگه فایل رو توی پوشه ریشه سایت گذاشتین، کافیه اینطوری تنظیمش کنید:


$root_dir = __DIR__;
// or
$root_dir = '.';

موفق باشید.

mosi2007
شنبه 30 اردیبهشت 1391, 01:11 صبح
نه مسیر اصلی سایت که تولید نقشه از اونجا باید شروع بشه. مثلاً اگه فایل رو توی پوشه ریشه سایت گذاشتین، کافیه اینطوری تنظیمش کنید:


$root_dir = __DIR__;
// or
$root_dir = '.';

موفق باشید.

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



This page contains the following errors:

error on line 2 at column 1: Extra content at the end of the document Below is a rendering of the page up to the first error.




این تنظیماته


// Please edit these values before running your script.
// The Url of the site - the last '/' is needed
$url = 'http://www.cheshmha.com/';
// Where the root of the site is with relation to this file.
$root_dir = __DIR__;
// Allowed extensions to consider in sitemap
$extensions = array(
'htm',
'html',
'php'
);
// Stuff to be ignored...
// Ignore the file/folder if these words appear anywhere in the name
$always_ignore = array(

'images'
);
//These files will not be linked in the sitemap.
$ignore_files = array(
'404.php',
'error.php',
'config.php'

);
//The script will not enter these folders
$ignore_dirs = array(

'css',

'images',
'func',
'jqtransformplugin'


);

MMSHFE
یک شنبه 31 اردیبهشت 1391, 00:42 صبح
خط header رو بصورت کامنت در بیارین بعد ببینید توی سورس کد چی چاپ میشه، همون رو اینجا بگذارین تا ببینیم مشکل از کجاست. بجای __DIR__ هم از '.' استفاده کنید ببینیم مشکل رفع میشه یا نه؟

mosi2007
یک شنبه 31 اردیبهشت 1391, 02:53 صبح
خط header رو بصورت کامنت در بیارین بعد ببینید توی سورس کد چی چاپ میشه، همون رو اینجا بگذارین تا ببینیم مشکل از کجاست. بجای __DIR__ هم از '.' استفاده کنید ببینیم مشکل رفع میشه یا نه؟

چطوری بصورت کامنت در بیارم ؟؟

MMSHFE
یک شنبه 31 اردیبهشت 1391, 09:32 صبح
به اولش // اضافه کنید.

mosi2007
یک شنبه 31 اردیبهشت 1391, 23:57 عصر
درست شد ایراد ماله __DIR__ که به جاش '.' گذاشتم
حالا این اطلاعاتی که داده تویه فایل با پسوند xml ذخیره کنم بعد بزارم تو روت بعد ادرس فایل xml را بدم به گوگل ؟؟ درسته دیگه ؟

راستی لازمه یه فایل robots.txt بسازم یا نه تاثیری تو سئو داره ؟؟

MMSHFE
دوشنبه 01 خرداد 1391, 00:44 صبح
نه نميخواد. همين فايل رو با اسم sitemap.php ذخيره كنيد و آدرس اين فايل رو به Google بدين. چون با Header نوع خروجي XML تعيين شده، گوگل قبولش ميكنه. بعلاوه اگه فايلي اضافه بشه، خودبخود شناسايي ميشه.

mosi2007
دوشنبه 01 خرداد 1391, 10:11 صبح
مرسی خیلی ممنون
یه سوال کوچیک دیگه داشتم اینه که :
توی جدول یه فیلدی گذاشتم به اسم keywords حالا کاربرانی که میاد ویدیو اپلود میکنن لغات کلیدی هم به این ویدیو اضافه میکنه که میره توی این فیلد keywords حالا گوگل چطوری از این فیلد توی جدول استفاده میکنه خودش میاد خود بخود تویه جدولو میگرده یا نه ؟؟
اگه امکانش هست یخورده راجع به استفاده از این لغات keywords که کاربران اضافه میکنه توضیح بدید که چی کار کنم که گوگل از اینا استفاده بکنه ؟؟
یا باید توی نمایش ویدیو لغات کلیدی را هم از توی جدول چاپ کنم ؟؟

.fatemeh
دوشنبه 01 خرداد 1391, 11:06 صبح
سلام.
خیلی خوب بود ممنون.
فقط چندتا سوال :
بعضی از صفحات من فقط توش کده که توی صفحات دیگه include شده البته من توی این صفحات هم title,keyword,description رو تعریف کردم
حالا این صفحات رو توی $ignore_files قرار بدم یا نه ؟
قرار ندادن اونها در این متغیر مشکل امنیتی نداره ؟
اگر بخوام نقشه سایتم به شکل درختی توی سایت باشه ربطی به این فایل xml نداره دیگه ؟

MMSHFE
دوشنبه 01 خرداد 1391, 14:56 عصر
معمولاً اینجور فایلها رو توی نقشه سایت نمیارن. چون کاربر قاعدتاً آدرس اونها رو توی مرورگر تایپ نمیکنه و اطلاعات بدرد بخوری هم برای موتور جستجو ندارن. بعلاوه ممکنه آدرس فایلهایی که جنبه خصوصی توی سایتتون دارن رو با این کار لو بدین که غنیمت خوبی برای یک هکر محسوب میشه. توصیه میکنم این فایلها رو توی ignore_files$ قرار بدین یا اگه همه این فایلها توی یک پوشه هستن، پوشه اونها رو توی ignore_dirs$ بگذارین. برای نقشه درختی هم خروجی این فایل رو باید بصورت XML پردازش کنید و خودتون ساختار درختی رو از روی اون بسازید.

MMSHFE
دوشنبه 01 خرداد 1391, 14:58 عصر
توی جدول یه فیلدی گذاشتم به اسم keywords حالا کاربرانی که میاد ویدیو اپلود میکنن لغات کلیدی هم به این ویدیو اضافه میکنه که میره توی این فیلد keywords حالا گوگل چطوری از این فیلد توی جدول استفاده میکنه خودش میاد خود بخود تویه جدولو میگرده یا نه ؟؟
اگه امکانش هست یخورده راجع به استفاده از این لغات keywords که کاربران اضافه میکنه توضیح بدید که چی کار کنم که گوگل از اینا استفاده بکنه ؟؟
یا باید توی نمایش ویدیو لغات کلیدی را هم از توی جدول چاپ کنم ؟؟
روش معمول اینه که خودتون وقتی صفحه مخصوص هر ویدئو رو نشون میدین، keywords رو از دیتابیس خونده و توسط تگ meta توی قسمت head قرار بدین تا موتور جستجو بتونه پیداش کنه. موتور جستجو به هیچ عنوان به دیتابیس شما دسترسی نداره. موفق باشید.