onsa
12/17/2016 - 4:40 PM

Sample usage of $wpdb

Sample usage of $wpdb

<?php

  add_filter('some_hook', 'wpdb_operations', 10, 2);
  function wpdb_operations($entryId, $formId) {
   global $wpdb;
   // gets one variable
   $data=$wpdb->get_var($wpdb->prepare("SELECT id FROM $wpdb->users WHERE (item_id = $itemId AND field_id = $fieldID)"));
  
   // generic query for selecting
   $wpdb->get_results("SELECT id, post_title FROM $wpdb->posts WHERE post_status = $postStatus AND post_author = $authorID");
  
   // gets a whole row
   $row=$wpdb->get_row("SELECT * FROM $wpdb->users WHERE id = $userID");
   // gets a column
   $column=$wpdb->get_col($wpdb->prepare("SELECT id FROM $wpdb->postmeta WHERE meta_value = %s AND meta_key = %s ", $meta_value, $meta_key));
   // inserts a row
   $wpdb->insert('tableName', array('column1' => 'value1', 'column2' => 123), array('%s', '%d')); // AUTO_INCREMENTed ID can be grabbed thus: $wpdb->insert_id
   // replaces a row
   $wpdb->replace('tableName', array('id' => 1, 'column1' => 'value1', 'column2' => 123), array('%d', '%s', '%d'));
   // updates a row
   $wpdb->update('tableName', array('column1' => 'value1', 'column2' => 'value2'), array( 'ID' => 1 ), array('%s',	'%d'), array('%d'));
   // deletes a row
   $wpdb->delete( 'table', array( 'ID' => 1 ) );
  
   // generic query for deleting
   $wpdb->query($wpdb->prepare("DELETE FROM $wpdb->postmeta WHERE post_id = %d AND meta_key = %s", 13, 'gargle'));
   // generic query for updating
   $wpdb->query("UPDATE $wpdb->posts SET post_parent = 7 WHERE ID = 15 AND post_status = 'static'");
  }
?>