I'm trying to insert to the table in my wordpress database but for some reason it's failing all the time.

$table_name = $wpdb->prefix . "wp_list_press";

$res = $wpdb->replace( $table_name, array(
    'pr_id'    => $da, 
    'pr_title' => $t,
    'pr_link'  => $str,
    'pr_date'  => $date,
    'pr_text'  => $tx,
    'pr_desc'  => $desc,
    'pr_image' => $im,
    'pr_pdf'   => $pd,

if ( $res ) {
    print( "Success" );

} else {
    print( "Failed" );
  • Try printing $wpdb->last_error to know if you get any error. Aug 22, 2017 at 13:11
  • What is your $wpdb->prefix value ? If it's the default wp_ then you may start removing this prefix from "wp_list_press".
    – ClemC
    Aug 22, 2017 at 13:40

1 Answer 1


You have the following for the table name: $wpdb->prefix . "wp_list_press"

Check your actual prefix and table name. In a WP installation using "wp_" as the prefix, the above would result in "wp_wp_list_press". Is that the table name in the db or is it just "wp_list_press"?

If the table in the db is "wp_list_press" then the above should be $wpdb->prefix . "list_press";

Not sure if this is contributing to the issue or not, but your data array has fewer elements than your format array.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.