DB Access เลเยอร์ & ลบแถว
WordPress ใช้ระดับการจัดการการเข้าถึงไปยังชั้นฐานข้อมูลโดยใช้wpdb global $wpdbชั้นเรียนมีวิธีการตั้งชื่อdelete()เพื่อลบแถวออกจากตาราง:
$wpdb->delete( $table, $where, $where_format = null );
หลายตารางและปุ่มเปิดใช้งาน
WordPress มีตารางเฉพาะบาง MUซึ่งหนึ่งคือ{$wpdb->prefix}signups(ตั้งค่าคำนำหน้าในwp-config.phpไฟล์ของคุณ) ตารางโครงการที่นี่ ความรับผิดชอบในการเปิดใช้งานบัญชีผู้ใช้คือการ activation_keyตั้งค่าหลังจากที่ผู้ใช้คลิกที่ลิงค์ในจดหมาย หลังจากนั้นactivatedคีย์จะได้รับการตั้งdatetimeค่า ก่อนที่จะเปิดใช้งานบัญชีค่าเริ่มต้นจะเป็น0000-00-00 00:00:00(ในกรณีที่คุณต้องการสอบถามค่าเริ่มต้น) นอกจากนี้ในกระบวนการคือtinyint/ 1คอลัมน์activeซึ่งถูกตั้งค่าเป็น1หากผู้ใช้ที่ใช้งานอยู่
wpmu_activate_signup()คอตัวเองใช้ ดูมันสำหรับตัวอย่าง หนึ่งคือสิ่งต่อไปนี้ที่อัพเดตรายการผู้ใช้เพื่อเปิดใช้งาน - ทำใหม่เพื่อให้สามารถอ่านได้
$wpdb->update(
$wpdb->signups,
array(
'active' => 1,
'activated' => current_time( 'mysql', true ),
),
array( 'activation_key' => $key, )
);
สร้างแบบสอบถามสำหรับบัญชีที่ยังไม่เปิดใช้งาน
เพียงแค่ให้ WP ทำงานหนัก:
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', )
);
คุณสามารถใช้อาร์กิวเมนต์ที่ 3 (อาร์เรย์) หากคุณใช้แบบฟอร์ม (n ผู้ดูแลระบบ) เพื่อดำเนินการตามคำขอเหล่านั้น (เช่นเช่นการขยาย a WP_List_Table) เพื่อระบุว่าคุณกำลังใช้สตริง โปรดทราบว่าคุณยังคงต้องทำความสะอาด$_POSTค่า ed คำแนะนำ: คุณสามารถใช้user_emailเช่นกัน
global $wpdb;
$wpdb->delete(
$wpdb->signups,
array( 'user_login' => 'some_login', ),
array( '%s', )
);