آموزشی وردپرس

چطور پوشه عکسهای وردپرس را برای سرعت بیشتر به ساب دامین منتقل کنیم؟

نوشته شده توسط نیک وب

سلام 🙂

زمان بارگذاری صفحه (Page Load Time) یکی از مؤلفه های مهم در رنک گوگل است. در واقع صفحاتی که سریع تر لود می شوند در نتایج موتورهای جستجو به خصوص نتایج گوگل (Google SERP) رتبه بهتری دارند. امروز می خواهیم یکی از نکاتی که باعث افزایش سرعت بارگذاری صفحات می شوند را عنوان کنیم و طریقه انجام آن در سایت های وردپرسی را توضیح دهیم. در ادامه می بینمتون 😉

به طور پیش فرض عکس های مورد استفاده در سایت، در همان دامین قرار می گیرند که این مسئله باعث کندی سایت می شود. چطور؟ به این صورت که مرورگرها برای دانلود یک صفحه وب از یک سرور بین 2 تا 4 کانکشن یا ارتباط با سرور برقرار می کنند. اگر شما در صفحه خود بیش از یک عکس داشته باشید (که دارید) بهتر است عکس ها را در یک ساب دامین قرار دهید. این کار باعث می شود تا هنگام بارگذاری صفحه، چون عکس ها از دامین دیگری هستند، به طور همزمان بارگذاری شوند.

البته هر چه تعداد ساب دامین هایی که می سازیم (برای بارگذاری دیگر اجزای صفحه) بیشتر باشد، مرورگر باید به همان تعداد DNS Lookup (یعنی آدرس دامین را تبدیل به آی پی کند تا بفهمد که چه صفحه ای را باید برای شما بیاورد) انجام دهد که این کار باعث کاهش سرعت بارگذاری صفحه می شود. به همین خاطر یاهو پیشنهاد می کند که این تعداد بین 2 تا 4 باشد.

در ادامه روش انجام این کار در سی پنل و وردپرس را توضیح می دهم.

ساخت یک ساب دامین

در سی پنل بر روی SubDomain کلیک کنید.

ساخت ساب دامیندر فیلد اول نام ساب دامین مورد نظر را وارد کنید (در اینجا uploads وارد کرده ایم). بعد از آن دامین خود را انتخاب کنید و فیلد پایین که به طور خودکار تکمیل می شود را دست نخورده بگذارید (البته در صورتی که نمی خواهید پوشه ساب دامین مورد نظر را تغیبر دهید). در انتها بر روی Create کلیک کنید.

ساخت ساب دامین

حالا می رویم سراغ وردپرس. قدیما توی وردپرس گزینه تغییر مکان رسانه ها به طور پیش فرض در قسمت تنظیمات رسانه وجود داشت. اما از وردپرس 3.5 به بالا این گزینه حذف شد. ما باید با یک افزونه این گزینه را به وردپرس برگردانیم. این پلاگین WP Original Media Path نام دارد. پس از نصب این پلاگین به قسمت تنظیمات => WP Original Media Path بروید. در فیلد بالا پوشه ساب دامین را وارد کنید و در قسمت پایین آدرس ساب دامین را به طور کامل وارد کنید.

تنظیمات رسانه

پس عکسهای مطالب قبلی چی؟!

ما فقط محل آپلود عکس های وردپرس رو عوض کردیم. یعنی عکس های جدید در ساب دامین آپلود می شوند. اما عکسهای قدیمی رو هم باید منتقل کنیم و به وردپرس بفهمانیم که عکس ها رو از اونجا بردار! طبیعی است که نمی توانیم تک تک عکس ها را منتقل کنیم. همه پوشه های موجود در wp-content/uploads را داخل پوشه ساب دامین جدید کپی کنید (می تونید از فایل منیجر سی پنل استفاده کنید و به راحتی کپی کنید و یا اینکه آنها را دانلود و سپس در داخل پوشه ساب دامین آپلود کنید).

برای اینکه محل جدید عکسهای قدیمی را به دیتابیس مان بفهمانیم وارد phpMyAdmin در سی پنل می شویم و یک SQL Query اجرا می کنیم. در phpMyAdmin دیتابیس مربوط به سایت خود را از سمت چپ انتخاب کنید. در برگه های بالا بر روی SQL کلیک نمایید.

phpmyadmin

SQL Query

در فیلد مربوطه دستور زیر را وارد کنید و دکمه GO را بزنید.

واضحه که به جای دامین nik-web.ir و ساب دامین uploads.nik-web.ir باید مقادیر مورد نظر خود را بگذارید.

و همچنین برای بروزرسانی آدرس عکسهای رسانه وردپرس دستور زیر را وارد و بر روی GO کلیک کنید.

کار ما تمام است. اما گوگل را کجای دلمان جا بدیم؟! گوگل قبلا عکس های ما و ایندکس کرده است. راه حل این مشکل یک ریدایرکت 301 است (به طور خلاصه ربدایرکت میشه همون دایورت توی تلفن های همراه! نوع 301 ش هم بدین معنی است که به موتورهای جستجو می گوییم که این ریدایرکت دائمی است و رنک و محتویات صفحه قبلی باید به صفحه جدید منتقل شود).

وارد فایل منیجر شوید و فایل .htaccess موجود در پوشه ریشه (Root) وردپرس را ویرایش کنید (البته قبلش از این فایل بک آپ بگیرید) و خط زیر را در آن وارد نمایید:

Finish! کار ما واقعا تمام شد. حالا می توانید با آپلود یک عکس از قسمت رسانه وردپرس، موفقیت آمیز بودن عملیات رو چک کنید.

ابزارهای زیادی برای دیدن سرعت بارگذاری صفحات وجود دارد که معروفترین آنها Google Search Console است (همان Google Webmaster Tools سابق).

اگر مشکلی در اجرای این آموزش داشتید در قسمت نظرات عنوان کنید یا اگر مشکلی هم نداشتید و با موفقیت اجرایش کردید، باز هم به ما بگویید تا انرژی بگیریم و آموزش های بیشتری بگذاریم 🙂

منابع:

developer.yahoo.com

oxhow.com

 

تخفیف‌های نیک‌وب رو از دست ندید!

مشترک خبرنامه نیک‌وب شوید تا مطالب و تخفیف‌های نیک‌وب رو در ایمیل‌تون دریافت کنید 😉
ایمیل شما
1 ستاره2 ستاره3 ستاره4 ستاره5 ستاره (1 رتبه، میانگین: 5٫00 از 5)
Loading...

درباره نویسنده

نیک وب

دیدگاه

11 دیدگاه

  • سلام.. داداش من به phpMyadmin رفتم و در قسمت sql کدی که فرمودی
    UPDATE wp_posts SET post_content = REPLACE(post_content,’http://www.nik-web.ir/wp-content/uploads/’,’http://uploads.nik-web.ir/’)
    و
    UPDATE wp_posts SET guid = REPLACE(guid,’http://www.nik-web.ir/wp-content/uploads/’,’http://uploads.nik-web.ir/’)

    رو قرار دادم البته سایت خودم رو جایگزین سایت شما کردم (طبق آموزش)اما با پیغام
    MySQL said: Documentation
    #1046 – No database selected
    مواجه میشم که میگه دیتابیسی انتخاب نشده!! دیتابیس هم انتخاب کردم اما بازم جواب نمیده و با کلیک بر روی Go پاسخ مثبتی نمیگیرم!!

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

  • سلام
    ممنون
    من از دستور sql استفاده کردم. مثل ساعت کار می کنه! قضیه این بود که میخواستم آدرس همه عکس های سایت رو با یک الگو عوض کنم که با دستور شما با موفقیت انجام شد.
    پیغامی که مهدی آقا میگن رو برای من هم اول داد. چون هیچ دیتابیسی انتخاب نکرده بودم. اما بعد از انتخاب دیتابیس و کلیک روی sql به راحتی انجام شد.
    بازم ممنونم

  • سلام

    ببخشید برای انتقال پوشه uploads به هاست دانلود هم میشه از این روش استفاده کرد؟

    من از افزونه hacklog remote attachment استفاده کردم و الان آدرس رسانه وردپرس به هاست دانلود تغییر کرده است. مشکل اینجاست عکس های قبلی دیگر در رسانه نمایش داده نمی شوند و پست های قبلی و layer slider هم عکسها را نمایش نمی دهند.

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

  • سلام خسته نباشید . تمامی مراحل رو انجام دادم . ساب دامین رو up گزاشتم و پوشه اپلود را ریختم داخل ساب دامین (خود پوشه نه محتویات)ولی تصاویر لود نشد

    بعد از اینکه محتویات پوشه رو انتقال دادم به ساب و از پوشه اپلود خارج کردم درست شد . یعنی به شکل up.tahghighestn.ir درست نشون میده ولی بصورت up.tahghighestn.ir/uploads درست نشون نمیداد . کارم راه افتاد ممنون

    فقط میخواستم بدونم برای ریدایرکت 301 به اینصورت گزاشتم کد رو درسته یا نه؟

    RedirectMatch 301 ^/wp-content/uploads/(.*)$ https://up.tahghighestan.ir/$1