Ali

شخصی سازی صفحات حذف شده

10 پست در این موضوع قرار دارد

باسلام

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

چطور میتونیم حالتی رو تنظیم کنیم که اگه با چنین نامی site.com/1/1/1/333 صفحه ای هم نداشته باشیم ولی طوری ( به کاربر یا موتورجستجو) نشون بدیم که این 404 نیست و مثل یک صفحه ساخته شده باز بشه؟( منظورم ریدارکت کردن یا زیبا سازی صفحه 404 نیست)

برای اینکه بهتر متوجه بشین اینو ببینید:

http://www.smsbazi.com/34343dd

چنین صفحه ای وجود ندارد! و محتویات این صفحه از http://www.smsbazi.com/testtest.php لود میشود و 404 نمایش داده نمیشود.

چنین حالتی را چطور تنظیم کنیم؟

باتشکر

0

به اشتراک گذاری این پست


لینک به پست

خوب کار ساده ایی هست.

کافیه شما صفحه 404 خودتون رو شخصی سازی کنید.

یک فایل به نام 404.php در پوسته تون بسازید و هر چیزی که دوست دارید داخلش بزارید.

حالا هر صفحه ایی هم که وجود نداشته باشه به جای خطای 404 چیزی که شما میخوای رو نشون میده.

1

به اشتراک گذاری این پست


لینک به پست

بله خوب بازم 404 شد دیگه...

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

0

به اشتراک گذاری این پست


لینک به پست

نه، شما اسم و توضیحات صفحه رو چیز دیگه ایی میزاری و موقع نمایش یک محتوا رو نشون مدیه.

مثلا شما داخلش یک پست تصادفی نمایش بده.

دیگه موتور جستجو از کجا میفهمه این صفحه وجود نداره؟

2

به اشتراک گذاری این پست


لینک به پست

دیگه موتور جستجو از کجا میفهمه این صفحه وجود نداره؟

من فکر میکنم اینکار فقط باعث میشه کدهای 404 رو تغییر بدیم و به جای "404 - یافت نشد "متن دیگه ای بنویسیم..

چون محتویات در فایل 404.php قرار داره و به جای نمایش متن همیشگی از کدهای که ما گذاشتیم استفاده میکنه...

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

هدفم ساخت 404 اختصاصی نیست! ( چون موتورهای جستجو متوجه میشه) هدفم اینه که هر زمانی هرکس آدرس اشتباهی وارد کد یا آدرس مطلبی وارد کرد که اصلا وجود نداره طوری وردپرس عمل کنه که انگار اون آدرس وجود داره

مثلا این سایت http://www.smsbazi.com/

وقتی شما آدرس نادرستی رو وارد میکنید 404 زیبا سازی و اختصاصی نشده ! بلکه محتویات صفحه نادرست از http://www.smsbazi.com/testtest.php بارگذاری میشه

امیدوارم منظورمو گرفته باشید

چنین موردی رو در وردپرس چگونه فعال کنم؟

ممنون

0

به اشتراک گذاری این پست


لینک به پست

علی جون ماشالله به این نوآوری ;) ... بهترین راه اینه که بجای کد 404 تو Header جواب درخواست کاربران 200 رو ارسال کنیم که گوگل و ... متوجه چیز بدی نشن ... راحترین روش اینه که برید تو wp-includes/classes.php و دو خط زیر رو کامنت کنید مثل زیر


//$wp_query->set_404();
//status_header( 404 );

اما خوب قرارمون اینه که تنظیمات وردپرس رو مستقیم تغییر ندیم تا در هنگام بروزرسانی تنظیمات ما نپره. پس بهتره که بیایم صفحات 404 ریدایرکت کنیم به صفحه اصلی یا چیزی شبیه به آن ( حتماً باید 301 ریدایرکت شه ) تا کلاً اون آدرس حذف شه تو گوگل ...

برای ریدایرکت کردن هم من تو فایل .htaccess اول کد زیر رو اضافه می کنم


ErrorDocument 404 default
RewriteRule ^(.+)$ /index.php/$1 [L]

بعدشم حالش رو می برم :) البته یادت نره این خط رو پاک کنی


RewriteRule . /index.php [L]

3

به اشتراک گذاری این پست


لینک به پست

علی جان ممنون از جوابت :)

یعنی در نهایت باید .htaccess به این شکل بشه


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
ErrorDocument 404 default
RewriteRule ^(.+)$ /index.php/$1 [L]

درسته؟

بعد باید این مسیرو :


RewriteRule ^(.+)$ /index.php/$1 [L]

تغییر بدیم به محلی که نمونه ما قرار داره مثلا


RewriteRule ^(.+)$ /cdn/index.php/$1 [L]

یعنی هر زمانی که آدرس اشتباهی وارد شد اطلاعات 404 ارسال نشه و 200 ارسال بشه و محتویات اون صفحه از site.com/cdn/index.php لود بشه؛ اینجوریه؟

اگه یه خورده توضیح بدی ممنون میشم

0

به اشتراک گذاری این پست


لینک به پست

نه به جای


RewriteRule . /index.php [L]

باید


RewriteRule ^(.+)$ /index.php/$1 [L]

قرار بدید. جای 404 خوبه ...

2

به اشتراک گذاری این پست


لینک به پست
اما خوب قرارمون اینه که تنظیمات وردپرس رو مستقیم تغییر ندیم تا در هنگام بروزرسانی تنظیمات ما نپره. پس بهتره که بیایم صفحات 404 ریدایرکت کنیم به صفحه اصلی یا چیزی شبیه به آن ( حتماً باید 301 ریدایرکت شه ) تا کلاً اون آدرس حذف شه تو گوگل ...

ببینید من منظورم اصلا ریدارکت کردن نیست !

ببین مثلا این سایت

http://www.persianfal.com

یه آدرس داره به نام

http://www.persianfal.com/testest.html

که هرگاه آدرس اشتباهی وارد شد مثلا

http://www.persianfal.com/33

به کاربر 200 ارسال میشه و 404 نیست !

یعنی محتویات صفحه

http://www.persianfal.com/33 از

http://www.persianfal.com/testest.html

لود میشه

من اینو میخام

جواب بدی ممنون میشم...

0

به اشتراک گذاری این پست


لینک به پست

خوب مرحله اولی که گفتم رو اجرا کنید ( کامنت کردن 404 ) بعد صفحه 404 همانطوری که آقای مرتضی گفتن تغییر دهید.

2

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط stanesti
      با سلام
      من به تازگی یک سایت با وردپرس راه اندازی کردم و الان به مشکل خوردم و هر کار کردم نتونستم حلش کنم و برای همین هم این مطلب رو ارسال می کنم
       
      حالا شرح سوال:
      وب سایت من علاوه بر بخش نوشته ها، از بخش نمونه کار ها، تیم ما، نظرات کاربران و .... نیز برخوردار هست.

      من می خواستم که نوشته هام در پوشه blog/ به نمایش در بیان مثل لینک زیر:
      https://stanesti.ir/blog/how-to-create-gravatar-account/
      برای این منظور اومدم و در داشبورد سایت به "تنظیمات > پیوندهای یکتا" رفتم و این تنظیمات رو اعمال کردم:

      پس از انجام این تنظیمات، نوشته ها به درستی کار می کنن اما نمونه کار ها نیز به پوشه blog/ منتقل شدن مانند لینک زیر:
      https://stanesti.ir/blog/portfolio/argon-dashboard-html-template/
      در حالی که من فقط می خواستم پست هایی که در بخش نوشته ها ارسال می کنم به blog/ منتقل بشن و بقیه پست های بخش های دیگه تغییری نداشته باشن و مثل لینک زیر باشن:
      https://stanesti.ir/portfolio/argon-dashboard-html-template/
       
      حالا به نظرتون چه کار باید بکنم؟ چه راهکاری پیشنهاد میدین؟
       
      ممنون میشم سریع تر جوابم رو بدید چون عجله دارم.
      تشکر
    • توسط jbihamta
      سلام وقتتون بخیر دوستان
      یک مساله خیلی غیر معمول برام پیش اومده اونم اینکه در بخش افزودن پست میخوام ۷ هزارو خورده ای کلمه پیش نویس کنم نمیزاره و بیشتر از  ۵ هزارتا ذخیره نمیشه کسی میدونه از چی هستش؟
    • توسط soshiant
      سلام
      دوستان یه کمک خیلی مهم ازتون میخوام
      به طور پیش فرض تو سایت وقتی کاربر میخواد یه فایل خریداری کنه، به صفحه پرداخت که edd به صورت پیش فرض ساخته میره (همون صفحه ای که رسید و فاکتور و مبلغ کل رو داره و از مشتری ایمیل و مشخصات رو میخواد)
       
      من میخوام تغییری تو این روند بدم. جوری که وقتی کاربر میخواد فایل رو بخره (تصویر 1)
      فاکتور و رسیدی که بعد از زدن روی دکمه پرداخت (تو سایت من اسمش دکمه بفرمایید هست) تو صفحه بعد میده رو میخوام تو همون صفحه و به صورت آژاکس نشون بده (تصویر 2 - با فتوشاپ درست کردم)
       
      ینی منظورم اینه که بعد از زدن رو دکمه، بجای این که صفحه رسید و پرداخت تو یه پنجره جدید باز بشه، میخوام همونجا و به صورت آژاکس فاکتور رو نشون بده و با زدن رو دکمه پرداخت به بانک وصل بشه
      لطفا راهنماییم کنید خیلی مهمه برام


    • توسط sajjad.1156
      با سلام
      دوستان بنده در سایتم از اسلایدر روولوشن استفاده می کنم اما متاسفانه وقتی از 13 لایه بیشتر به هر اسلاید اضافه می کنم خطای ایجکس میده و نمیذاره اسلاید رو ذخیره کنم.
      چه مسئله ای میتونه وجود داشته باشه؟
    • توسط hosseyn
      سلام سایت من به تازگی این مشکل رو پیدا کرده و توی گوگل وب مستر و گوگل سرچ کنسول خطای ایندکس نشدن صفحه اصلی سایت رو میده
      برای تبلیغ گوگل هم از صفحه اصلی ایراد می گرفت ولی با صفحات دیگه مشکلی نداره