web-dev-qa-db-fra.com

Créer des pages WordPress avec PHP

J'utilise MongoDB pour stocker des données séparées pour un site Web WordPress et je dois pouvoir créer des pages avec les données de MongoDB plutôt que de pages créées manuellement dans le tableau de bord. J'ai cherché partout cela et je n'arrive pas à trouver quoi que ce soit pour créer des pages dans le backend.

Est-ce même possible et si oui, quelqu'un connaît-il un bon point de départ ou un moyen de le faire?

Toute information serait géniale.

2
vikwer

Vous pouvez créer par programmation des publications et des pages à l'aide de wp_insert_post ou insérer du contenu à l'aide de fichiers WXR via la fonctionnalité d'importation de WordPress.

Pour utiliser wp_insert_post, consultez la documentation ici: http://codex.wordpress.org/Function_Reference/wp_insert_post

Un exemple simple:

 $my_post = array(
          'post_title'    => 'hello',
          'post_content'  => 'This is my post.',
          'post_status'   => 'publish',
          'post_author'   => 1,
          'post_category' => array(1),
          'post_type'     => 'page'
          );

          // Insert the post into the database
          wp_insert_post( $my_post );

MAIS, vous feriez probablement mieux d'utiliser la fonctionnalité d'importation de WordPress. WordPress utilise des fichiers WXR, ce qui signifie WordPress Extended Rss (si vous connaissez XML, vous verrez qu'il est similaire).

Il serait donc préférable que vous analysiez votre contenu Mongo dans un fichier WXR, puis que vous l'importiez dans WordPress.

Un article détaillé sur WXR: http://devtidbits.com/2011/03/16/the-wordpress-extended-rss-wxr-exportimport-xml-document-format-decoded- et-expliqué/

Vous pouvez également simplement ajouter du contenu factice à WP, l'exporter et afficher le fichier WXR pour voir le format à suivre.

2
Wyck

Pourquoi le type de base de données que vous utilisez a-t-il une quelconque pertinence pour le début du site? En théorie, si vous apportez les adaptations d'accès SQL et DB requises, vous pouvez exécuter wordpress sur MongoDB.

Les pages sont des artefacts frontaux utilisés pour gérer la génération de contenu et la résolution des URL. Si vous ne souhaitez pas les utiliser, pourquoi utilisez-vous wordpress?

Tout peut être fait dans wordpress mais cela ne veut pas dire que wordpress est la meilleure option pour chaque tâche.

0
Mark Kaplun

Tout d’abord, c’est mon inconvénient: je ne suis pas habitué à MangoDB, mais je pense pouvoir répondre au contexte.

Pour introduire votre PHP personnalisé dans les pages WordPress, la meilleure solution consiste à créer un modèle de page .

ÉTAPE I: création de votre page de modèle personnalisée
Créez une nouvelle page PHP, totalement nouvelle avec le code suivant:

<?php
/*
Template Name: My Custom Page
*/

Enregistrez le fichier dans votre dossier de thème sous un nom de votre choix, à savoir my-template.php. Vous pouvez ensuite faire ce que vous voulez avec PHP et MySQL dans le modèle de page. Mais pour travailler avec MySQL dans WordPress, il existe une méthode suggérée, à savoir $ wpdb .

Alors maintenant, pour un contrôle, il suffit de mettre la chose de base PHP: echo "Hello World!"; dans le modèle de page.

ÉTAPE II: Utiliser le modèle en page
Dans /wp-admin, créez une nouvelle page, attribuez-lui un titre correspondant au code ou à la fonction PHP de la page et, directement à l'éditeur, choisissez votre page de modèle dans le menu déroulant vous y trouverez: "Ma page personnalisée". Choisissez le modèle et enregistrez la page.

Maintenant, regardez la page et voyez comment vous dites "bonjour" au monde!


AUTREMENT

Une autre façon d'utiliser PHP dans Pages est d'utiliser un plugin tel que:

Pour travailler avec le plugin, un tutoriel est disponible ici .

0
Mayeenul Islam