Recadrage convivial des miniatures de messages?

32

Existe-t-il un moyen de laisser mes utilisateurs définir la zone de recadrage d'une vignette de publication? Les vignettes sont toujours des pièces jointes existantes, je préférerais ne pas créer de pièce jointe supplémentaire par vignette.

Les miniatures des publications doivent faire 200 x 100 pixels et provenir d’une des images utilisées dans la publication. Ainsi, dans mon monde idéal, lorsque vous cliquez sur le lien "Définir l'image sélectionnée", vous obtenez une vue d'ensemble des images déjà incluses. Lorsque vous cliquez sur l'une d'elles, vous pouvez définir vous-même la zone de recadrage (en la déplaçant ou en la redimensionnant, le format d'image 2x1). Lorsque vous cliquez sur "OK", la nouvelle miniature de publication est enregistrée avec la pièce jointe d'origine (dans le champ de métadonnées _wp_attachment_metadata['sizes']['post-thumbnail'] , par exemple), et non comme une nouvelle pièce jointe. L'utilisation d'une image déjà utilisée en tant que vignette d'un message pour un autre message ne devrait pas être autorisée, ou du moins donner un avertissement.

Je pense que l'éditeur d'images inclus ne répondra pas à mes besoins, car vous pouvez choisir de modifier toutes les versions de l'image, ou la miniature normale, mais pas uniquement la miniature de publication. Je trouve également un peu déroutant de savoir quelles versions je suis en train d’éditer, je pense donc que mes utilisateurs auront encore plus de problèmes avec cela.

Existe-t-il un plugin qui fait ce que je veux ou que je peux facilement étendre à mes besoins?

Mise à jour: exemple d'interface utilisateur

J'aime beaucoup l’interface du sélecteur d’images du carnet d’adresses de Mac OS X: vous sélectionnez une image et redimensionnez un coupe-vignettes à taux fixe via un curseur. Vous pouvez également faire glisser l'image de base autour. Vous pouvez étendre cette idée à plusieurs tailles d'image (par exemple, j'ai post-thumbnail et post-thumbnail-1/2 la moitié de cette taille). Laissez l’utilisateur sélectionner la ou les tailles qu’il édite maintenant avec des cases à cocher, puis tracez les rectangles de rognage appropriés à l’écran.

    
posée Jan Fabry 13.09.2010 - 12:18
la source

8 réponses

11

Le code est toujours un désordre, mais il semble fonctionner, même sous IE 8. Je prévois de le publier dans le référentiel, mais vous pouvez jouer avec ma version actuelle . Pour y accéder, cliquez sur "Modifier l'image" lors de l'ajout ou de la modification d'une image. Il remplace l'éditeur d'image habituel (il est très difficile de les combiner). Étant donné que la majeure partie de la zone d'administration utilise la vignette standard et que ma version actuelle modifie la vignette de la publication, il peut sembler que le code n'ait aucun effet, mais essayez-le en affichant une vignette de publication et vous devriez la voir changer.

Ce plugin nécessite mon outil de redimensionnement d'images à la demande , qui est également toujours un désordre, pour effectuer le redimensionnement réel.

    
réponse donnée Jan Fabry 16.11.2010 - 17:17
la source
4

Votre meilleur choix est d’utiliser un recadrage d’images basé sur javascript, puis php combiné avec ImageMagick ou Image GD.

Il faudrait que cela soit écrit dans vos fonctions ou sous forme de plug-in, car je ne connais aucun plug-in WordPress standard, ce qui est surprenant.

Il existe une culture YUI avec l'option de sauvegarde php enlace

Voici un autre tutoriel sur l'utilisation d'un rogneur jquery avec php
enlace

Une troisième option très similaire au lien ci-dessus utilisant le même système de découpe jQuery mais un code différent. enlace

Voici une autre utilisation de jcrop avec jquery, enlace

.

Qui est partant pour un nouveau plug-in, ce serait sûrement populaire:)

    
réponse donnée Wyck 11.11.2010 - 03:23
la source
1

En supposant que vous ayez déjà ajouté le support pour les post-vignettes, car vous parlez de l'option "Image en vedette".

Si tel est le cas, l’une des options possibles consiste à ajouter une nouvelle taille d’image au tableau de téléchargement. Donc, par défaut, vous avez miniature, moyenne, grande. Dans le code suivant, cela ajoute une quatrième image à cet assortiment, en fonction de la taille souhaitée. Ce morceau de code serait ajouté à votre fichier functions.php.

add_image_size( 'new_thumb', 200, 100, true );

"new-thumb" = le nom de la nouvelle image personnalisée
"200" = largeur
"100" = hauteur
"true" = option de rognage difficile. Cela forcera une image à être recadrée à la largeur / hauteur définie. Sans cela, les proportions sont proportionnelles.

Maintenant, pour afficher la nouvelle vignette sur une page ou un tableau de publication, vous devez insérer les éléments suivants dans votre code HTML

<?php the_post_thumbnail('new_thumb'); ?>
    
réponse donnée cnix 29.10.2010 - 22:29
la source
1

Vous pouvez utiliser CSS pour avoir une grande flexibilité, corrigez les miniatures dans votre thème (si vous le souhaitez) et évitez l'encombrement des fichiers:

enlace

N'oubliez pas que l'intégralité de l'image sera chargée. Par conséquent, n'utilisez pas les originaux de 3 Mo pour cela.

Mettre à jour à la demande de Jan: Si vous souhaitez un découpage dynamique, considérez:

  • Pour utilisateur = administrateur, créez CSS via PHP; vous pouvez simplement vous connecter au php qui lit les paramètres appropriés et ajuster les paramètres de découpage en conséquence.
  • Pour utilisateur = visiteur, utilisez JavaScript pour modifier les paramètres de découpage dans l'attribut style de l'image.
  • Comme solution moins invasive, envisagez de créer un shortcode (via l'excellent plugin Shortcode Exec PHP) comme [thumb w = ?? h = ??] url [/ thumb] que vous pouvez traduire en balise HTML appropriée avec CSS en ligne.
réponse donnée Raphael 09.11.2010 - 21:20
la source
1

Il existe un plugin plus ancien appelé WP Post Thumbnail que nous utilisons parfois. Ce n'est pas parfait, et il y a quelques bugs mineurs avec la dernière version de WP (elle n'a pas été mise à jour depuis 2008, donc ce n'est pas nécessairement fiable). enlace

    
réponse donnée gabrielk 12.11.2010 - 03:32
la source
1

Je pense que vous recherchez ceci: enlace

Je n’ai pas essayé cela, mais il devrait vous offrir la fonctionnalité que vous recherchez.

La page du plugin d'origine ici. enlace

J'ai besoin de cela pour un projet sur lequel je travaille aussi.

    
réponse donnée tomcat23 16.11.2010 - 21:15
la source
1

Je pense que la solution ultime à ce problème serait de modifier le plugin de enlace

et personnalisez-le de sorte que toutes les tailles d'image personnalisées définies dans votre fichier functions.php (à l'aide de add_image_size( 'new_thumb', 200, 100, true ); ) soient automatiquement utilisées, puis le code pour remplacer (ou étendre) le lien "modifier" lorsque vous souhaitez modifier un fichier. image.

En utilisant cette approche, wordpress peut continuer à créer les tailles d'image applicables, comme d'habitude, mais si vous souhaitez modifier spécifiquement la zone recadrée d'une image spécifique, vous avez la possibilité de le faire, ce qui remplacerait à son tour l'image générée automatiquement. cette taille. Hmmm ... même si cela semble déroutant de le lire, c’est exactement ce qui me manque.

Actuellement, je pense que le plug-in enregistre ces tailles d'image personnalisées dans un champ personnalisé d'une publication au lieu de la publication d'une image applicable.

    
réponse donnée NetConstructor.com 24.11.2010 - 16:08
la source
1

J'ai décidé de rogner les vignettes en utilisant le "wp_get_attachment_image" natif ... voici un exemple de galerie d'images, avec des vignettes recadrées

enlace

Meilleures salutations

    
réponse donnée Alvaro Neto 27.12.2010 - 16:35
la source

Lire d'autres questions sur les étiquettes