2010-11-13 4 views
2

Depuis que j'ai eu quelques commentaires sur la formulation de ma question, j'ai décidé de la réécrire complètement. Et aussi, je comprends un peu plus sur wordpress donc ça devrait avoir plus de sens maintenant.Comment ajouter dynamiquement des pages liées et créées dans wordpress?

Alors, commençons par ce que je suis en train d'accomplir en utilisant un exemple simple:


Objectif:

Faire un moteur de recherche pour certains produits et un lien vers les utiliser un base de données pour générer l'information.

Résultat:

http://my.site.url/wordpress/<plugin-name> <-- The page with the "search" and "search result 
http://my.site.url/wordpress/<plugin-name>/products/<product_name> <-- When click on a search result 

Partie 1:

Je veux faire un plugin avec le nom "plug-in-name" En ce moment, je mets mon code dans

http://my.site.url/wordpress/wp-content/plugins/<plugin-name> 

Sur l'ac tivate, je crée des tables avec quelques données. Comme il n'y a pas encore de page, j'en crée 1 à la volée en utilisant l'appel de l'API 'wp_insert_post'. Je donne le nom et la limace "myPlugin". Donc, quand je vais sur le site principal, je peux voir ma page nouvellement créée "myPlugin". Mais pour l'instant, il n'y a pas de contenu attaché à cela. Pour ce faire, d'après ce que je comprends, j'ai besoin de créer une page dans mon répertoire plug-in nommé "myPlugin.php". Alors, comment lier la page que j'ai créée manuellement et le fichier source dans le répertoire du plugin?


Partie 2

En cliquant sur un lien dans le résultat de recherche, je voudrais avoir une page « product.php » et afficher ses informations. Alors, est-il possible de créer une "URL temporaire" pour le résultat en utilisant des sous-pages (voir le résultat au début)? Et si possible, comment pouvons-nous y parvenir?


Merci d'avance et j'espère que c'est plus clair.

+0

Vous souhaitez qu'une page s'affiche comme si elle faisait partie de votre site WordPress mais pas créée en utilisant le mode Page du panneau de contrôle? Vous devriez clarifier vos besoins, en ce moment c'est un tas de bêtises pour moi. –

+0

Ca a du sens pour moi :) Oui, je veux que les pages soient rendues comme si elles faisaient partie de la page wordpress, sinon je n'aurais pas à poser ces questions. Je veux utiliser "l'API wordpress". – Sauleil

+0

@thisMayhem Juste ajouté quelques clarifications. J'espère que ça aide à mieux comprendre. – Sauleil

Répondre

0

u peut trouver comment créer le plugin de http://ditio.net/2007/08/09/how-to-create-wordpress-plugin-from-a-scratch/

en fonction d'écriture de plug-in pour la recherche (comme par ur logique) Récupère résultent

créer une page personnalisée se réfèrent vidéo à partir www.wordpressmax.com/customize -wordpress/page personnalisée

dans le modèle de pages personnalisées entre get_header(); et get_footer(); appeler la fonction de recherche et afficher les enregistrements.

C'est le cas.

+0

J'ai déjà trouvé le premier tutoriel, mais comment créer une page personnalisée est ce qui me manquait. Merci. – Sauleil

0

thisMayhem a raison. Cela ressemble à un tas de bêtises. Mais, si vous essayez de créer une page WP qui exécute du code PHP personnalisé, recherchez la hiérarchie du modèle WP.

Ce que vous pouvez faire est la suivante:

  • créer un WP "page" - appeler "Résultats de la recherche."
  • créer un fichier de répertoire modèle appelé résultats de recherche de page.php (nom de fichier correspond limace de la page de l'étape 1)
  • a mis quelque chose d'en-tête/pied de page générique il (voir d'autres fichiers de modèle - le plus souvent, il est juste une question de mettre en <?php get_header(); ?> et <?php get_footer(); ?>)
  • mettre du code PHP dans ce page thar. dans les collines.
  • si vous utilisez un plugin de mise en cache, peut vouloir mettre une exemption pour/de résultats de recherche/

Alors, quand quelqu'un tire vers le haut http://your.site/search-results/ - votre code PHP personnalisé exécutera. C'est à vous de faire que la logique et la communication se produisent - que ce soit via $ _GET ou $ _POST, etc.

+0

Je viens de mettre à jour mon post afin d'être plus précis maintenant que je comprends un peu plus. J'espère que ça a l'air un peu moins nul. Avec votre réponse, je ne comprends toujours pas comment lier le page-search-results.php dans mon répertoire de plugin avec la page WP. Le fichier est simplement ignoré. Peut-être que j'ai besoin d'une sorte d'AddAction? – Sauleil

0

Désolé, vous rencontrez des problèmes. Malheureusement, comme nous le disons plus haut parce que c'est un «one off» pour un projet client, nous ne pouvons pas le supporter - ça marche pour eux :) N'hésitez pas à le déchiffrer et retester et si vous avez du succès faites le nous savoir.

Questions connexes