sae13 1 ارسال شده در آذر 97 گزارش بازنشر ارسال شده در آذر 97 سلام من یه تابع دارم. که نگاه میکنه اگه داده های خاصی توی دیتابیس ذخیره نیستن اونا رو اضافه میکنه. کد تابع من اینه : function add_sellers_brand_size_to_db() { include_once dirname( __FILE__ ).'/sellers_brands.php'; // installation_db(); global $seller_array; global $brands_array; global $tire_sabok_size_gf_field_id; global $tire_sangin_size_gf_field_id; global $tire_gravity_form_id; $current_user = wp_get_current_user(); $current_user_name = $current_user->user_login; // $entry_size=GFAPI::get_entry() $tire_field = GFAPI::get_field($tire_gravity_form_id, $tire_sabok_size_gf_field_id); $tire_field = $tire_field->choices; $tire_sabok_size_array = array(); foreach ($tire_field as $tire) { array_push($tire_sabok_size_array, $tire['text']); } $tire_field = GFAPI::get_field($tire_gravity_form_id, $tire_sangin_size_gf_field_id); $tire_field = $tire_field->choices; $tire_sangin_size_array = array(); foreach ($tire_field as $tire) { array_push($tire_sangin_size_array, $tire['text']); } $tire_table_array = array(); foreach ($seller_array as $seller_name => $seller) { $tire_seller_sells_sabok = in_array('sabok', $seller['tire_type']); $tire_seller_sells_sangin = in_array('sangin', $seller['tire_type']); foreach ($seller['brands'] as $brand_name) { $brand = $brands_array[$brand_name]; $tire_sabok_is_in_brand = in_array('sabok', $brand['type']); $tire_sangin_is_in_brand = in_array('sangin', $brand['type']); if ($tire_seller_sells_sangin) { if ($tire_sangin_is_in_brand) { foreach ($tire_sangin_size_array as $size) { $seller_table_array = array($seller, $brand, $size, false); array_push($tire_table_array, $seller_table_array); } } } if ($tire_seller_sells_sabok) { if ($tire_sabok_is_in_brand) { foreach ($tire_sabok_size_array as $size) { $seller_table_array = array($seller_name, $brand_name, $size, true); array_push($tire_table_array, $seller_table_array); } } } } } foreach ($tire_table_array as $row) { global $wpdb; $table_name = $wpdb->prefix . 'tire_seller'; $seller = $row[0]; $brand = $row[1]; $size = $row[2]; $is_sabok = $row[3]; $id = $wpdb->get_var(" select max(id) from $table_name where tire_seller='$seller' and tire_brand='$brand' and tire_size='$size' ; "); if ($id == NULL) { $insert_array = array( 'tire_seller' => $seller, 'tire_brand' => $brand, 'tire_size' => $size, 'tire_type_is_sabok' => $is_sabok, 'added_by' => $current_user_name ); $wpdb->insert($table_name, $insert_array); } } } وقتی این تابع رو میذارم توی register_activation_hook(__FILE__,'add_sellers_brand_size_to_db'); فرجی نمیشه ولی وقتی خالی خالی اجراش میکنم بدون هیچ مشکلی کار میکنه. ویدیوش http://gg.gg/cmdmn limit.zip نقل قول لینک به ارسال
sae13 1 ارسال شده در آذر 97 مالک گزارش بازنشر ارسال شده در آذر 97 کل افزونه رو پیوست کردم اون قسمت کد تابع رو هم میشه ادرس زیر دید https://paste.ubuntu.com/p/w8vRZmp8H3/ نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .