web-dev-qa-db-fra.com

Créer un post en utilisant le plugin JSON api

Je travaille sur un projet dans lequel l'utilisateur écrit son contenu sur un blog wordpress (en tant que brouillon) mais souhaite le publier sur son propre site de blog wordpress.

Cela semble étrange, mais c’est le concept de base pour l’entreprise car les rédacteurs sont collaboratifs et c’est ce qui peut maintenant être changé.

J'ai installé le plugin JSON api. (Je suis totalement nouveau chez api's et toujours dans la première année de PHP).

Je me demande 1. Comment vous utiliseriez les informations JSON du site A pour créer une publication pour le site B.

Jusqu'à présent, je l'ai conceptualisé comme suit.

  1. le plugin (sur le site b) extrait les informations JSON du site a
  2. le plugin prend alors le JSON et le transforme en tableau (essayant de le faire correspondre au plus grand nombre pour poster des infos)
  3. ensuite, le plugin insère les publications dans la base de données de la publication b du site b (je pensais que cela en ferait le plus rapide car c’est quelque chose que Twitter fait bien, sauf que les données se trouvent sur votre téléphone/ordinateur?)
  4. Les messages fonctionnent comme s’ils avaient été créés sur le site b (c’est-à-dire qu’ils respectent les règles du thème sur le site b).

Jusqu'à présent, CHAQUE tentative que j'ai faite pour google et le faire seul a abouti à un horrible échec. (Je ne suis pas encore tombé sur mon épée à cause de mon grand besoin d'accomplissement.)

La première tentative a été:

$response = wp_remote_get('urlhere/?json=get_post&post_id=120');
//$my_post = array($keys as $values);

wp_insert_post($response, $wp_error);

Cependant ... aucun résultat (je mets urlhere pour créer une réponse plus universelle et pas seulement pour se concentrer sur l'url du site réel.

// Create post object
$my_post_test = array(
  'post_title'    => "Hi this is a title!" ,
  'post_content'  => "This is a test",
  'post_status'   => 'publish',
  'post_author'   => 1,
  //'post_category' => array( 8,39 )
);

// Insert the post into the database
wp_insert_post( $my_post_test, $wp_error );

Deuxième numéro: Ce code produit 4 à 8 articles du même titre (cela semble étrange?)

Mes questions sont les suivantes: 1. Quel est le meilleur moyen de conceptualiser le processus pour qu'il soit relativement évolutif (c'est-à-dire 20 à 1 000 écrivains) 2. Comment pourrais-je obtenir du plug-in JSON api d'insérer les données dans un code post wordpress?

1
Cody

J'ai travaillé sur API JSON pour le développement d'une application iPhone pour un site WordPress afin de publier des photos mais sans utiliser le plug-in JSON API ,

Mais la procédure de base serait la suivante: puisque vous devez être connecté pour publier votre message, la communication se fera dans les deux sens.
1. L'auteur écrit un article comme brouillon sur le site A.
2. Il existe un lien ou un bouton permettant de lancer une demande JSON de connexion au site B; vous obtenez un jeton si la connexion a réussi.
3. Vous envoyez une autre demande JSON si vous obtenez un jeton, avec jeton et publiez des données sur le site B.
4. Si toutes les données sont valides, le site B publie la publication et vous renvoie l'ID POST
5. Vous pouvez stocker les identifiants de publication pour l'enregistrement.

Cela exigerait que vous vérifiiez la sécurité appropriée. De plus, le site b ne peut pas automatiquement extraire un nouveau message du site a comme vous l'avez dit dans votre premier point, car il doit indiquer à quel moment extraire les informations.

Il y a peut-être une meilleure approche que je ne connais pas, mais vous aurez besoin de créer un plugin personnalisé pour cela.

0
sven