آموزش افزودن شناسه کاربر به لیست کاربران وردپرس

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

خوشبختانه وردپرس آنقدر انعطاف پذیر است که به راحتی می توانید قسمت های مختلف آن را سفارشی کنید، فقط باید بدانید که در چه شرایطی از کدام قابلیت، فیلتر و یا اکشن استفاده نمائید، برای بررسی این موضوع می خواهیم به لیست کاربران وردپرس یک ستون جدید به نام “شناسه کاربر”(User ID) اضافه کرده و مقدار فیلد ID جدول wp_users را در آن نمایش دهیم، برای شناخت جداول وردپرس پیشنهاد می کنیم مقاله آشنایی با ساختار جداول در دیتابیس وردپرس را مطالعه کنید.

نمونه های دیگری از سفارشی سازی را می توانید در نمایش تعداد بازدید مطالب در وردپرس(بدون نصب افزونه) و چگونه اکانت اینستاگرام و لینکدین را به پروفایل وردپرس اضافه کنیم؟ مشاهده فرمائید.

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

function wp_add_user_id_column( $columns ) {
    $columns[ 'user_id' ] = 'شناسه کاربر';
    return $columns;
}
add_filter( 'manage_users_columns', 'wp_add_user_id_column' );

 

در نمونه کد بالا آرایه columns$ شامل ستون های اطلاعاتی کاربران(نام کاربری، نام، ایمیل و …) است که به این مجموعه یک ستون جدید نیز اضافه کردیم. سپس برای مقدار دهی ستون user_id کد زیر را در functions.php قرار دهید.

function wp_set_user_id_column( $value, $column_name, $user_id ) {
    if ( $column_name == 'user_id' )
        return $user_id;
    return $value;
}
add_action( 'manage_users_custom_column',  'wp_set_user_id_column', 10, 3 );

 

اکشن manage_users_custom_column مشابه یک حلقه For به ازای هر کاربر اجرا خواهد شد و ستون های موردنظر مقدار دهی می شوند، در نهایت خروجی کار را در تصویر زیر مشاهده می کنید.

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

برچسب ها
سعید یاورنیا 118 نوشته 130 دیدگاه

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

دیدگاه ‌ها

  • امین ۱۲ خرداد ۱۳۹۹ - ۰۰:۴۱

    سلام خدمت مهندس یاور نیا عزیز
    در کد بالا دوبار پشت سر هم ازreturnاستفاده شده مگه با returnاول کد تمام نمیشه؟
    ممنون

    • سعید یاورنیا ۱۲ خرداد ۱۳۹۹ - ۰۸:۱۲

      درود بر امین عزیز.

      return $user_id مربوط به شرط if است، چون بدنه شرط یک دستوری است از {} استفاده نکردیم(اختیاری)، اگر شرط برقرار نباشد return $value اجرا می شود.

  • امین ۱۲ خرداد ۱۳۹۹ - ۱۰:۲۴

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

  • امین ۱۲ خرداد ۱۳۹۹ - ۱۵:۵۷

    مهندس یاور نیا عزیز جایی خوندم با استفاده از فونت وزیر دیگه برای نمایش و تبدیل اعداد انگلیسی نیاز نیست از تابع و موارد دیگه ای استفاده بشه ولی ار فونت وزیر استفاده کردم ولی هنوز اعداد به صورت انگلیسی در سایت نشان داده میشه علتش چیه؟

    • سعید یاورنیا ۱۲ خرداد ۱۳۹۹ - ۲۱:۲۰

      اره، داخل پوشه دانلود وزیر باید دنبال فایل های vazir-FD با پسوندهای woff، eot و ttf بگردی و به قالب وب سایت اضافه کنی.

  • حمید ۲ آبان ۱۳۹۹ - ۰۰:۱۹

    اگه بخوام شماره تلفن هم در لیست اضافه کنم باید چیکار کنم؟ الان تو ثبت نام شماره تلفن از کاربر گرفته میشه

    • سعید یاورنیا ۲ آبان ۱۳۹۹ - ۲۳:۳۱

      درود بر شما.
      از اکشن های show_user_profile و edit_user_profile برای افزودن فیلد شماره تلفن و از اکشن های edit_user_profile_update و personal_options_update برای ذخیره سازی مقدار این فیلد استفاده کنید. برای اطلاعات بیشتر Add extra field to users رو بررسی کنید.

      برای نمایش شماره تلفن توی لیست کاربران هم از تابع get_user_meta استفاده کنید.

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

نشانی ایمیل شما منتشر نخواهد شد، بخش‌های موردنیاز با * مشخص شده‌اند.