تنظیمات مهم و کاربردی در پیکربندی وردپرس

همانطور که فایل functions.php  را به عنوان مهمترین فایل در پوسته های وردپرس می شناسید ، باید فایل wp-config.php را نیز مهمترین فایل در یک وردپرس نصب شده حساب کنید .

توسط فایل wp-config.php امکان پیکربندی قابلیت های بانک اطلاعاتی ، افزایش عملکرد و یا بهبود امنیت تمام وب سایت ها و وبلاگ های وردپرسی ، وجود دارد .

در این مقاله آموزشی وردپرس ، نکات و گزینه های کاربردی در فایل wp-config.php را به شما نشان می دهیم .

به صورت پیش فرض ، در هنگام نصب وردپرس فایل wp-config.php  وجود ندارد و وردپرس بدون آن در اختیار کاربران قرار می گیرد .

این در حالی است که یک فایل به نام wp-config-sample.php در بسته نصبی وردپرس وجود دارد . شما باید از این فایل به عنوان نمونه ، برای ایجاد کردن فایل اصلی wp-config.php استفاده کنید  تا آماده اجرای فرآیند نصب وردپرس شوید .

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

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

بعد از بارگذاری یا آپلود وردپرس در هاست خود و اجرای سایت خود در مرورگر با صفحه ای مانند تصویر زیر مواجه می شوید .

install-wordpress

با زدن دکمه ” بزن بریم ! ” به مرحله بعد که مانند تصویر زیر است منتقل می شوید :

install-wordpress-2

در مرحله نشان داده شده در تصویر بالا ، شما یکسری اطلاعات کلیدی که برای اتصال هسته وردپرس با بانک اطلاعاتی وردپرس الزامی هستند را مشخص می کنید . این اطلاعات شامل نام بانک اطلاعاتی ، نام کاربری که مجاز به انجام انواع عملیات ها روی بانک اطلاعاتی است ، رمز عبور کاربر ، میزبان پایگاه داده که معمولاً  localhost  است و در آخر پیشوند نام جداول وردپرس میباشند .

بخشی از اطلاعات وارد شده توسط شما در مرحله بالا  ، در فایل wp-config.php و به شکل زیر ذخیره می شوند .

define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');

به صورت پیش فرض بخش میزبان پایگاه داده localhost  می باشد ولی در برخی هاستینگ ها ، این مورد متفاوت است .

به عنوان مثال در هاستینگ های زیر آدرس میزبان پایگاه داده localhost نیست .

  • ۱and1 Hosting — db12345678
  • DreamHost — mysql.example.com
  • GoDaddy — h41mysql52.secureserver.net
  • ICDSoft — localhost:/tmp/mysql5.sock
  • MediaTemple (GS) — internal-db.s44441.gridserver.com
  • Pair Networks — dbnnnx.pair.com
  • Yahoo — mysql

شما می توانید با قرار دادن تکه کد زیر در فایل wp-config.php وردپرس خود سرور بانک اطلاعاتی یا همان میزبان پایگاه داده را مشاهده کنید .

define('DB_HOST', $_ENV{DATABASE_SERVER});

کلیدهای امنیتی

 کلیدهای امنیتی وردپرس یکسری از متغیرهای تصادفی هستند که فرآیند رمزگذاری اطلاعات ذخیره شده در کوکی های کاربران را ، بهبود می بخشند .

در نسخه های قبل از نسخه ۳.۰ وردپرس شما مجبور بودید که این کار را به صورت دستی در فایل wp-config.php انجام دهید . این در حالیست که در نسخه های ۳.۰ به بعد وردپرس ، در هنگام نصب وردپرس ، این کلیدهای امنیتی به صورت اتوماتیک در فایل wp-config.php ایجاد می شوند .

همچنین در نسخه های قبل از ۳.۰ وردپرس ، از ۴ کلید امنیتی استفاده می شد ، که در نسخه های بعد از ۳.۰ وردپرس ، تعداد این کلیدهای امنیتی به ۸ عدد تغییر کرده است .

بخش کلیدهای امنیتی در فایل wp-config.php به صورت زیر است . (قبل از ایجاد کلیدهای امنیتی توسط وردپرس)

define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');

اگر می خواهید کلیدهای امنیتی را به فایل wp-config.php یک وردپرس اضافه کنید ، می توانید با رفتن به این صفحه ، یکسری از این کلیدها را دریافت کنید .

پیشوند بانک اطلاعاتی وردپرس

در هنگام نصب وردپرس بوسیله ویزارد آن ، یکی از گزینه هایی که شما می توانید آن را تنظیم کنید ، پیشوند بانک اطلاعاتی وردپرس است . این گزینه در فایل wp-config.php و به صورت زیر ذخیره می شود :

$table_prefix = 'wp_';

ما به شما پیشنهاد می کنیم که پیشوند بانک اطلاعاتی وردپرس را از wp_ به یک پیشوند دیگر مانند internet32_تغییر دهید .

پیکربندی زبان در وردپرس

به صورت پیش فرض وردپرس برای زبان انگلیسی خود را محلی سازی می کند ، اما شما می توانید توسط دستورات زیر در فایل wp-config.php سایت وردپرس خود آنها را تغییر دهید .

define('WPLANG', '');
define('LANGDIR', '');

یک فایل زبان که دارای پسوند po می باشد ، باید در مسیر wp-content/languages و یا wp-includes/languages قرار بگیرد .

اشکال زدایی در وردپرس

ویژگی اشکال زدایی یا Debugging وردپرس یک ابزار کاربردی برای پیدا کردن خطاها ، نمایش توابع منسوخ شده و یا مشکلاتی مانند صفحه سفید وردپرس است . این ابزار بیشتر توسط توسعه دهندگان وردپرس مورد استفاده قرار می گیرد .

به صورت پیش فرض این ویژگی خاموش است (false) و شما باید آن را بوسیله دستور زیر فعال کنید (true).

define(‘WP_DEBUG’, false); // disable debugging mode by default
define(‘WP_DEBUG’, true); // enable debugging mode

آدرس های بلاگ / سایت در وردپرس

 در تنظیمات وردپرس ، شما آدرس های وردپرس و آدرس سایت را مشخص می کنید .این تنظیمات در بانک اطلاعاتی وردپرس ذخیره می شوند .

هر زمانی که توسعه دهندگان بوسیله کدها در تمپلیت ها ، این آدرس ها را فراخوانی می کنند ، یک پرس و جو در بانک اطلاعاتی انجام می شود .

این تنظیمات در وردپرس ۲.۲ اضافه شدند .

define('WP_HOME', 'https://www.wpbeginner.com');
define('WP_SITEURL', 'https://www.wpbeginner.com');

بوسیله اضافه کردن این دستورات در فایل wp-config.php ، شما تعداد پرس و جوها را از بانک اطلاعاتی وردپرس را کاهش می دهید و این مورد باعث بالا رفتن کارایی سایت شما می شود .

لغو مجوزهای فایل در وردپرس

شما می توانید مجوزهای فایل های هاست خود را لغو و مجوزهای دلخواه خود را بر روی وردپرس اعمال کنید . اینکار با استفاده از کد زیر در فایل wp-config.php امکانپذیر است .

define('FS_CHMOD_FILE', 0755);
define('FS_CHMOD_DIR', 0644);

بازبینی نوشته ها در وردپرس

در نسخه ها اخیر وردپرس یک ویژگی عالی به نام بازبینی به آن اضافه شده است .

بوسیله این ویژگی به صورت اتوماتیک یک ذخیره خودکار به صورت مرتب از نوشته ای که در حال ویرایش آن هستید ، انجام می شود . این ذخیره های خودکار برای مواقعی مانند هنگ کردن سیستم ، کرش کردن مرورگر و … کاربرد دارند .

همچنین نویسندگان می توانند به یک نسخه دلخواه از بین نوشته های ذخیره شده اتوماتیک قبلی منتقل شوند .

در حالیکه این ویژگی برای بسیاری از کاربران مفید و جذاب است ، برای برخی دیگر عذاب آور است .

البته جای نگرانی نیست ، زیرا برای این ویژگی پیکربندی هایی وجود دارد که می توانید آن را بر طبق سلیقه خود تنظیم کنید .

پیکربندی ذخیره خودکار در وردپرس

به صورت پیش فرض وردپرس هر نوشته را با فاصله زمانی ۶۰ ثانیه یکبار به صورت اتوماتیک ذخیره می کند . اما اگر شما فکر می کنید این زمان برای ذخیره خودکار نوشته ها کم است می توانید آن را به آسانی و از طریق پیکربندی زیر تنظیم کنید :

define('AUTOSAVE_INTERVAL', 120); // in seconds

بسته به اینکه ویرایش هر نوشته چقدر زمان لازم دارد ، ممکن است برای یک نوشته ۱۰ نسخه ، ۲۰ نسخه و یا بیش از ۱۰۰ نسخه ذخیره خودکار ایجاد شود .

شما می توانید تعداد ذخیره های خودکار نوشته ها در وردپرس را با استفاده از تنظیم زیر مشخص کنید .

define('WP_POST_REVISIONS', 5);

مثلاً در کد بالا حداکثر ۵ ذخیره خودکار به ازای هر نوشته در وردپرس ایجاد می شود .

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

اگر هیچ کدام از تنظیمات بالا شما را راضی نکرد ، می توانید ویژگی بازبینی نوشته ها در وردپرس را به صورت کلی و توسط دستور زیر غیرفعال کرد :

define('WP_POST_REVISIONS', false);

ویژگی زباله دان وردپرس

در وردپرس ۲.۹ ویژگی زباله دان به هسته وردپرس اضافه شد .

این ویژگی دقیقاً مانند زباله دان ویندوز است ، بنابراین به جای حذف دائم یک نوشته ، می توانید آن نوشته را به زباله دان منتقل کنید تا  اگر از حذف آن منصرف شدید ، بتوانید آن را برگردانید .

همچنین این ویژگی به کاربرانی که به صورت تصادفی ، با کلیک روی یک نوشته یا دیدگاه و … یک مورد را حذف می کنند ، بسیار مفید است .

قسمت ناخوشایند این ویژگی خوب ، این است که شما باید همیشه آن را خالی کنید .

به صورت پیش فرض زباله دان وردپرس هر ۳۰ روز یکبار خالی می شود . شما می توانید با استفاده از دستور زیر در فایل wp-config.php وردپرس ، تعداد روزهای مورد نظر خود را برای خالی کردن زباله دان را تعیین کنید .

define('EMPTY_TRASH_DAYS', 7 ); //Integer is the amount of days

همچنین اگر این ویژگی را دوست ندارید ، می توانید به صورت کلی آن را با استفاده از دستور زیر غیرفعال کنید :

define('EMPTY_TRASH_DAYS', 0 );

اما به یاد داشته باشید  که اگر مقدار این پیکربندی را صفر قرار دهید ، وردپرس در موقع حذف دائم نوشته ها و … ، هیچ سوالی برای تایید حذف از شما نخواهد پرسید  . پس هر کلیک تصادفی ممکن است برای شما هزینه بر باشد .

ثابت های SSH/FTP

به صورت پیش فرض وردپرس به شما اجازه بروزرسانی افزونه ها ، پوسته ها و هسته وردپرس را می دهد .

در برخی از هاست ها برای هر گونه عمل آپلود ، بروزرسانی افزونه یا پوسته ، از شما اطلاعات FTP درخواست می شود .

شما می توانید بوسیله کد زیر در فایل wp-config.php این ویژگی را برای همیشه غیرفعال کنید .

// forces the filesystem method: "direct", "ssh", "ftpext", or "ftpsockets"
define('FS_METHOD', 'ftpext');
// absolute path to root installation directory
define('FTP_BASE', '/path/to/wordpress/');
// absolute path to "wp-content" directory
define('FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/');
// absolute path to "wp-plugins" directory
define('FTP_PLUGIN_DIR ', '/path/to/wordpress/wp-content/plugins/');
// absolute path to your SSH public key
define('FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub');
// absolute path to your SSH private key
define('FTP_PRIVKEY', '/home/username/.ssh/id_rsa');
// either your FTP or SSH username
define('FTP_USER', 'username');
// password for FTP_USER username
define('FTP_PASS', 'password');
// hostname:port combo for your SSH/FTP server
define('FTP_HOST', 'ftp.example.org:21'); 

بهینه سازی اتوماتیک دیتابیس

در وردپرس ۲.۹ یک ویژگی بسیار جالب به وردپرس اضافه شد که بوسیله آن عملیات اتوماتیک بهینه سازی بانک اطلاعاتی وردپرس به صورت منظم انجام می شود .

برای فعال سازی این قابلیت می توانید از کد زیر در فایل wp-config.php استفاده کنید :

define('WP_ALLOW_REPAIR', true);

بعد از فعال سازی این ویژگی می توانید از مسیر زیر به تنظیمات این قابلیت دسترسی داشته باشید .

https://www.yoursite.com/wp-admin/maint/repair.php

wordpress-optimization

زمانی که این ویژگی را در وردپرس خود بوسیله فایل wp-config.php تنظیم می کنید ، برای دسترسی به این قابلیت ، نیاز نیست که کاربر وارد شود .

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

نکته مهم :

بعد از انجام عمل بهینه سازی و یا تعمیر بانک اطلاعاتی وردپرس ، حتماً این ویژگی را در فایل wp-config.php حذف و یا غیرفعال (با استفاده از دو کاراکتر // در ابتدای دستور) کنید .

افزایش محدودیت حافظه PHP در وردپرس

یکی از دلایل اصلی صفحه سفید وردپرس یا صفحه مرگ وردپرس ، به خصوص در هنگام فعال سازی افزونه ها ، پایین بودن مقدار حافظه PHP است .

شما می توانید حافظه PHP را بوسیله دستور زیر در فایل wp-config.php افزایش دهید :

define('WP_MEMORY_LIMIT', '64M');

نکته : این ویژگی ممکن است با برخی از هاست ها کار نکند ، مثلاً هاست های اشتراکی . پس برای انجام این کار در این هاست ها باید با پشتیبان هاست خود تماس بگیرید .

گزارش خطاها در وردپرس

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

برای ایجاد سیستم ایجاد گزارش خطا در وردپرس ، ابتدا یک فایل به نام php_error.log را در ریشه سایت خود با دسترسی نوشتن ایجاد کنید .

سپس کد زیر را در فایل wp-config.php وردپرس قرار دهید . فراموش نکنید که در خط سوم مسیر را بر طبق وردپرس خود ویرایش کنید .

@ini_set('log_errors','On');
@ini_set('display_errors','Off');
@ini_set('error_log','/home/path/domain/logs/php_error.log');

Move your wp-content Directory

از وردپرس نسخه ۲.۶ به بعد ، شما می توانید دایرکتوری یا پوشه wp-content را به یک جای دیگر منتقل کنید .

این مورد برای امنیت سایت بسیار مفید است . برای اینکار کافیست کد زیر را در فایل wp-config.php وردپرس قرار دهید .

define( 'WP_CONTENT_DIR', $_SERVER

[‘DOCUMENT_ROOT’] . ‘/blog/wp-content’ );
define( ‘WP_CONTENT_URL’, ‘https://example/blog/wp-content’);
define( ‘WP_PLUGIN_DIR’, $_SERVER[‘DOCUMENT_ROOT’] . ‘/blog/wp-content/plugins’ );
define( ‘WP_PLUGIN_URL’, ‘https://example/blog/wp-content/plugins’);

برای اینکه افزونه ها نیز بتوانند با تغییر مسیر پوشه wp-content به درستی کار کنند ، خط آخر به کدهای بالا اضافه شده است .

جداول UserMeta / User سفارشی در وردپرس

به صورت پیش فرض وردپرس تمام اطلاعات کاربران را در جداول wp_users و wp_usermeta ذخیره می کند .

شما می توانید مسیر ذخیره سازی اطلاعات کاربران وردپرس را در بانک اطلاعاتی بوسیله دستورات زیر در فایل wp-config.php را تغییر دهید .

define('CUSTOM_USER_TABLE', $table_prefix.'my_users');
define('CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta');

فعال سازی وردپرس شبکه

از نسخه ۳.۰ به بعد در وردپرس ، قابلیت ایجاد وردپرس شبکه یا وردپرس چند سایته فراهم شد .

برای فعال سازی این قابلیت قدرتمند می توانید کد زیر را به فایل wp-config.php وردپرس خود اضافه کنید .

define('WP_ALLOW_MULTISITE', true);

بعد از اضافه کردن کد بالا به فایل wp-config.php وردپرس ، یک صفحه جدید در بخش مدیریت وردپرس به نام ” شبکه ” که در مسیر منوی ابزارها / شبکه است ، بوجود می آید .

توسط این صفحه می توانید تنظیمات وردپرس چند سایته یا وردپرس شبکه خود را انجام دهید .

امن کردن فایل wp-config.php وردپرس

همانطور که مشاهده کردید ، فایل wp-config.php یکی از مهمترین فایل های وردپرس است ، پس باید از آن به صورت بسیار امن و محافظت شده ، نگهداری کنیم .

به صورت پیش فرض این فایل در ریشه وردپرس می باشد ، اما شما می توانید آن را به یک مکان دیگر منتقل کنید تا به راحتی توسط هکرها و یا ربات ها ، مسیر آن شناسایی نشود .

وردپرس به صورتی طراحی شده است که اگر فایل wp-config.php را در ریشه سایت مشاهده نکند ، در سایر پوشه به دنبال آن می گردد .

همچنین شما می توانید بوسیله فایل .htaccess   از این فایل محافظت کنید و دسترسی به آن را محدود کنید .

برای اینکار کد زیر را به فایل .htaccess    اضافه کنید . (بکاپ فراموش نشود)

# Protect wp-config.php

    order allow,deny
    deny from all

اگر شما هم نکته یا آموزشی درباره پیکربندی وردپرس و یا فایل wp-config.php می دانید آن را با ما در میان بگذارید .

به خاطر داشته باشید ، که وردپرس شما هیچگاه ۱۰۰% امن نیست و همیشه باید برای امنیت آن تدابیری را اتخاذ کنید .

شاد باشید 🙂

  • facebook
  • googleplus
  • twitter
  • linkedin
  • linkedin
  • linkedin

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

  • twitter
  • googleplus

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *