Using WPDB->Insert()

Short answer, no. WPDB is a class that’s been around for a while (back when WP used to support PHP 4), and lacks a lot of features PHP5 drivers offer, including parameter binding. As you mentioned, wpdb::insert is the closest you can get to your original code: $wpdb->insert( ‘importtest’, array( ‘id’ => $ID, ‘area’ => … Read more

Alternative functions for mysql_free_result and mysql_ping in wordpress functions

You have the following methods of the $wpdb object: $wpdb->flush() that contains a call to mysqli_free_result() or mysql_free_result() if not supported. $wpdb->check_connection() that contains a call to mysqli_ping() or mysql_ping() if not supported. You can of course use all your PHP functions in WordPress. Here’s an example based on the \wpdb class itself: // Use … Read more

$wpdb returns duplicate posts

Nevermind, I solved it on my own. While reading on the WordPress Codex for $wpdb, I saw that if I use OBJECT_K it will remove the duplicates and that solved my problem. If it helps anyone, here is my working code: function latest_posts_after_last_login( $atts ) { global $wpdb, $current_user; $atts = shortcode_atts( array( ‘post_type’ => … Read more

Remove empty rows from the database

I’d imagine those rows with empty content are more often then not revisions rather than trashed posts. To make sure you don’t delete stuff you want to keep I suggest you add the post_status to your SQL, using trash and auto-draft as value – the latter are the revisions. Btw the table column is called … Read more

Is there a page length limit?

The post content field is MySQL type longtext, which has a limit of 4 gigabytes. What you may be encountering is an issue with the TinyMCE editor. Content is processed and validated in the browser with JavaScript. If that’s the case, I doubt you will improve your situation by using Drupal, since you will be … Read more

Can’t run database query

Here issue with the column name. You are using column key in the query which is the default keyword/index in mysql. For resolving this kind of issue just use the “Grave accent(`)’ symbol in the query for the column name, No need to change the column name. So in your case the right query is … Read more