web-dev-qa-db-fra.com

Afficher le titre/contenu de la page dans la page Messages?

J'ai créé un fichier home.php et l'ai appelé Blog.

Cela a été défini comme étant la page Posts, mais je voudrais ajouter un titre qui sera affiché dans cette page (le titre de la page ou du contenu).

par exemple:

Posts page:

    Page title
    (Maybe page content)

    == Posts ==

    Post Title
    Post Content

Post Title and so on
3
janoChen

Je suppose ce qui suit:

  1. Vous utilisez une page de garde statique
  2. Une page statique distincte est affectée à l'affichage de l'index des articles de blog.
  3. Vous avez créé le fichier modèle home.php dans votre thème.
  4. La page statique affectée à l'affichage de l'index des articles de blog s'intitule Blog
  5. Vous avez ajouté du contenu à cette page statique

En raison de la nature réservée spéciale de home.php, et également de page_for_posts, vous ne pouvez pas utiliser les méthodes normales pour accéder à l'objet $post pour la page Blog static. Toutefois, vous pouvez récupérer le titre et le contenu du message pour cette page. La clé consiste à référencer l'ID de publication via get_option( 'page_for_posts' ).

Titre de la page

Utilisez get_the_title() :

echo apply_filters( 'the_title', get_the_title( get_option( 'page_for_posts' ) ) );

Contenu de la page

Utilisez get_post_field() :

echo apply_filters( 'the_content', get_post_field( 'post_content', get_option( 'page_for_posts' ) ) );

Dans les deux cas, encapsulez la sortie dans un appel apply_filters(), de sorte que le titre et le contenu de l'article soient restitués de la même manière qu'ils le seraient normalement. Sinon, les données renvoyées via get_the_title() et get_post_field() ne présenteraient pas le formatage habituel que WordPress applique via the_title() et the_content(), respectivement.

11
Chip Bennett

comme ce que je comprends, vous avez besoin single_post_title()

7
Reigel