2011-03-09 3 views
3

Dans mon plugin wordpress, je veux générer une page à la volée.Comment créer une nouvelle page à partir de mon plugin Wordpress

Je pourrais demander à l'utilisateur de créer la page pour moi. Mais je préférerais ne pas les faire faire des pas. Laissez-les simplement l'activer et cela fonctionne.

Alors je me demandais s'il y avait un moyen de faire cela, qui maintient toutes les fonctionnalités du plugin.

Mon idée initiale était d'ajouter une règle de réécriture

add_rewrite_rule ('my_page/$', 'wp-content/plugins/my_plugin/page.php', 'top');

Puis dans mon plugin je peux avoir un page.php. Ce qui fonctionne bien, mais je ne peux pas obtenir l'en-tête/pied de page, etc

Je suis très nouveau pour wordpress, alors il y a des chances que je manque quelque chose.

+0

Je ne comprends pas votre point .. Pouvez-vous expliquer un peu mieux ce que vous voulez faire? –

+0

Je l'ai mis à jour, j'espère que cela a plus de sens pour les lecteurs! – Mark

+0

Laissez-moi voir si j'ai compris. Vous avez un plugin qui a besoin de quelques pages. Et vous voulez quand vous activez le plugin, automatiquement la page est créée. J'ai raison? –

Répondre

4

Vous pouvez créer un extrait de code de 404 pages qui fait wp_insert_post(), puis redirige l'utilisateur vers celui-ci.

404.php de votre thème ressemblerait à ceci:

<?php 
$post_id = wp_insert_post("post_title" => "my post title", "post_content" => "Lol"); 
header("location:" . get_permalink($post_id)); 
die(); 
?> 
+0

Pour moi, cela semble être un mauvais hack. La page 404 est là pour une raison et je ne pense pas que ce soit une bonne idée d'outrepasser son objectif d'informer les utilisateurs qu'une page ne peut pas être trouvée. Il semble qu'il devrait y avoir une façon plus standardisée et documentée de faire ceci ... –

+0

Oh, c'est un terrible, terrible hack. Mais approprié à la terrible question. – pp19dd

Questions connexes