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/ لینک به ارسال
پست های پیشنهاد شده
لطفا برای ارسال دیدگاه وارد شوید
شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید
ورود به حساب کاربری