olivier evrard

*********************
*********************

Worpress en local avec Mamp

1/ Installez Mamp (serveur local)

Mamp est un acronyme informatique signifiant:

  • Macintosh
  • Apache (le serveur web)
  • MySQL (le serveur de base de données)
  • P pour Perl, PHP ou Python (langages de script)

C’est un programme qui va créer un serveur en local sur votre Mac. N’oubliez pas de démarrer les serveurs.

Installez WordPress

1/ Installez le dossier WordPress dans Mamp/htdocs

2/ Créez une base de donnée vide de type MySQL via la page WebStart de Mamp par le menu Outils/phpMyAdmin.

3/ Par la page WebStart, cliquez sur « Mon site web », ensuite sur votre dossier WordPress pour lancer l’installation.

4/ Reliez votre WordPress à votre base de données MySQL.

5/ Configurez votre site WordPress en local avec login et mot de passe facile à retenir.

6/ Votre site est déjà en place. Connectez vous !

Fichiers de base WordPress

Il faut un fichier style.css

/*
Theme Name: ici le nom du theme
Theme URI: url du créateur
Description: une petite description
Version: 0.1
Author: votre nom

Creation Theme by votre nom || adresse web
*/

Il faut un fichier index.php

C’est la page principale du WordPress. Un peu comme « index.html » pour un site statique. C’est dans ce fichier que l’on va installer la boucle WordPress (loop) qui permet l’appel à la base de donnée MySql et donc l’affichage des articles (posts) rédigés dans l’interface (back-end) de WordPress. On pourra afficher les titres, les auteurs, les dates, les catégories, le contenu, … selon ses besoins.

<?php get_header(); ?> <!-- importation du header -->

<!-- ici on placera la boucle (loop) wordpress -->

<!-- ici on place le footer -->
<?php get_footer(); ?>

La boucle WordPress dans index.php

La boucle (The Loop) est utilisée par WordPress pour afficher chacun de vos articles. Par l’utilisation de la boucle, WordPress traite tous les articles devant être affichés sur la page active et adapte leur présentation en utilisant les critères décrits par les marqueurs de la boucle. Tous les morceaux de code HTML ou PHP placés entre le début et la fin de la boucle seront exécutés pour chaque article.

Boucle minimale pour afficher un résultat

<!-- Début de la Boucle. -->
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

<!-- Affiche le Titre en tant que lien vers le Permalien de l'Article. -->
 <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>

<!-- Fin de La Boucle (mais notez le "else:" - voir la suite). --> 
<?php endwhile; else: ?>

<!-- Fin REELLE de La Boucle. --> 
<?php endif; ?>

Relier le fichier CSS dans le <head>

<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />

Boucle avec titre, date, contenu

<!-- Début de la Boucle. -->
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

<!-- Affiche le Titre en tant que lien vers le Permalien de l'Article. -->
 <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>

 <!-- Affiche la Date. -->
 <small><?php the_time('F jS, Y'); ?></small>

 <!-- Affiche le corps (Content) de l'Article dans un bloc div. -->
 <div class="entry">

   <?php the_content(); ?>
 </div>

<!-- Fin de La Boucle (mais notez le "else:" - voir la suite). --> <?php endwhile; else: ?> <!-- Fin REELLE de La Boucle. --> <?php endif; ?>

Boucle avec message d’erreur si aucun post n’existe dans MySql

<!-- Début de la Boucle. -->
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

<!-- Affiche le Titre en tant que lien vers le Permalien de l'Article. -->
 <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>

 <!-- Affiche la Date. -->
 <small><?php the_time('F jS, Y'); ?></small>

 <!-- Affiche le corps (Content) de l'Article dans un bloc div. -->
 <div class="entry">

   <?php the_content(); ?>
 </div>

<!-- Fin de La Boucle (mais notez le "else:" - voir la suite). -->
 <?php endwhile; else: ?>

 <!-- Le premier "if" testait l'existence d'Articles à afficher. Cette -->
 <!-- partie "else" indique que faire si ce n'est pas le cas. -->
 <p>Désolé il n'y a pas d'article :(</p>

 <!-- Fin REELLE de La Boucle. -->
 <?php endif; ?>

header.php

<h1 class="blog-title">
<a href="<?php bloginfo('wpurl');?>">
<?php echo get_bloginfo( 'name' ); ?></a>
</h1>

Plus loin…

Page single.php

En principe, on peut afficher tous les articles dans « index.php ». Pour des raisons de confort de lecture et donc d’ergonomie, il est souvent préférable de demander d’afficher dans « index.php » uniquement les titres des articles cliquable, avec aussi – pourquoi pas – un résumé, une image, le nom de l’auteur, la date… Pour le reste, le contenu peut alors se lire dans « single.php » qui ne va afficher qu’un seul article sélectionné mais alors ici dans son intégralité.

<div class="post" id="post-<?php the_ID(); ?>">
 <h1><?php the_title(); ?></h1>
 <div class="entry">
 <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
 </div>
</div>

Mettre des liens entre les articles

<?php previous_post_link( '%link', 'précédent'); ?>
<span> | </span>
 <?php next_post_link( '%link', 'suivant'); ?>

Liens

*********************