نمایش نتایج: از شماره 1 تا 6 , از مجموع 6

موضوع: مشکل در تغییر پیوند یکتا و هدایت به صفحه اصلی

Threaded View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #2
    عضو انجمن AtrafNet آواتار ها
    تاریخ عضویت
    Nov 2016
    نوشته ها
    259
    تشکر تشکر کرده 
    2,584
    تشکر تشکر شده 
    729
    تشکر شده در
    417 پست

    پیش فرض پاسخ : مشکل در تغییر پیوند یکتا و هدایت به صفحه اصلی

    سلام
    چون پیوند های یکتا وردپرس فرضی هستن و در واقع فایل فیزیکی برای صفحات ساخته شده فرضی اون وجود نداره چنین افزونه هایی چون احتمالاً میان از کد های مشابه این در فایل htaccess. شما استفاده میکنن هم صفحات اخطار 404 که واقعاً وجود ندارن و هم صفحات فرضی پیوند های یکتا وردپرس رو باهم به صفحه اصلی شما ریدایرکت میکنن:

    کد:
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule . / [L,R=301]
    در کد بالا خط دوم شرط گذاشته شده که اگه فایل درخواست شده وجود نداشته باشه سراغ ریدایرکت که در خط سوم آمده بره.
    پس متوجه شدیم که به دلیل فرضی بودن خود صفحات ساخته شده وردپرس که فایل فیزیکی ندارن این کد اونا رو با صفحاتی که واقعاً وجود ندارن یکسان می دونه.

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

    این فایل 404.php موجود در هر قالب علاوه بر امکان ایجاد استایل و HTML اختصاصی با توجه به php بودن فرمتش امکان کلاً ریدایرکت کردن صفحه به جای نمایش صفحه ای خاص هم داره که با کد زیر انجام میشه:
    نکته: اگر در قالب شما این فایل وجود نداره براحتی می تونید یه فایل با نام 404 و فرمت php در کنار سایر فایل های قالب خودتون (در پوشه اصلی قالب کنار functions.php و index.php و...) بسازید.

    کد:
    <?php
    $homepage = 'http://' . $_SERVER['HTTP_HOST'];
    header("Location: $homepage", true, 301);
    exit();
    ?>
    در کد بالا خط دوم در متغیری به نام homepage آدرس دامنه سایت شما توسط خود PHP و متغیر سراسری SERVER_$ شناسایی میشه اما می تونید اینو دستی هم خودتون وارد کنید تنها تفاوتش در اینه که وقتی اینطوری خود PHP آدرس دامنه سایت رو شناسایی کنه همین کد رو بدون هیچ تغییری برای سایت های مختلفی هم می تونید استفاده کنید.
    سپس در خط سوم ریدایرکت رو اونم به صورت 301 انجام میده.
    در آخر با دستور exit مانع از اجرای هیچ کد دیگه ای توسط فایل 404.php میشه.

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

    همچنین می تونید در کد بالا متغیر homepage رو با توجه به نیاز خودتون همراه با www کنید یا حتی http رو به https (اگه سایتتون از https استفاده میکنه) تغییر بدید.

  2. تعداد تشکر ها از AtrafNet به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 3
    آخرين نوشته: October 18th, 2016, 09:14
  2. تغییر پیوند یکتا
    توسط Omid.K در انجمن سوالات و مشکلات
    پاسخ ها: 3
    آخرين نوشته: June 15th, 2014, 18:00
  3. تغییر صفحه فیل تر ینگ پیوندها
    توسط ho3yn_sha2 در انجمن مباحث دیگر
    پاسخ ها: 2
    آخرين نوشته: December 31st, 2013, 18:11
  4. تغییر نکردن پیوند یکتا!!!
    توسط armin1376 در انجمن Wordpress
    پاسخ ها: 4
    آخرين نوشته: November 29th, 2012, 00:19
  5. تغییر دیزاین سایت پیوندها
    توسط vps-baran.ir در انجمن مباحث دیگر
    پاسخ ها: 19
    آخرين نوشته: March 24th, 2012, 13:05

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •