Migrer un site en Wpress

Voir l’excellent site de Grégoire (ou voir Migrer1) complété par des indication sur la base de données (ou voir  Migrer2) et un outil (Migrer3).

Consulter aussi le site de Korben (ou voir MigrerKorben1) qui propose trois scripts mysql

Une fois tout transféré en FTP et dans la nouvelle base de données, il faut modifier le fichier option de la base : à la main ou avec le script ci-dessous.

UPDATE wp_options SET option_value = replace(option_value, ‘http://www.ancien-site.com’, ‘http://www.nouveau-site.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;

Surtout ce qui est ci-dessus

UPDATE wp_posts SET guid = replace(guid, 'http://www.ancien-site.com','http://www.nouveau-site.com');

UPDATE wp_posts SET post_content = replace(post_content, 'http://www.ancien-site.com', 'http://www.nouveau-site.com');

Être attentif aux fichiers à la racine : htaccess, ovhconfig,…

Un fois le fichier option mis à jour, on peut utiliser la solution qui suit complètement automatique. Elle est en anglais, mais simple à faire fonctionner. Télécharger le fichier de migration ou le même ici

L’installer dans le même répertoire que le nouveau blog à modifier. Il y a donc maintenant quatre dossiers dans le répertoire du site : migration, wp-admin, wp-content et wp-includes

Lancer le script : http://monsite.fr/migration/

Détruire le dossier migration dès que c’est fini : sécurité !

Le site d’origine du script

Si tout va bien sur la page d’accueil et que les liens ne fonctionnent pas, vérifier dans la partie administration Réglages, Permaliens pour les régler comme ils s’affichent dans la barre de navigation mais qui entraine une erreur.


Autres références :

Pour modifier les préfixes des tables


En complément, vérifier les points suivants :

Si problème de connexion, installer en FTP un fichier index.html à la racine du site pour voir si le site répond.

  • Le fichier wp-config : bien reporter les codes de la base dans le nouvel hébergement
  • Vérifier que les DNS et que la zone DNS est correctement paramètre (surtout en cas de nouvel hébergement
  • Remise en route extensions, si on les as désactivées ! Et mise à jour.`
  • Dans le menu Réglages de WP, bien vérifier que les deux chemins sont identiques
  • Si besoin, dasn la base aller dans la table « xxx_options » et modifier à la main les données de la 1° ligne « siteurl »
  • Si extension contact, aller dans les paramètres et être attentifs à la présence ou non de reCaptcha de Google
  • Si nouveau site, aller activer un certificat  SSL dans multisite et site principal
  • Tout tester et…
  • …Sauvegarde base et ftp

Afficher les titres d’une catégorie dans un article ou une page

Plus simple (2019)

Le site : https://www.windtopik.fr/afficher-articles-pages-list-category-posts/
permet beaucoup de variantes : c’est juste un plugin de WordPress


Ancienne version plus complexe à mettre en œuvre avec moins de possibilités de tri

Se référer au site de Bibichette

Il faut insérer le code ci-dessous dans functions.php du thème :

/** Ajout par Mc  */
function jc_post_by_category($atts, $content = null) {
    extract(shortcode_atts(array(
        "nb" => '25', //le nombre est a moduler 
        "orderby" => 'post_date',
        "order" => 'DESC',
        "category" => '1'
    ), $atts));
    global $post;
    $tmp_post = $post;
    $myposts = get_posts('showposts='.$nb.'&orderby='.$orderby.'&category='.$category);
    $out = '<ul>';
    foreach($myposts as $post){
        setup_postdata( $post );
        $out .= '<li><a href="'.get_permalink().'">'.the_title("","",false).'</a></li>';
    }
    $out .= '</ul>';
    wp_reset_postdata();
    $post = $tmp_post;
    return $out;
}
add_shortcode("post-by-category", "jc_post_by_category"); /** Fin ajout par Mc */
 
/** Ajout par Mc  */

Dans la page ou l’article insérer le code suivant :

[post-by-category category="19"]

Vous pouvez également, par exemple, l’ajouter à un widget texte dans votre sidebar, mais il faudra auparavant ajouter ce petit bout de code pour que le shortcode soit interprété :

add_filter(‘widget_text’, ‘do_shortcode’);

L’idéal est de mettre ce code dans un thème enfant pour éviter d’avoir à corriger à chaque mise à jour du thème.

Mise à jour 2021

le plugin List Category Posts !

Choix de la(les) catégorie(s)

Le choix d’une catégorie peut se faire avec son ID :

[catlist id= »17″]

Ou avec son nom :

[catlist name= »Tutoriels »]

Pour sélectionner plusieurs catégories, il faut simplement rajouter un « + »comme ci-dessous :

[catlist id= »17+17″]

Nombre d’articles

Pour affiche un nombre précis d’articles, il faut ajouter l’expression « numberposts« . Soit dans l’exemple ci-dessous 10 articles :

[catlist name= »17″ numberposts= »10″]

Ordres des articles

Une fois la liste affichée, vous pouvez les classer selon des critères bien distincts.
Par exemple, on les classes par titre « orderby » dans l’ordre alphabétique « order » :

[catlist name=Palm orderby=title order=asc]

Voici d’autres choix de classement pour l’expression « orderby » :

  • ID : tri par l’identifiant numérique de l’article.
  • author : tri par auteur.
  • title : tri par titre.
  • type : tri par type.
  • category : tri par catégorie.
  • content : tri selon le contenu.
  • date : tri par date de création.
  • menu_order : tri selon l’ordre du menu pour les pages.
  • mime_type : tri selon le type MIME.
  • modified : tri par date de modification.
  • name : tri par stub.
  • parent : tri selon l’identifiant parent.
  • password : tri par mot de passe.
  • rand : affichage aléatoire.
  • status : tri par statut.

Autres options possibles

Voici quelques autres fonctionnalités disponibles pour ce plugin qui peuvent vous être utile. (Merci encore à Elodie pour cette suggestion!)

  • thumbnail : afficher ou non l’image de présentation de l’article.
  • thumbnail_size : Spécifier la taille de l’image de présentation.
  • date : affiche ou non la date de l’article. (Possibilité ensuite de classer vos articles par date avec l’option « order by »).

Afin d’afficher votre image de façon plus propre, il est possible d’appliquer une classe à votre liste. utiliser pour ce faire l’option « class ».

Le plugin prend également en compte les pages statiques et fournit un Widget spécifique.

Pour en savoir plus sur le plugin dirigez-vous sur la page du plugin > List Category Posts.

 

Rediriger vers un nouveau site

Pour rediriger vers un nouveau site2, placer à la racine du site1 le fichier .htacess suivant :

Redirect permanent / https://nomdusite2/

Bien respecter les espaces.

Essayer aussi cette syntaxe

RedirectPermanent / https://nom2.com

Autre solution
Dans le manager utiliser l’option Multi-Domaines, à partir du nom de domaine principal (celui lié à l’hébergement).
Faire pointer ton.site.com et ton.site.fr vers le même dossier cible
Exemple :
ton.site.com –> /www/
ton.site.fr –> /www/

Enfin redirection possible en http dans un fichier index à la racine de l’hébergement

<!DOCTYPE html PUBLIC « -//W3C//DTD XHTML 1.0 Transitional//EN » « http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd »>
<html xmlns= »http://www.w3.org/1999/xhtml »>
<head>
<meta http-equiv= »Content-Type » content= »text/html; charset=ISO-8859-1″ />
<p><META http-equiv= »refresh » CONTENT= »0;URL=http://lesiteverslequelonveutpointer.html/ »></p>
<title>Titre du nouveau site</title>
<style type= »text/css »>
</head>
<body>
</body>
</html>

 

Construire une image avec zones cliquables dans wordpress

Il faut utiliser le logiciel libre et gratuit Gimp.
Le lancer et ouvrir l’image. Si besoin adapter ses dimensions à son utilisation future. Filtres —> Web —> Image cliquable

Une nouvelle fenêtre s’ouvre

À l’aide de la souris, délimiter la première zone en choisissant sur la gauche l’outil Rectangle, cercle ou polygonal. Double-cliquer pour valider le tracé. Un panneau nouveau s’ouvre.

Il faut indiquer le type de lien (le plus souvent, site web), l’adresse de la page (le copier coller semble ne pas fonctionner), la cible (_blank va ouvrir le lien dans un nouvel onglet ou une nouvelle page selon le paramétrage du navigateur de celui qui clique) et le texte alternatif optionnel. Valider par « Apply » puis « OK »

Recommencer pour la deuxième zone la même opération.

On observe dans la colonne de droite le résumé de tous les éléments que l’on vient de créer. On peut insérer autant de zones que l’on veut.

Si l’on sélectionne une ou plusieurs zones, elles sont matérialisées sur l’image par un contour rouge.

Il faut maintenant cliquer sur « Fichier » —> « Enregistrer sous »

Ne pas forcément modifier le nom par défaut et choisir l’endroit de l’enregistrement.

Nous constatons la présence d’un nouveau fichier avec l’extension « .map »

[Nom de l’image] (importée).map Nous allons l’ouvrir avec une application basique pour texte (TextEdit – Mac ou SimpleTexte – PC). Les traitements de texte plus élaborés introduisent des balises invisibles qui vont nous gêner pour la suite

 

<img src= »[Fotolia_663417_L] (importée) » width= »550″ height= »371″ border= »0″ usemap= »#map » />

<map name= »map »>

<!– #$-:Image map file created by GIMP Image Map plug-in –>

<!– #$-:GIMP Image Map plug-in by Maurits Rijk –>

<!– #$-:Please do not edit lines starting with « #$ » –>

<!– #$VERSION:2.3 –>

<!– #$AUTHOR:Prénom NOM –>

<area shape= »poly » coords= »108,255,90,237,85,231,130,210,170,189,167,212,157,234,154,245,121,257″ alt= »États-Unis » target= »_blank » href= »http://fr.wikipedia.org/États-Unis » />

<area shape= »circle » coords= »238,166,11″ alt= »Angleterre » target= »_blank » href= »http://fr.wikipedia.org/Angleterre » />

</map>

Il faut maintenant ouvrir son navigateur et la page dans laquelle on va installer l’image cliquable.

Se rendre sur la page ou l’article où sera installé l’image. Installer comme d’habitude l’image par le menu « Ajouter un média » Passer en mode « Texte » (et non pas « Visuel ») et coller le code du fichier .map débarrassé de tous ses commentaires. (ce qui commence par <- -! et fini par – ->

Il faut maintenant remplacer l’adresse de l’image cliquable « [Fotolia_663417_L] (importée) » par celle qui figure dans l’image importée « http://www.pommedepain.org/4/wp-content/uploads/2015/03/Fotolia_663417_L.jpg » dans notre cas. Le résultat…

Si l’on clique sur l’onglet « Visuel » il y a deux images… Il faut donc maintenant supprimer la première et ne garder que celle qui est cliquable.

Publier ou mettre à jour l’article ou la page et l’ouvrir dans un navigateur ; on constate en passant la souris sur les zones cliquables que tout fonctionne parfaitement.

Passer en php 5 chez OVH

Dans un fichier .htaccess d’écrire le code suivant :

SetEnv PHP_VER 5_TEST

En 2015 il faut passer en PHP5.4 mini et de préférence en PHP5.6

On peut tester si ses sites fonctionnent en fabriquant un fichier txt

app.engine=php
app.engine.version=5.6
http.firewall=none
environment=production

que l’on va nommer .ovhconfig et le placer à la racine du site en FTP.

Vérifier la version php en installant un fichier info.php à la racine et en tapant l’URL monsite.ext/info.php

<?php
phpinfo();
?>