حذف شناسه ورژن از فایلهای CSS و JavaScript در وردپرس یک اقدام کلیدی برای بهبود عملکرد و امنیت سایت است. این کار نه تنها به افزایش سرعت بارگذاری صفحات کمک میکند، بلکه امنیت سایت را نیز ارتقا میدهد.
از نظر سرعت، وقتی عمل پاک کردن نسخه فایلهای CSS و JavaScript در وردپرس انجام میشود، عملکرد کشینگ در مرورگر بهینهتر میگردد. کشینگ به مرورگرها اجازه میدهد تا فایلهای ثابت مانند CSS و JavaScript را در حافظه خود ذخیره کنند. این امر موجب میشود که در بازدیدهای بعدی، این فایلها سریعتر بارگذاری شوند و در نتیجه تجربه کاربری بهتری برای بازدیدکنندگان فراهم گردد.
از جنبه امنیتی، حذف شناسه ورژن باعث میشود هکرها نتوانند به راحتی نسخه وردپرس، افزونهها و قالبهای سایت شما را شناسایی کنند. این کاهش قابلیت شناسایی به ویژه برای نسخههای قدیمی اهمیت دارد، زیرا بسیاری از آسیبپذیریها در این نسخهها وجود دارند. با جلوگیری از شناسایی نسخههای موجود، احتمال سوءاستفاده از این آسیبپذیریها کاهش مییابد و بدین ترتیب امنیت کلی سایت بهبود مییابد.
حذف شناسه ورژن از فایلهای CSS و JavaScript یک راهکار ساده و موثر برای افزایش سرعت و امنیت سایت وردپرسی شما است. با انجام این اقدام، میتوانید نه تنها عملکرد سایت خود را بهبود ببخشید، بلکه از امنیت آن نیز محافظت کنید.
تقویت امنیت وبسایت با حذف رشتههای کوئری از فایلهای CSS و JS در وردپرس
امنیت وردپرس یک موضوع بسیار مهم است. نمایش شماره نسخه وردپرس، افزونهها و قالبهای سایت در سورس کد میتواند به هکرها برای نفوذ به سایت کمک کند.
اگر همواره از نسخههای بهروز وردپرس، افزونهها و قالبها استفاده میکنید، نمایش شماره نسخه مشکلی ایجاد نمیکند. اما اگر از نسخههای قدیمیتر استفاده میکنید، هکرها ممکن است از آسیبپذیریهای موجود در آن نسخهها سوءاستفاده کنند و به سایت نفوذ کنند. بنابراین، توصیه میشود همیشه نسخههای بهروز را نصب کنید. اگر به دلایلی نمیتوانید نسخههای جدید را نصب کنید، حداقل باید نمایش شماره نسخهها را از سورس کد حذف کنید. این کار باعث میشود هکرها نتوانند به راحتی آسیبپذیریهای موجود را شناسایی و از آنها سوءاستفاده کنند.
حذف رشتههای کوئری از فایلهای CSS و JavaScript نیز به همین منظور انجام میشود. این رشتهها معمولاً شماره نسخه را به انتهای آدرس فایلهای اصلی اضافه میکنند. حذف این رشتهها نیز مانع از نمایش شماره نسخه و در نتیجه افزایش امنیت سایت میشود. حذف رشتههای کوئری از فایلهای CSS و JavaScript و همچنین استفاده از نسخههای بهروز وردپرس، افزونهها و قالبها، میتواند به طور موثری امنیت سایت را افزایش دهد.
افزایش سرعت و بهینهسازی عملکرد وبسایت با پاک کردن نسخه فایلهای CSS و JavaScript در وردپرس از کد منبع
مدیریت مناسب نحوه بارگذاری فایلهای CSS و JavaScript در وردپرس نقش مهمی در بهینهسازی عملکرد سایت دارد. یکی از موارد مهم در این زمینه، حذف پارامترهای نسخه (query variables) و شماره نسخه (version numbers) از آدرس این فایلهاست.
وقتی در انتهای آدرس فایلهای CSS و JS شماره نسخه وجود داشته باشد، مرورگر نمیتواند آن فایلها را در کش خود ذخیره کند. به این معنی که هر بار که کاربر سایت را بارگذاری میکند، مرورگر باید تمام این فایلها را مجددا دانلود و بارگذاری کند. این موضوع باعث افزایش زمان بارگذاری سایت و کاهش تجربه کاربری میشود.
برای حل این مشکل، باید پارامترهای نسخه و شماره نسخه را از آدرس فایلهای CSS و JS حذف کرد. با این کار، مرورگر میتواند این فایلها را در کش خود ذخیره کند و هر بار که کاربر سایت را بارگذاری میکند، آنها را سریعتر بارگذاری کند. این اقدام علاوه بر بهبود سرعت سایت، به بهبود SEO نیز کمک میکند. زیرا کاهش زمان بارگذاری سایت یکی از فاکتورهای مهم در رتبهبندی گوگل است.
حذف پارامترهای نسخه و پاک کردن نسخه فایلهای CSS و JavaScript در وردپرس یک اقدام ساده اما تاثیرگذار برای بهبود سرعت و عملکرد سایت است که نباید نادیده گرفته شود. چیزی مشابه کدهای زیر:
<link rel=’stylesheet’ …/style.min.css?ver=5.7.2′ type=’text/css’ media=’all’ />
<link rel=’stylesheet’ …/style.min.css?ver=2.3.1′ type=’text/css’ media=’all’ />
<link rel=’stylesheet’ …/theme.min.css?ver=2.3.1′ type=’text/css’ media=’all’ />
<link rel=’stylesheet’ …/dashicons.min.css?ver=5.7.2′ type=’text/css’ media=’all’ />
<link rel=’stylesheet’ …/admin-bar.min.css?ver=5.7.2′ type=’text/css’ media=’all’ />
<link rel=’stylesheet’ href=’…/wp-content/uploads/blocksy/css/global.css?ver=85303′ media=’all’ />
<link rel=’stylesheet’ href=’…/wp-includes/css/dashicons.min.css?ver=6.6.1′ media=’all’ />
<link rel=’stylesheet’ href=…/wp-includes/css/admin-bar-rtl.min.css?ver=6.6.1′ media=’all’ />
<script src=”…/wp-content/plugins/flying-press/assets/admin.js?ver=4.14.4″ ></script>
<script src=”…/wp-includes/js/hoverintent-js.min.js?ver=2.2.1″ ></script>
<script src=”…/wp-includes/js/admin-bar.min.js?ver=6.6.1″ ></script>
<script src=”…/wp-content/plugins/seo-by-rank-math/js/rank-math.js?ver=1.0.227.1″ ></script>
<script src=”…/wp-content/plugins/woocommerce/assets/sourcebuster.min.js?ver=9.2.3″ ></script>
همان گونه که در پایان آدرس هر فایل CSS و JS مشاهده میکنید، یک پارامتر به شکل ?ver=x.x.x وجود دارد که نشاندهنده نسخه وردپرس یا نسخه افزونه و قالبهای مورد استفاده است.
پاک کردن نسخه فایلهای CSS و JavaScript در وردپرس با استفاده از کد PHP
برای پاک کردن نسخه فایلهای CSS و JavaScript در وردپرس از انتهای آنها، میتوانید از کدهای زیر استفاده کنید. این پارامتر ?ver=x.x.x میتواند به نسخه هسته وردپرس، افزونهها یا قالبهای شما اشاره کند و حذف آن میتواند به بهینهسازی عملکرد و افزایش امنیت سایت شما کمک کند.
برای استفاده از این کدها، کافیست آنها را کپی کرده و در فایل functions.php قالب یا پوسته فرزند خود قرار دهید. همچنین، میتوانید از افزونههایی مانند FluentSnippets، Code Snippets یا WPCode بهره بگیرید تا این کدها را بهراحتی و بدون نیاز به ویرایش مستقیم فایلها به سایت خود اضافه کنید.
/** Remove Version Query Strings from Scripts/Styles **/
function _remove_script_version( $src ){
$parts = explode( ‘?ver’, $src );
return $parts[0];
}
add_filter( ‘script_loader_src’, ‘_remove_script_version’, 15, 1 );
add_filter( ‘style_loader_src’, ‘_remove_script_version’, 15, 1 );
// remove wp version param from any enqueued scripts
function vc_remove_wp_ver_css_js( $src ) {
if ( strpos( $src, ‘ver=’ ) )
$src = remove_query_arg( ‘ver’, $src );
return $src;
}
add_filter( ‘style_loader_src’, ‘vc_remove_wp_ver_css_js’, 9999 );
add_filter( ‘script_loader_src’, ‘vc_remove_wp_ver_css_js’, 9999 );
// remove wp version number from scripts and styles
function remove_css_js_version( $src ) {
if( strpos( $src, ‘?ver=’ ) )
$src = remove_query_arg( ‘ver’, $src );
return $src;
}
add_filter( ‘style_loader_src’, ‘remove_css_js_version’, 9999 );
add_filter( ‘script_loader_src’, ‘remove_css_js_version’, 9999 );
/** Remove Version from Style and Script **/
function wpcode_snippet_remove_query_strings_split( $src ) {
$output = preg_split( “/(&ver|\?ver)/”, $src );
return $output ? $output[0] : ”;
}
add_action( ‘init’, function () {
if ( ! is_admin() ) {
add_filter( ‘script_loader_src’, ‘wpcode_snippet_remove_query_strings_split’, 15 );
add_filter( ‘style_loader_src’, ‘wpcode_snippet_remove_query_strings_split’, 15 );
}
} );
//Remove Query Variables Version Numbers from Style Scripts
function wpturbo_remove_script_version( $src ){
return remove_query_arg( ‘ver’, $src );
}
add_filter( ‘style_loader_src’, ‘wpturbo_remove_script_version’, 15, 1 );
add_filter( ‘script_loader_src’, ‘wpturbo_remove_script_version’, 15, 1 );
این کدها از نظر عملکرد یکسان هستند و هر کدام به هدف حذف شماره نسخه فایلهای CSS و JS طراحی شدهاند. با این حال، شیوه نگارش آنها کمی متفاوت است.
برای بررسی مختصر کد نهایی، هدف اصلی آن حذف رشته نسخه (version query string) از منابع اسکریپتها و استایلهاست. این کار به بهینهسازی عملکرد وبسایت وردپرسی کمک میکند، زیرا موجب بهبود کش فایلها میشود.
قسمت ابتدایی کد یک تابع به نام wpturbo_remove_script_version($src) را تعریف میکند که آرگومان $src نمایانگر URL منبع فایل اسکریپت یا استایل است. درون این تابع، یک تابع داخلی به نام remove_query_arg(‘ver’, $src) فراخوانی میشود که برای حذف پارامترهای پرسش از URLها در وردپرس استفاده میشود. در اینجا، این تابع به طور خاص رشته نسخه (ver) را حذف میکند.
بنابراین، زمانی که تابع wpturbo_remove_script_version($src) اجرا میشود، URL منبع اسکریپت یا استایل را بدون پارامتر نسخه برمیگرداند.
دو خط پایانی این کد تابع تازه تعریفشده را بهعنوان فیلتر روی دو قلاب در وردپرس، یعنی style_loader_src و script_loader_src اضافه میکند. این بدان معناست که هر بار که وردپرس به بارگذاری استایلها و اسکریپتها میپردازد، تابع wpturbo_remove_script_version اعمال خواهد شد.
تابع add_filter میتواند چهار پارامتر بپذیرد، اما در این کد ما فقط از سه پارامتر استفاده کردهایم. پارامتر اول نام قلاب فیلتر است (در اینجا style_loader_src)، که نشان میدهد تابع در زمان بارگذاری استایلها اعمال میشود. پارامتر دوم نام تابعی است که باید اجرا شود. پارامتر سوم برای تعیین اولویت تابع است؛ عدد پایینتر نشاندهنده اجرای زودتر تابع است و در این مثال بر روی 15 تنظیم شده است. پارامتر آخر تعداد پارامترهایی که تابع میپذیرد را مشخص میکند و در اینجا به صورت پیشفرض 1 در نظر گرفته شده است.
با استفاده از این کد، میتوانید پارامترهای نسخه را از URL فایلهای CSS و JS حذف کنید و در نتیجه عملکرد کش مرورگر را بهبود دهید و سرعت وبسایت خود را افزایش دهید.
اکنون اگر به منبع یکی از صفحات سایت خود نگاهی بیندازید، متوجه خواهید شد که پارامتر ?ver=x.x.x یا همان شماره نسخه از تمامی استایلها و اسکریپتها حذف شده است.
در صورت وجود هر گونه سوال یا مشکل در مورد پاک کردن نسخه فایلهای CSS و JavaScript در وردپرس، لطفاً با تیم پشتیبانی فنی فریا در تماس باشید .