امین بهشتی

Design Tutorials

طراحی وِب و گرافیک

اضافه کردن ستون تاریخ ثبت نام کاربر به لیست کاربران سایت وردپرسی

فرض کنید می‌خواهید تاریخ ثبت نام کاربران سایت وردپرسی‌تان را مشاهده نمایید؛ برای این کار می‌توانید از افزونه‌های گوناگونی که موجود هستند استفاده کنید و یا مستقیماً از پایگاه داده وردپرس آنها را مشاهده کنید. اما یک روش ساده‌‌تر، استفاده از تکه کد زیر می‌باشد! تکه کدی که در زیر آورده شده یک ستون به جدول لیست کاربران سایت‌تان اضافه می‌کند و داخل آن تاریخ ثبت نام کاربر را نمایش می‌دهد.

کافیست کد زیر را به فایل functions.php پوسته خود اضافه کنید :


add_action( 'manage_users_custom_column', 'manage_users_custom_column_example', 10, 3 );
add_filter( 'manage_users_columns', 'manage_users_columns_example' );
 
// create a new column named "Zip Code"
function manage_users_columns_example( $columns ) {
 
    $columns['user_registered'] = __( 'تاریخ ثبت نام', 'theme-name' );
    return $columns;
     
}
 
// fill the column cells with the registration dates
function manage_users_custom_column_example( $value, $column_name, $user_id ) {
 
    if ( 'user_registered' == $column_name ) {
     
        $userdata = get_userdata( $user_id );
        return $userdata->user_registered;
         
    }
     
}
 
// Example Source (Idea): http://tommcfarlin.com/add-custom-user-meta-during-registration/
 

منبع : TutsPlus

درباره امین بهشتی

یک ایرانی ترک زبان که علاقه زیادی به طرّاحی وِب و گرافیک دارد!
در این سایت سعی می‌کنم مطالب جالب، مفید و کاربردی را در جهت آموزش به اشتراک بگذارم!
امیدوارم لحظات خوشی را در سایت سپری نمایید و مطالب سایت مورد استفاده شما قرار بگیرد.
سپاس

  1. جناب آقای بهشتی سلام و عرض ادب دارم
    همیشه دوست داشتم بدونم که کاربرام چه تاریخ و ساعتی ثبت نام کردند واقعا ممنونم.
    فقط یه درخواستی هم داشتم :
    1 – اگر تاریخ ثبت نام رو میشد به تاریخ ایرانی نشون بده خیلی خوب بود.
    2 – اگر میشد روی تاریخ ثبت نام کلیک می کردیم و کاربران رو بر اساس تاریخ ثبت نام لیست می کرد خیلی بهتر میشد مثل شناسه و نام کاربران.
    باز هم ممنون و منتظر مطالب خوب بعدی شما خواهم بود.
    خوشحال میشم به سایت سر بزنید http://javansite.com

    • با عرض سلام و تشکر از لطف‌تان،

      برای مورد اول که فرمودید، می‌توانید یک خط کد زیر را با خط 18 کد بالا جایگزین کنید :

      return jdate(get_option( 'date_format' ), strtotime($userdata->user_registered));
      

      لازم به ذکر هست که افزونه wp-jalali هم باید روی سایت‌تان نصب شده باشد.

      اگر می‌‌خواهید مورد دوم را هم داشته باشید، می‌توانید بحای کد بالا از کد زیر استفاده کنید که در این پست پیداش کردم :

      // Register the column - Registered
      function registerdate($columns) {
          $columns['registerdate'] = __('تاریخ ثبت نام', 'registerdate');
          return $columns;
      }
      add_filter('manage_users_columns', 'registerdate');
       
      // Display the column content
      function registerdate_columns( $value, $column_name, $user_id ) {
              if ( 'registerdate' != $column_name )
                 return $value;
              $user = get_userdata( $user_id );
              return jdate(get_option( 'date_format' ), strtotime($user->user_registered));
              return $registerdate;
      }
      add_action('manage_users_custom_column',  'registerdate_columns', 10, 3);
       
      function registerdate_column_sortable($columns) {
                $custom = array(
            // meta column id => sortby value used in query
                'registerdate'    => 'registered',
                );
            return wp_parse_args($custom, $columns);
      }
       
      add_filter( 'manage_users_sortable_columns', 'registerdate_column_sortable' );
       
      function registerdate_column_orderby( $vars ) {
              if ( isset( $vars['orderby'] ) && 'registerdate' == $vars['orderby'] ) {
                      $vars = array_merge( $vars, array(
                              'meta_key' => 'registerdate',
                              'orderby' => 'meta_value'
                      ) );
              }
       
              return $vars;
      }
       
      add_filter( 'request', 'registerdate_column_orderby' );
      
      

      یک افزونه هم هست برای این کارا :

      https://wordpress.org/plugins/recently-registered/

      سپاس

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

درصورت تمایل برای ارسال دیدگاه‌تان از فرم زیر می‌توانید استفاده کنید ↓

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

(الزامی*)

می‌توانید از نشان و برچسب‌های HTML زیر در متن دیدگاه‌تان استفاده کنید:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
(الزامی*)
(اختیاری)

لطفاً جای‌خالی در معادله زیر را پر کنید: * Time limit is exhausted. Please reload the CAPTCHA.