$ wpdb-> insert добавляет 3 строки одновременно - PullRequest
0 голосов
/ 09 июля 2019

Я создал плагин, и при действии wp_head он выполняет функцию, которая вставляет в пользовательскую таблицу БД одну строку. Но на самом деле он добавляет 3 строки одновременно.

Есть идеи?

global $post;
global $wpdb;

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


echo "<!-- ID: ". $post->ID . ", TYPE: " . get_post_type($post->ID) . " -->";

$data = array( 'post'  => $post->ID, 'type'  => get_post_type($post->ID) );
$format = array( '%d', '%s');


if( $wpdb->insert( $table_name, $data, $format ) ){
  echo "<!-- RESULT:: ADDED: ". $wpdb->insert_id . " -->";
}

Он отображает одну строку каждого эхо, но добавляет в таблицу БД 3 строки, где в одной из них идентификатор сообщения отличается.

1 Ответ

0 голосов
/ 09 июля 2019

вы можете использовать таким образом

 function add_to_custom_table() 
    {
        if ( is_single() ) 
        {
                  $table_name = $wpdb->prefix . "my_plugin_table";

                   echo "<!-- ID: ". get_the_ID . ", TYPE: " . get_post_type($post->ID) . " -->";

    $data = array( 'post'  => get_the_ID(), 'type'  => get_post_type(get_the_ID()) );
    $format = array( '%d', '%s');


             if( $wpdb->insert( $table_name, $data, $format ) )
             {
               echo "<!-- RESULT:: ADDED: ". $wpdb->insert_id . " -->";
             }

        }
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...