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', )
);