2010-08-10 5 views
0

Je suis en train de coder un thème wordpress pour un magazine. Un aspect du site, c'est que la page d'accueil est statique, et il présente le numéro actuel du magazine dans une partie de la page d'accueil. J'ai besoin d'aide pour trouver le moyen le plus pratique de remplacer le contenu du dernier numéro de la page d'accueil.Dois-je utiliser un type de message personnalisé Wordpress 3.0?

Fondamentalement, chaque mois, une image, ainsi qu'un titre et un court paragraphe de texte vont changer sur la page d'accueil. Ma page d'accueil est une page statique (à partir d'un modèle). Je voudrais que le client soit capable de changer l'image/le texte de l'arrière de wordpress. Cela dit, la meilleure façon de procéder est d'écrire un type de message personnalisé?

Ceci n'est pas lié au blog (section posts). Il y a probablement une façon très simple d'y arriver. Des idées?

Répondre

1

OUI! Les types de messages personnalisés étaient la solution. La réponse est entièrement décrit ici: link text

Fondamentalement, j'ai ajouté à mon fichier functions.php:

add_action ('init', 'create_my_post_types');

function create_my_post_types() { 
    register_post_type('current_issue', 
     array(
      'labels' => array(
       'name' => __('Current Issues'), 
       'singular_name' => __('Current Issue') 
      ), 
      'public' => true, 
      'exclude_from_search' => true, 
      'supports' => array('title', 'editor', 'thumbnail'), 
     ) 
    ); 
} 

Et puis ajouté ceci dans mon fichier homepage.php:

<?php $loop = new WP_Query(array('post_type' => 'current_issue', 'posts_per_page' => 1)); ?> 

       <?php while ($loop->have_posts()) : $loop->the_post(); ?> 
        <?php the_post_thumbnail('current-issue'); ?> 
        <?php the_title('<h2><a href="' . get_permalink() . '" title="' . the_title_attribute('echo=0') . '" rel="bookmark">', '</a></h2>'); ?> 
        <div class="readmore" style="margin-top:4px"> 
        <a href="#">Read More</a> 
        </div> 
        <?php the_content(); ?> 

       <?php endwhile; ?> 

Il a parfaitement fonctionné!

Questions connexes