2016-12-20 17 views
0

J'essaie d'ajouter des données d'un autre site Web à mon site Wordpress. Pour cela j'ai créé un plugin. Dans ce plugin je peux obtenir des données de mon autre site Web, mais je ne peux pas et le site Web de mon Wordpress. Voici mon code pour cela.Wordpress vérifier la duplication et insérer les données

$mysqlis=mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); 

    $slug = str_replace(" ","-",$value); 

    $checkdublicate = $mysqlis->query("SELECT * FROM `temp_wp_terms` WHERE `slug` = '.$slug.' AND `name`='.$value.'"); 

    if ($checkdublicate->num_rows == "0") 
    { 
     if ($value != "." && $value != "..") 
     { 
     $query = "INSERT INTO `temp_wp_terms`(`name`, `slug`, `term_group`) VALUES ('.$value.', '.$slug.', '0')"; 
     $mysqlis->query($query); 
      if(!$mysqlis) 
      { 
      echo "Error in insert"; 
      } 
     } 
     else 
     { 
      mylog("173 insert failed NoRow: " .print_r($checkdublicate->num_rows,TRUE)); 

     } 
    } 
    $mysqlis->close(); 

Veuillez me donner n'importe quelle solution. Merci

+0

S'il vous plaît mettre à jour ce avec un peu plus de contexte autour de la façon dont vous » réessayer d'intégrer cette date (comment vous essayez d'atteindre votre objectif d'insertion de données). Je recommande fortement de lire [Comment créer un exemple minimal, complet et vérifiable] (http://stackoverflow.com/help/mcve) car une question bien formée, complète, est plus facile à répondre. – Guildencrantz

+0

Pourquoi ne pouvez-vous pas l'ajouter à votre site Web Wordpress? Est-ce un problème logiciel ou un problème de configuration du serveur (qui serait hors sujet pour StackOverflow)? –

Répondre

0

Si vous utilisez un plugin, vous devez utiliser l'objet global $ wpdb plutôt que mysqli. $ wpdb fournit un moyen de préparer des requêtes personnalisées et utilise automatiquement les informations d'identification de la base de données dans le fichier de configuration wordpress.

essayer quelque chose comme ça, (la remplacer requête évitera les doublons si vous avez des indices appropriés fixés.):

global $wpdb; 

$query = $wpdb->prepare("REPLACE INTO `temp_wp_terms`(`name`, `slug`, `term_group`) VALUES (%s, %s, %d)", $value, $slug, 0); 

$wpdb->query($query) 

Source: https://developer.wordpress.org/reference/classes/wpdb/