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

دیدگاه

آموزش آموزش طراحی سایت آموزش وردپرس

در این پست می خواهیم ۱۰ کار مهمی را که باعث بهینه شدن قالب وردپرس تان می شود به شما معرفی کنیم.

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

تنهایی کاری که باید انجام دهید این است که فایل functions.php قالب خود را بازکرده و کدهای زیر را به آن اضافه کنید.

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

محدود کردن تعداد کلمات خلاصه متن یا Excerpt

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

برای اینکه بتوانید تعداد کلمات خلاصه هر مطلب را محدود کنید باید از کد زیر استفاده کنید :

add_filter('excerpt_length', 'mandegarweb_excerpt_length');
function mandegarweb_excerpt_length( $length ){
  return 10;
}

در اینجا ما از تابع add_filter استفاده کردیم و بعد با تعریف یک تابع دیگر به نام mandegarweb_excerpt_length ، مقدار برگشتی آن را ۱۰ گذاشتیم ، یعنی ۱۰ کلمه نمایش داده شود.

اضافه کردن Favicon با استفاده از هوک وردپرس

هوک ها یا قلاب ها در وردپرس به شما اجازه می دهند که که یک کد دلخواه را بدون تغییر فایل ها (کدها) پیشفرض وردپرس به آن اضافه کنید. این کار باعث انعطاف پذیری هرچه بیشتر وردپرس می شود. اگر نیاز به تغییر بخشی از وب سایت را داشته باشید. فقط کافی است که یک هوک و تابع دلخواه خود را ایجاد کنید. به عنوان مثال وقتی که قصد افزودن Favicon به وب سایت را داشته باشیم، لازم نیست که به فایل header.php  بروید، فقط کافیست از هوک wp_head  در تابع add_action  استفاده کنید.
براساس کد زیر فایل favicon.ico حتما باید در روت سایت شما باشد.

add_action( 'wp_head', 'mandegarweb_favicon');
function mandegarweb_favicon(){
  echo '';
}

شناسایی مرورگر Safari در IOS

امروزه طراحی وب سایت ها برای انواع مختلفی از دستگاه ها ( منظور موبایل و تبلت با برند خاص مثلا آیفون یا سامسونگ ) نسخه مخصوص به خود را دارند و از تکنولوژی های متفاوت استفاده می کنند.
ممکن است استایلی که برای سایت خود می نویسید با یک مرورگر سازگار باشد و به خوبی در آن اجرا شود و در یک دستگاه یا مرورگر دیگر به خوبی اجرا نشود. بعضی از استایل ها درمرورگر Safari به خوبی اجرا نمی شوند و باید برای آن استایل های جداگانه ای نوشته شود. وردپرس برای این کار راه امنی را پیشنهاد میکند که توسط این روش میتواند تشخیص داد که کاربر از چه دستگاهی استفاده میکند به عنوان مثال کاربر در حال استفاده از آفون است آیپد.
برای انجام این روش از می توان از متغیر is_iphone استفاده کرد. در مثال زیر با استفاده از این متغیر، ابتدا نوع دستگاه کاربر را تشخیص می دهیم، سپس استایل مخصوص به آن را به صفحه اضافه می کنیم.

 add_action('wp_print_styles', 'mandegarweb_enqueue_styles');
 function mandegarweb_enqueue_styles()
 {
  global $is_iphone;
  if( $is_iphone )
  {
    wp_enqueue_style('iphone-css', get_stylesheet_directory_uri() . '/iphone.css');
  }
  else
  {
    wp_enqueue_style('common-css', get_stylesheet_directory_uri() . '/common.css');  } }

در این کد از تابع پیشفرض وردپرس یعنی wp_enqueue_style برای اضافه کردن فایل CSS خود در عنصر head صفحات استفاده شده است.

حذف عناصر دلخواه از Header

وردپرس به صورت خودکار تگ هایی به قسمت head صفحات اضافه می کند که بسیاری از این تگ ها کارآمد نبوده و بهتر است آن ها را حذف کنید.
مثلا وردپرس متا تگی به نام generator به قسمت head صفحات شما اضافه می کند که نشانگر نسخه وردپرس وب سایت می باشد. به دلیل مسائل امنیتی بهتر است این متا تگ از سورس کد حذف شود هر چند راه های دیگری جهت شناسایی نسخه وردپرس میباشد. فراموش نکنید که همیشه وردپرس خود را بروز نگه دارید.
تگ دیگری که وردپرس به صورت اتوماتیک و پیشفرض به وب سایت اضافه میکند تگ XML-RPC است.

XML-RPC چیست ؟
XML-RPC یک پروتکل فراخوانی دستورها از راه دور است. این پروتکل تا قبل از نسخه ۳.۵ وردپرس به دلیل مسائل امنیتی غیرفعال بود ولی در نسخه ۳.۵ وردپرس این پروتکل را به صورت پیشفرض فعال کرد و امکان غیرفعال سازی آن را از پنل مدیریت حذف کرد. اگر بخواهیم ساده تر این پروتکل را توضیح دهیم ، با استفاده از این پروتکل شما می توانید از طریق نرم افزارهای وبلاگ نویسی مثل Windows Live Writer در وردپرس مطلب منتشر کنید.
این قابلیت زیاد کاربری نیست و اگر می خواهید امنیت وردپرس خود را بالا ببرید بهتر است این قابلیت را غیرفعال کنید.
تگ هایی که وردپرس به صورت پیشفرض تولید می کند :




برای اینکه تگ های بالا را از صفحات خود حذف کنید باید کدهای زیر در فایل functions.php خود اضافه کنید :

add_filter('the_generator', create_function('', 'return "";'));
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wlwmanifest_link');

با این کار تمامی تگ های اضافی که وردپرس به صورت پیشفرض می سازد از صفحات حذف شده و کاربران نمی توانند آن ها را مشاهده کنند.
البته با افزودن کدهای بالا فقط تگ ها از وب سایت حذف میشود و ویژگی XML-RPC همچنان فعال میباشد. جهت غیر فعال کردن کامل XML-RPC از کد زیر استفاده کنید :

add_filter('xmlrpc_enabled', '__return_false');

نمایش تصاویر بندانگشتی Thumbnail در فید سایت

برای تشویق مشترکان جهت بازدید از وب سایت، علاوه بر نمایش مطالب در فید وب سایت بهتر است تصاویر بندانگشتی یا تصاویر برگزیده هر پست را هم به فید سایت اضافه کنید. وردپرس به صورت پیشفرض تصاویر بندانگشتی را در فید سایت نمایش نمی دهد.
برای نمایش تصاویر بندانگشتی در فید سایت از کد زیر استفاده کنید :

add_filter('the_content_feed', 'mandegarweb_rss_post_thumbnail');
function mandegarweb_rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID))
  $content = '
' . get_the_post_thumbnail($post->ID, 'thumbnail') . '

' . $content; return $content; }

نمایش محتوا فقط به کاربران لاگین شده در سایت

در بعضی از مواقع باید محتوای وب سایت را فقط به کاربران وارد شده در سایت ( اصطلاحا لاگین شده ) نمایش دهید. در اینجا ما یک shortcode جدید ایجاد می کنیم، و توسط آن مطالب را فقط برای کاربران وارد شده در سایت نمایش می دهیم و اگر کاربری در سایت وارد نشده بود پیام “لطفا برای مشاهده محتوا وارد سایت شوید” برای او نمایش داده می شود.

add_shortcode('loggedin', 'mandegarweb_loggedin');
function mandegarweb_loggedin($atts, $content = null) {
 if(is_user_logged_in()) return '
' . $content . '; 
else return 'لطفا برای مشاهده محتوا وارد سایت شوید'; }

تغییر لوگو صفحه ورود به لوگو اختصاصی وب سایت

برای این که بتوانیم لوگوی اختصاصی وب سایت را به جای لوگوی طراحی وب سایت با وردپرس در صفحه ورود جایگزین کنیم باید از هوک login_head استفاده کرد. تمام توابعی که در صفحه ورود و در قسمت head صفحه قرار دارند به این هوک متصل هستند.

add_action('login_head', 'mandegarweb_custom_login');
function mandegarweb_custom_login() {
echo ''; }

فراموش نکنید که این تصویر باید در پوشه قالبتان باشد. و به جای /images/login-logo.png ، محل قرارگیری تصویر مورد نظرتان را بنویسید.

حذف کردن نوار مدیریت یا Admin Bar برای کاربران به غیر از مدیر سایت

به دلایل امنیتی و ظاهری بهتر است نوار مدیریت برای کاربران عادی سایت غیرفعال شود. اما نمایش نوار مدیریت برای مدیر سایت مناسب است چون برای مدیر کارآمد بوده و می تواند به قابلیت های مختلف از طریق این نوار دسترسی پیدا کرد.
جهت غیرفعال سازی این نوار برای کاربران عادی و فعال نمودن آن برای مدیر سایت کد زیر را به فایل functions.php قالب خود اضافه کنید.

add_action('after_setup_theme', 'mandegarweb_remove_admin_bar');
function mandegarweb_remove_admin_bar() {
 if (!current_user_can('administrator') && !is_admin()) {
   show_admin_bar(false);
 }
}

منبع

Share on LinkedIn0Tweet about this on TwitterShare on Google+0Share on Facebook0

پاسخ دهید

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