LASHÔN - WordPress Création Sites Internet

Navigation Menu

Définir l’emplacement du dossier uploads dans WordPress

Définir l’emplacement du dossier uploads dans WordPress

Posted on 30 octobre 2010 in Wordpress | 3 comments

uploads

Désiré François Laugée, Mort de Guillaume le conquérant 1851, aucun rapport avec cet article

(Cet article a été actualisé et réécrit)

Si vous n’avez rien touché à la case Médias de vos Réglages WordPress, les images insérées dans vos articles iront par défaut dans le dossier wp-content/uploads.

Le dossier uploads concerne tous les uploads que vous ferez, c’est-à-dire tous les fichiers insérés dans les articles et pages : images, vidéos, audio, pdf etc).

Pour changer le nom du dossier par défaut, il faut donc régler la chose dans votre tableau de bord, dans réglages puis dans Médias. Il y a deux champs possibles. Dans le champ « dossier par défaut », il faut mettre :

– Si vous voulez conserver votre dossier uploads dans wp-content et seulement changer son nom (exemple avec ‘mesinserts’) :

wp-content/mesinserts

Ceci remplacera seulement le nom de votre dossier uploads dans wp-content

– Si vous voulez que ce dossier soit hors de wp-content (pour améliorer la sécurité), par exemple à la racine de votre blog, indiquez seulement :

mesinserts

Le dossier uploads ne sera pas dans wp-content mais un niveau plus haut à la racine de votre blog

Si vous choisissez l’option dossiers selon dates, voir ici dans le codex : http://codex.wordpress.org/Function_Reference/wp_upload_dir

Maintenant, par souci d’optimisation de votre blog ou pour augmenter sa sécurité, vous avez choisi un autre nom et un autre emplacement pour le répertoire uploads, il faut le notifier à WordPress.

Puis optimisons la voie avec un define. Cette fonction ne gère pas l’upload, elle optimise les performances. Vous pouvez indiquer la voie soit dans le fichier functions.php, soit dans wp-config.php.

– Dans le cas où votre dossier est toujours dans wp-content :

define('UPLOADS', 'wp-content/mesinserts');

– Dans le cas où votre dossier est à la racine de votre blog (au même niveau que wp-admin, wp-content et wp-include) . C’est à dire une adresse URL du type monnomdedomaine.com/mesinserts/ :

define('UPLOADS', 'mesinserts');

Ou encore mieux (recommandé), donnez l’URL complète :

define('UPLOADS', 'http://mon-nom-de-domaine.com/mesinserts/');

Pour placer ce dossier dans un sous-domaine, lisez mon article (aussi réactualisé): Placer ses uploads et images dans un sous-domaine.

LIRE

Exporter Importer son blog WordPress AVEC ses images au bon endroit

Exporter Importer son blog WordPress AVEC ses images au bon endroit

Posted on 9 janvier 2010 in Wordpress | 16 comments

importer

Importer son blog demande quelques réglages préalables si vous désirez une copie identique

Comment exporter ou importer son blog, en local ou ailleurs, sans devoir chipoter pour récupérer ses images et obtenir les mêmes ID partout ? Il faut préparer son WordPress d’accueil et bien définir son dossier uploads.

La méthode sécurisée et complète est celle qui passe par la base de données. L’autre, que nous allons voir ici est la fonction importer de WordPress. Elle n’est pas toujours fiable, surtout pour les gros fichiers (donc peut être à réserver pour effectuer une copie pour travailler en local ?) mais a le mérite d’être très rapide.
Son défaut: il faut effectuer à la main les réglages de votre nouveau blog à l’identique de celui en ligne ou ancien blog.

Étape 1 : Exporter votre blog

Blog en ligne => tableau de bord => Options => Exporter => Télécharger.
Vous avez maintenant un fichier xml sur votre bureau qui contient tous vos articles, commentaires, et URL des images, tags, catégories, utilisateurs. Avant cette sauvegarde, vous pourriez aussi vous débarrasser des informations inutiles. Videz la corbeille des vieux articles et surtout optimisez votre base de données (soit via WP-Manager soit via votre console phpmyadmin ou Mysql chez votre hébergeur).

Étape 2 : Effectuez les réglages de votre nouveau WordPress à l’identique de l’ancien

(ou de votre blog en ligne s’il s’agit d’une copie pour travail en local)
Blog en ligne => tableau de bord => Réglages => tous les onglets.

Étape 3 : Supprimez la page et article livré par défaut dans votre nouveau wordpress

Blog en ligne => tableau de bord => Articles / Pages.
Important, afin de libérer les ID de ces deux pages qui sont probablement utilisés dans votre blog. Si vous avez déjà tenté l’importation et que vos ID (chiffre URL de vos pages, articles et catégories) n’étaient pas synchronisés, c’est faute d’avoir procédé à ce vidage préliminaire. Solution : videz tout et recommencez.

Étape 4 : Téléchargez votre blog sur votre disque dur

Téléchargez, via ftp, tout dossier pertinent sur votre disque dur. Soit tout le répertoire wp-content et tout autre dossier personnel ajouté (images et uploads si vous l’avez mis ailleurs que dans wp-content).

Étape 5: Définir l’emplacement du dossier uploads

Si vous n’avez rien touché à la case « divers » de vos réglages, les images insérées dans vos articles sont par défaut dans le dossier wp-content/uploads et l’importation de vos articles ne posera aucun problème.
Dans le cas contraire, vos images importées n’iront pas au bon endroit et vous ne verrez rien s’afficher. Or je suppose que vous avez envie de pouvoir également exporter puis importer vos images sans devoir changer les URL à la main… aussi il faut définir le lieu et le nom de celui-ci. Donc si par souci d’optimisation de votre blog ou pour augmenter sa sécurité, vous avez choisi un autre nom et un autre emplacement pour le répertoire uploads, il faut le notifier à WordPress dans votre fichier wp-config.php avec un define (mes images sont dans un sous-domaine, ce qui diminue le temps de chargement de la page).

Vous aimeriez que tous les uploads, c’est-à-dire tous les fichiers insérés dans les articles et pages, images, vidéos, audio, pdf etc) soient regroupés dans un dossier à la racine de votre site. Par exemple nommé madeco. Genre http://domaine.ltd/madeco (donc en-dehors de wordpress).

Dans wp-config.php, repérez la ligne:

require_once(ABSPATH.'wp-settings.php');

juste au-dessus ajoutez :

/** Definition emplacement du dossier uploads. */
define('UPLOADS', '/madeco');

Si votre dossier uploads est dans votre wp-content et vous avez seulement changé son nom :

/** Definition emplacement du dossier uploads. */
define('UPLOADS', 'wp-content/madeco');

Et dans votre tableau de bord, dans réglages puis dans divers, selon votre choix indiquez :

soit: /madeco
soit: wp-content/madeco

(voir aussi Définir l’emplacement du dossier uploads dans WordPress)

Étape 6: Importer votre blog

Dans votre nouveau Blog => tableau de bord => Options => Importer.
Importer le fichier xml exporté plus haut depuis votre disque dur en prenant soin de cocher la case ‘Télécharger et importer les fichiers joints’ (2e étape de la fonction importer) et choisir ‘rapporter à l’utilisateur’.

Tout est maintenant identique. Vous pouvez travailler, vos articles ont les mêmes ID et vos images sont présentes.

Ressources utiles:

LIRE

WordPress 2.9, gestion des miniatures (thumbnails) et du bon usage de l’insertion d’images

WordPress 2.9, gestion des miniatures (thumbnails) et du bon usage de l’insertion d’images

Posted on 31 décembre 2009 in Wordpress | 8 comments

Miniature d'un tableau végétal

Associer une miniature à ses extraits d

La dernière version de WordPress, Carmen 2.9, permet enfin de gérer (un peu) mieux l’insertion des images, en particulier les miniatures (thumbnails), sans nécessiter de plugin. D’emblée vous dire que cette fonction gère uniquement les nouveaux articles postés. Pour les vignettes des anciens articles, on peut choisir sa méthode personnelle parmi plusieurs configurations possibles. Plugin, TimThumb, utiliser wp 2.9 en ajoutant le code ad hoc dans son template, etc. Voir plus bas la petite liste ressources de bons articles.

Utiliser la nouvelle fonction miniature de WordPress 2.9 dans vos thèmes

Coder

Je ne ferais pas le tour de toutes les méthodes possibles (le champ est aussi vaste que l’ingéniosité des développeurs et codeurs en herbe). Parcourez les ressources livrées plus bas.

Vous pourriez par exemple vous passer de ce petit tutoriel et utiliser directement le Plugin Thumbnail For Excerpts ou Plugin Smart Image II, ou encore Get The Image et fw-post-image. Ce qui ne gère pas la nouvelle capacité de 2.9. à fabriquer des miniatures, ces plugins vont seulement chercher les première image existante.
Mais, d’une part les miniatures générées par la nouvelle version (avec the_post_thumbnail) ont le mérite d’être taillées, d’autre part le souci avec les plugins est le risque qu’ils ne soient plus à jour au fil des versions de WordPress, abandonnés par leurs développeurs, plantant par la même occasion votre beau blog au milieu du désert de la Toile criarde. Or, sur le plan des images, WordPress ne fait pas dans le simple pour ses utilisateurs. Voici une méthode raccourcie pour ceux qui ont déjà mal au crâne ou lisent mal l’anglais.

Ajoutez dans le functions.php de votre thème la ligne suivante (choisissez la taille de votre miniature):

  // Ajout pour supporter la gestion des thumbnails livrée avec WordPress 2.9
add_theme_support( 'post-thumbnails' );
set_post_thumbnail_size( 150, 150, true ); // Miniature de 150px/150px et fonction crop

Notez que la 2ème ligne est optionnelle car l’on peut également définir la taille au moment d’appeler cette fonction dans vos templates.

Ajoutez dans les fichiers de votre thème où vous voulez voir apparaître cette miniature (au choix, home.php, index.php, category.php, archive.php) la ligne suivante:

<?php the_post_thumbnail();?>

Ceci n’a un sens que si votre thème permet d’afficher les extraits de vos articles plutôt que l’entièreté de son contenu. Si ce n’est pas le cas, remplacez la ligne :

<?php the_content('Lire la suite &raquo;'); ?>

par

<?php the_excerpt('Lire la suite &raquo;'); ?>

Ce qui donne avec l’appel de la fonction thumbnail :

<?php the_post_thumbnail();?>
   <?php the_excerpt('Lire la suite &raquo;'); ?>

Personnellement, je préfère afficher une version conditionnelle, incluant le titre de l’article attaché à l’image, une récupération d’une image par défaut et définir, au besoin, la taille des vignettes dans les templates (fichiers du thème) pour pouvoir définir des tailles différentes selon l’endroit (solution Justin Tadlock) :

<?php
	if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())  ) {
	the_post_thumbnail(array( 150,150 ), array( 'alt' => 'alttext', 'title' => '<?php the_title(); ?>'));
} else {
	echo '<img src="sans-image.png" alt="sans image" title="image" />'; }
}
?>
   <?php the_excerpt('Lire la suite &raquo;'); ?>

Mais si vous aviez configuré vos miniatures au moyen de customs fields, vous auriez intérêt à avoir une solution de rechange (solution Kremalious, wp-recipe) :

<?php
	if (  (function_exists('has_post_thumbnail')) && (has_post_thumbnail())  ) {
	the_post_thumbnail(array( 150,150 ));
} else {
	$postimage = get_post_meta($post->ID, 'post-image', true);
	if ($postimage) {
		echo '<img src="'.$postimage.'" alt="" />'; }
}
?>
   <?php the_excerpt('Lire la suite &raquo;'); ?>
	<a href="<?php the_permalink() ?>" class="alignright" title="Lien permanent vers <?php the_title(); ?>">Lire la suite &raquo;</a>

Pour styler votre miniature, ouvrez votre style.css et ajoutez la classe .wp-post-image. Exemple:

.wp-post-image {
border: 1px solid #999;
margin:0 15px 10px 0;
padding:0;
float:left;
}

Utilisation – Insérer une image dans un nouvel article et choisir une miniature

Deux étapes. Maintenant, testez cette nouvelle fonction en publiant votre prochain article.

1) Faire comme d’habitude, dans l’éditeur visuel ajoutez une image en cliquant sur le petit carré en haut à gauche. Une fois celle-ci insérée, enregistrez votre article.

Capture d'écran Insertion d'une image dans WordPress

Remplissez tous les champs lors de l'insertion d'une image comme de la miniature, cela vous évitera des erreurs de validation et sera conforme au css du thème

2) Ensuite, à droite de l’éditeur visuel, cliquez sur « choisir comme miniature ». Une fenêtre pour l’image s’ouvre. Allez dans la galerie pour retrouver l’image que vous venez de charger, cliquez sur « Utiliser comme miniature » et cochez la case miniature:

capture d'écran pour insérer une miniature

Choisir-Utiliser comme miniature-

Miniature d'article

Choisir sa miniature d'article sous l'article à droite

Ici, on insère pas dans l’article, juste fermer la fenêtre de la miniature que vous voyez d’ailleurs apparaître à droite. Enregistrez le brouillon de votre article (auparavant, allez dans la partie html de l’éditeur visuel, sélectionnez tout, copiez le code au cas où), puis vérifiez avec l’aperçu et publiez.

Et pour les miniatures des anciens articles ?

Cette fonction étant codée différemment (the post thumbnail au lieu de post-image), non, les anciennes miniatures ne sont pas concernées.
Une méthode simple est de combiner des plugins. Pour régénérer la taille de vos miniatures dans un nouveau format, utilisez le plugin Regenerate Thumbnails. Son avantage est qu’il ne sert qu’une fois. Vous pourrez le désactiver une fois les miniatures mises à la nouvelle échelle. Ensuite, utilisez l’un des quatre plugins dont j’ai parlés plus haut (fw-post-image, get the image, smart imageII ou thumbnail for excerpt, et il y en a d’autres…).

Si vous avez trouvé d’autres méthodes que celle-ci ou d’autres astuces que celles citées dans les articles sources, abusez des commentaires, merci beaucoup pour tout le monde.

That’s All Folks!

Sources et ressources utiles :

.

LIRE