Sinapars 0 ارسال شده در مهر 98 گزارش بازنشر ارسال شده در مهر 98 درود وقت بخیر من برای مدیریت جدول هام از افزونه wpdatatables استفاده میکنم که فوق العاده است فقط با استفاده از هوک ها میخوام یه قابلیت بهش اضافه کنم امام نمیدونم چه جوری ؟ قابلیت به شکل هست که میخوام زمانی که کاربر جدول رو ویرایش میکنه اسمش و تاریخ و زمان دقیق ویرایش نمایش داده بشه تو فروم خودشون این راه کار ارائه شده اما نمیدونم چه جوری باید استفاده کنم ؟ function update_time( $formdata, $table_id ) { if ($table_id == 121 ) { $time = time(); $get_current_user_id = get_current_user_id(); $formdata['userid'] = "$get_current_user_id"; $formdata['time'] = "$time"; } return $formdata; } add_filter('wpdatatables_filter_formdata_before_save', 'update_time', 10, 2); لینک فروم : کلیک این هم مستندات برای این ساخت هوک ها : کلیک فک میکنم باید از تابع wpdatatables_after_frontent_edit_row در لینک بالا برای این موضوع استفاده بشه امام نمیدونم چه جوری ؟ ممنون میشم دوستانی که تو این زمینه تجربه ای دارند عنوان کنند نقل قول لینک به ارسال
Mobin 1669 ارسال شده در مهر 98 گزارش بازنشر ارسال شده در مهر 98 کد زیر رو تست کنید function update_time( $formdata, $rowId, $tableId ) { if ($table_id == 121 ) { $time = time(); $get_current_user_id = get_current_user_id(); $formdata['userid'] = "$get_current_user_id"; $formdata['time'] = "$time"; } return $formdata; } add_filter('wpdatatables_after_frontent_edit_row', 'update_time', 10, 3); 2 نقل قول لینک به ارسال
Sinapars 0 ارسال شده در مهر 98 مالک گزارش بازنشر ارسال شده در مهر 98 (ویرایش شده) در 23 ساعت قبل، Mobin گفته است : کد زیر رو تست کنید function update_time( $formdata, $rowId, $tableId ) { if ($table_id == 121 ) { $time = time(); $get_current_user_id = get_current_user_id(); $formdata['userid'] = "$get_current_user_id"; $formdata['time'] = "$time"; } return $formdata; } add_filter('wpdatatables_after_frontent_edit_row', 'update_time', 10, 3); ممنون از پاسخ شما این کد رو قرار دادم ولی اتفاق خاصی نیوفتاد ببینید جدول من مثل عکس زیر هست میخوام به شکلی که تو عکس نشون دادم این تاریخ و زمان و اسم کاربر نمایش داده بشه امکانش هست ؟ آیا من باید تو جدول هام هم ستون تاریخ و ساعت اضافه کنم که لاگ بندازه ؟ یا خودکار چک میشه ؟ اگر قرار اضافه کنم به چه شکلی باید این کار رو انجام بدم ؟ ویرایش شده مهر 98 توسط Sinapars نقل قول لینک به ارسال
Mobin 1669 ارسال شده در مهر 98 گزارش بازنشر ارسال شده در مهر 98 این هوک رو تست کنید function update_time( $formdata, $tableId ) { $time = time(); $get_current_user_id = get_current_user_id(); $formdata['userid'] = "$get_current_user_id"; $formdata['time'] = "$time"; return $formdata; } add_filter('wpdatatables_filter_frontend_formdata', 'update_time', 10, 2); 2 نقل قول لینک به ارسال
Sinapars 0 ارسال شده در مهر 98 مالک گزارش بازنشر ارسال شده در مهر 98 (ویرایش شده) نقل قول function update_time( $formdata, $table_id ) { if ($table_id == 121 ) { $time = time(); $get_current_user_id = get_current_user_id(); $formdata['userid'] = "$get_current_user_id"; $formdata['time'] = "$time"; } return $formdata; } add_filter('wpdatatables_filter_formdata_before_save', 'update_time', 10, 2); سلام این کد اوکی شد کار میکنه فقط تاریخ آپدیت نمیشه userid آپدیت میشه و میزنه کدوم یوزر آپدیت کرده ولی تاریخ تغییری نمیکنه نوع تاریخ هم تو دیتابیس datetime و پیش فرض هم روی CURRENT_TIMESTAMP گذاشتم اما تاریخ آپدیت نمیشه ویرایش شده مهر 98 توسط Sinapars نقل قول لینک به ارسال
Mobin 1669 ارسال شده در مهر 98 گزارش بازنشر ارسال شده در مهر 98 اگه فورمت تو دیتابیس datetime هست تاریخ رو به صورت زیر وارد کنید $time = date('Y-m-d H:i:s'); 2 نقل قول لینک به ارسال
Sinapars 0 ارسال شده در مهر 98 مالک گزارش بازنشر ارسال شده در مهر 98 در در 10/14/2019 at 10:19، Mobin گفته است : اگه فورمت تو دیتابیس datetime هست تاریخ رو به صورت زیر وارد کنید $time = date('Y-m-d H:i:s'); ممنون از شما مشکل برطرف شد فقط تو فایل function هم این کد رو اضافه کردم چون ساعت رو درست نشون نمی داد : date_default_timezone_set("Asia/Tehran"); فقط آیا این امکان وجود داره که من بتونم تو خود صفحه این تغییرات رو نمایش بدم نه داخل هر سطر جدول ؟ مثل این عکس : نقل قول لینک به ارسال
Sinapars 0 ارسال شده در بهمن 98 مالک گزارش بازنشر ارسال شده در بهمن 98 در در 10/21/2019 at 12:33، Sinapars گفته است : ممنون از شما مشکل برطرف شد فقط تو فایل function هم این کد رو اضافه کردم چون ساعت رو درست نشون نمی داد : date_default_timezone_set("Asia/Tehran"); فقط آیا این امکان وجود داره که من بتونم تو خود صفحه این تغییرات رو نمایش بدم نه داخل هر سطر جدول ؟ مثل این عکس : @Mobin ممنون میشم راهنمایی کنید به چه صورت میتونم این کار رو انجام بدم ؟ مثل تاریخ آخرین بروزرسانی که تو برگه ها یا نوشته ها نمایش میدیم نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .