WordPress 3.1 : Les évolutions envisagées

6 septembre 2010 § 4

Cet article est basé sur l’article de Jane Wells publié sur le blog de développement de WordPress. Ça n’est pas une traduction stricte, mais une interprétation libre de ma part.

Contrairement à WordPress 3.0, la version 3.1 se doit d’avoir un temps de développement court, les évolutions envisagées seront donc rapides, et il n’y aura pas de gros projets intégrés.

L’objectif de date pour la sortie finale de WordPress 3.1 est prévu pour mi-décembre 2010.

Cette version va avant tout privilégier les évolutions sur l’interface, la qualité et les performances du code et il n’y aura pas de modification sur le schéma. L’avis de l’équipe est de réserver les évolutions majeures pour WordPress 3.2, et ainsi produire un code de qualité en PHP5.

Donc première chose à retenir : pas de modification de schéma et pas de nouvelles API importantes.

Ce que ne contiendra pas WordPress 3.1

La refonte des médias. Une mise à jour importante du gestionnaire des médias a été envisagée par l’équipe de dev, c’est aussi l’une des demandes les plus récurrentes de la communauté. Il ne changera pas pour la simple et bonne raison que le code en question est assez tordu et qu’il serait regrettable de développer quelque chose en PHP4 alors que WordPress 3.2 sera compatible PHP5 uniquement.

De plus, c’est un chantier qui demandera du temps, qui imposera des modifications sur le schéma de la base de données et sur l’interface utilisateur. De fait, c’est un chantier couteux en temps.

Pour WordPress 3.1, la seule évolution possible sur le gestionnaire de médias sera l’envoi de fichiers HTML.

L’autre point important qui ne sera pas modifié dans WordPress 3.1 concernant la gestion de widgets. En effet, le filtrage des widgets par vue article/page/catégorie ne pourra être travaillé que dans WordPress 3.2.

En attendant, les plugins proposent des solutions appréciables.

Les fonctionnalités probables de WordPress 3.1

1. Des évolutions prévues sur l’API de taxonomie afin d’effectuer des requêtes avancées. WordPress 3.0 avec les custom types et les custom taxonomies a radicalement changé la façon de penser un site WordPress. L’API des taxonomies évolue logiquement pour répondre à toutes les attentes.

2. Une refonte importante des rôles/permissions est demandée par certains membres de l’équipe WordPress, pour la version 3.1, une première version de l’API sera proposée avec des fonctions permettant de travailler plus facilement sur les utilisateurs. À l’heure actuelle, les requêtes SQL « maison » priment encore dans ce domaine.

3. Une nouvelle fonctionnalité est également envisagée, il s’agit des liens internes. Autrement dit, la possibilité de créer des relations entre les contenus de WordPress. Il s’agit de la principale évolution à mes yeux de WP 3.1 !

Il fut un temps où seuls les articles relatifs permettaient de créer des liens entre les contenus, désormais il existe plusieurs plugins permettant de créer manuellement des liens entre le contenu (comme mon plugin Relation Post Types). Cette fonctionnalité est en vive discussion sur le trac.

4. Les pages de l’administration vont être largement AJAXifié avec quelques modifications mineures d’interface. La modération des commentaires sera également revue.

5. La barre d’administration avec menu déroulant. Très utile pour les plateformes de sites, buddypress, la barre d’administration semblable à WordPress.com fera probablement son apparition. Mais comme tout le monde n’est pas d’accord, la fonctionnalité restera peut-être sur la forme d’un plugin. (le plugin de Viper007Bond gère cela très bien pour le moment.)

6. Quelques simplifications et nettoyages de l’interface à travers toute l’application, et principalement le multi-site. Des pistes de recherche pour l’élaboration d’un tableau de bord personnel à la place du tableau de bord générale sont menées par Ryan. Ces modifications pourront être publiées dans WordPress 3.2 selon le planning.

7. Quelques corrections à prévoir sur l’API des custom post types.

8. Modification de l’interface de la gestion de thèmes par la version de WordPress.com. Cette dernière est plus efficace, plus légère, supporte la recherche, etc. C’est une étape indispensable pour les personnes ayant un WordPress MS avec beaucoup de thèmes.

9. Les templates de pages pour les articles. Afin de pouvoir supporter des modèles comme les pages)

10. La fonctionnalité QuickPress sera disponible à travers une fonction afin de pouvoir afficher facilement un formulaire sur le thème utilisateur.

Le planning

La date de publication ne devrait pas dépasser le 15 décembre pour ne pas interférer avec les vacances.

  • 9 septembre : Confirmation du planning
  • 15 octobre : feature freeze, pas de nouvelles fonctionnalités ajoutés dans le code
  • 1er novembre : primary code freeze, fin de grands changements dans le code PHP
  • 15 novembre :période de béta, plus d’amélioration, uniquement de la correction de bugs.
  • 1 décembre : string freeze, traduction !
  • 15 décembre : publication de WordPress 3.1

Présentation de VaultPress : La sécurité vue par Automattic

16 août 2010 § 3

Il y a quelque temps, Matt et Automattic ont annoncé le lancement de VaultPress, un plugin permettant de sécuriser une installation WordPress. On me demande régulièrement, la meilleure méthode pour sécuriser un site web fonctionnant avec WordPress, et ma réponse est la suivante : « Backup journalière des fichiers et de la base de données sur 2 points de stockage ». Et oui la meilleure sécurité, c’est la sauvegarde !

Alors, lorsque j’ai appris le lancement de VaultPress, je me suis dit dans un premier temps : chouette un plugin améliorant la sécurité de WordPress, mais après avoir lu et visionner la vidéo de présentation, j’ai compris qu’il ne s’agissait que d’un plugin de backup automatique des données, alors effectivement on peut se poser la question de l’intérêt de ce service pour les personnes ayant un serveur dédié, mais sur un mutualisé milieu/haut de gamme et/ou pour un blog sensible le service peut s’avérer intéressant.

J’ai donc décidé de postuler à l’inscription de la béta, une première fois pour mon blog perso, sans réussite. Et une seconde fois, pour le site WordPress Francophone, et bingo, 5 jours après je reçois la fameuse invitation permettant de s’inscrire au service !

Lors de l’inscription au service, on vous propose 3 niveaux de service, le basique qui comprend toutes les fonctionnalités de backup, le niveau premium qui offre du support technique en plus et enfin un niveau entreprise disponible après contact pour des services plus personnalisés, audit du code, etc. Le service basique est facturé 15$/mois, tandis que le service premium est facturé 40€/mois.

Dans le cadre de WordPress Francophone, j’ai choisi l’abonnement à 15$/mois afin de tester à moindre coût le service.

Le plugin

Une fois payé, on vous propose de télécharger une extension à installer sur le blog WordPress de votre choix. Une fois, le plugin installé et activé, un menu VaulPress apparait dans le menu de la console d’administration et permet de voir l’avancement de la sauvegarde du blog sur les serveurs de VaultPress.

Le backup se fait en arrière-plan, il n’est pas nécessaire de se connecter à WordPress ou de laisser une fenêtre du navigateur pour que le transfert se fasse. Le transfert initial est assez long, tout dépendra du nombre d’articles et de commentaires, mais surtout tout dépendra de la quantité de pièces jointes.

Dans le cadre de WordPress Francophone, j’ai activé le plugin le soir à 21h, le lendemain tous les fichiers avaient été synchronisés.

Une fois les fichiers complètement synchronisés, on peut observer un tableau de bord VaultPress qui nous affiche les informations principales, nombres d’articles, commentaires, termes, révisions, médias, etc. On peut également trouver le nombre de copies du blog. (ici 40)

Le service

Maintenant que nous avons passé en revue les pages du plugin sur l’admin WordPress, nous allons voir les fonctionnalités du site VaultPress.com. La page de connexion, bien que stylé VaultPress nous rappelle que WordPress n’est jamais très loin…

Pour se connecter à VaultPress, il faut posséder un compte WordPress.com, ce dernier vous sera demandé lors de l’inscription initiale, vous devez alors saisir vos identifiants WordPress.com.
Une fois connecté, on tombe sur un tableau de bord qui contient tous les sites protégés par VaultPress, ici il n’y a que WordPress Francophone.

Le statut affiche la dernière mise à jour de la base WordPress avec VaultPress, ici on peut voir qu’il s’agit du plugin du compteur de vues utilisées sur WordPress Francophones. Le menu propose de voir l’intégralité des backups de votre site, le log d’activité des sauvegardes ainsi qu’un formulaire de contact.

La page « Backups » nous propose de compacter, d’archiver et de télécharger l’ensemble des fichiers et la base de données de WordPress pour chaque backup réalisé. Ainsi, il est possible de télécharger n’importe quel backup de votre blog, l’intérêt majeur, c’est qu’en cas de pertes de données sur votre serveur, vous pouvez récupérer les fichiers à toutes les dates, et surtout les dernières données grâce à la synchronisation en temps réel.

La page « logs » retrace toutes les modifications apportées sur votre installation WordPress, ajout d’un article, d’un commentaire, d’un méta via un plugin, etc. bref tout est enregistré !

Conclusion

La conclusion est difficile. Le service est efficace et fonctionne très bien sur un serveur mutualisé comme Infomaniak. Pour les personnes possédant un dédié, un backup automatique et incrémentiel de la base de données et des fichiers sur 2 lieux de stockage me paraissent largement suffisant…

Alors, je ne sais pas trop… Pour qui ?

Les personnes ayant de « gros blogs » sont bien souvent sur des serveurs dédiés et/ou infogérés, dans un tel cas la backup serveur me parait suffisante…
Les personnes sur des hébergements mutualisés seront-elles prêtes à mettre de l’argent pour un service de backup ? Au prix proposé, on n’est pas loin d’un serveur virtualisé de base…

Mon avis est partagé sur l’intérêt d’un tel service… et vous ? pour qui ? quel contexte ?

Relation Post Types : Faire des relations entre les contenus de WordPress !

16 août 2010 § 6

Depuis WordPress 3.0, il est possible de créer facilement à la volée des types de contenus (en anglais : custom post types), et d’y coupler des taxonomies. On peut par exemple, créer des petites annonces, et ajouter des taxonomies comme la région, un ordre de prix, l’état du bien, etc.

Mais les taxonomies ne sont pas nécessairement suffisantes dans un usage pro pour monter un site avec de nombreuses relations. Parfois, on souhaite relier 2 types de contenu ensemble, par exemple sur un site contenant des petites annonces, on voudra avoir la possibilité de lier des articles d’actualités à des petites annonces. Ainsi, on pourra facilement afficher des blocs de contenus liés sur le thème.

Pour y parvenir, j’ai développé le plugin : Relation Post Types

Relation Post Types - Réglages

Ce dernier offre la possibilité de choisir dans la console d’administration quelles liaisons voulez vous mettre en place. Par exemple, si vous avez des petites annonces et des articles à relier, vous pouvez choisir d’afficher un bloc « articles » sur la page d’édition des petites annonces, et inversement vous pouvez afficher le bloc « petites annonces » sur la page d’édition des articles. Ainsi, vous pouvez créer des relations dans les 2 sens.

Boite de sélection dans la page de rédaction

On peut même pousser le bouchon le plus loin et créer des relations entre contenus d’un même type de données, par exemple relier une petite annonce à d’autres petites annonces. Cela peut être utile pour générer du contenu relatif, mais manuellement.

Le plugin est disponible en téléchargement sur WP.org, dans le référentiel de plugins. Le plugin est réservé à un public de développeur ou d’utilisateurs avertis, il n’existe pas de fonctions prêtes à l’emploi à utiliser dans le thème, il vous faudra coupler les fonctions du plugin et WP_Query.

N’hésitez pas à me contacter pour tout bug ou évolution allant dans le sens du plugin.

Advanced Edit Cforms : Et un petit plugin pour WordPress et Cforms !

7 février 2010 § 15

Cforms est réellement un plugin très bien pensé, avec un nombre de fonctionnalités impressionnantes, mais il possède 2 défauts à mes yeux…

Le premier, c’est qu’il ne se trouve pas dans le référentiel officiel des plugins, ce qui rend handicapantes les mises à jour et son installation. Son deuxième défaut, c’est les problèmes liés au déplacement d’un blog.

Dans de nombreux cas, on développe un blog WordPress avec une adresse de développement et lorsqu’on souhaite migrer, tout se passe bien sauf pour le plugin Cforms, pour 3 raisons :

  1. Il enregistre le chemin complet vers le plugin dans un fichier PHP
  2. Il enregistre l’adresse du blog dans un fichier JavaScript
  3. Il enregistre l’adresse du blog et de destination des fichiers dans une option de WordPress.

L’inconvénient est que lorsqu’on change d’adresse du blog, Cforms conserve les réglages du blog où il a été installé, chose très gênante, car cela implique la modification des 2 fichiers et un bidouillage dans la base de données pour corriger le plugin.

Pour me simplifier la vie, j’ai développé un petit plugin qui permet l’édition depuis la console d’administration de ces différentes informations. Le plugin se présente de la façon suivant :

Admin d'Advanced Cforms Edit

Le plugin est disponible sur le référentiel de WordPress.org et répond au doux nom de « Advanced Edit Cforms » (j’essaie d’être explicite !)

Publication de Simple Tags 1.7.4 pour WordPress 2.8, 2.9 !

31 janvier 2010 § 17

Petit article pour vous annoncer la sortie de Simple Tags 1.7.4 !

Cette nouvelle version est pleinement compatible avec WordPress 2.8 et 2.9. Elle n’est pas contre plus du tout compatible avec les versions antérieures, pour 2 raisons, alléger l’extension et ne pas faire semblant d’avoir des évolutions pour les anciennes versions de WordPress alors qu’en fait le code utilisé par les anciennes versions n’était plus mis à jour !

Cette version apporte quelques nouveautés dont :

  • Compatibilité à 100% avec l’API taxonomie de WP2.8/2.9
  • Utilisation de la nouvelle API des Widgets
  • Amélioration du code en vue d’avoir 0 notice PHP (à 99%)
  • Correction sur les méthodes de cache WordPress
  • Correction avec le bug de la fausse activation. (rien ne se passer)
  • Compatibilité à 100% avec PHP4
  • Ajout d’un sélecteur de taxonomie pour l’édition de masse (permets de catégoriser massivement)
  • Réaménagement de la page « Gestion des tags »
  • Nouveau script pour l’auto-complétion, utilisation de l’AJAX pour de meilleures performances
  • Correction d’un bug avec les articles très longs et la suggestion de tags de Yahoo/Tag The Net
  • Ajout de 3 connecteurs pour la suggestion : OpenCalais, Alchemy et Zemanta
  • Correction de l’importateur fourni avec l’extension
  • Externalisation du tableau d’options de l’admin pour diminuer la consommation mémoire

Certains d’entre vous ont remarqué que j’avais fermé le projet Google Code, c’est assez simple. L’outil est, je trouve, très mal foutu pour le chef du projet. Les visiteurs peuvent commenter toutes les pages, et les demandes de supports et retours arrivent de partout à la fois.

De plus, la gestion de tickets est difficile à gérer pour une seule personne, un trac est beaucoup plus lisible à ce niveau.

De ce fait, j’ai déplacé le support sur une installation redmine que j’utilise désormais pour publier mes extensions et mini-extensions pour WordPress.

Enfin, beaucoup de personnes m’ont attesté que la version 1.6.x de Simple Tags fonctionnait bien avec WordPress 2.8, et bien il se trouve que non. Elle fonctionnait à peu près, sur certaines installations déjà en place, rien d’apparent. Mais sur une installation from scratch, il y avait de nombreux problèmes, l’ajout des tags sur les pages ne fonctionnait pas par exemple, etc.

Drupal vs WordPress : Les modules de base

26 janvier 2010 § 19

De mon point de vue, l’une des grandes forces de Drupal est sa modularité. Je développe sous WordPress depuis bientôt 5 ans, et presque 30% des sites réalisés n’utilisent pas les articles de WordPress, mais uniquement les pages. Et je ne vous parle même pas du pourcentage de projets n’utilisant pas les commentaires…

Malheureusement, WordPress ne permet pas la désactivation des fonctionnalités non utilisées, c’est regrettable à plusieurs points. Le premier, c’est les performances, charger en mémoire des lignes de code non utilisé peut s’apparenter à un gâchis de ressources. Le deuxième point, c’est la présence de menus inutiles dans la console d’administration. Cet aspect peut être corrigé via des plugins permettant  la personnalisation la console d’administration, ces derniers proposent de choisir précisément les fonctionnalités que l’on souhaite afficher ou masquer.

Mais revenons à drupal…

Lorsque je discute avec des clients, des développeurs, on me dit, WordPress ce n’est pas vraiment un CMS, Drupal oui !

C’est vrai et faux, en fait techniquement parlant, ces 2 outils sont des CMS. WordPress est un CMS orienté gestion de contenu personnelle (plutôt blog), tandis que Drupal est un CMS « non orienté ». Autrement dit, Drupal est extrêmement générique et on le ressent bien à l’installation. (Comme l’on dit plusieurs blogueurs de la communauté WP, WordPress est beaucoup plus packagé que Drupal, plus « ready to use »).

Cette orientation, publication personnelle/blog, est donc à la fois la plus grande force et faiblesse de WordPress.

Force, car cela lui attire la sympathie d’un très grand nombre de webmestres, développeurs et surtout des utilisateurs. Faiblesse, car comme beaucoup d’outils de masse, on le considère à tort comme un outil d’entrée de gamme peu adapté au monde professionnel et à un usage CMS. Et pourtant…

J’ai installé un drupal en local, et j’ai comparé les modules par défaut de drupal avec ceux de WordPress. Vous trouverez dans un premier le tableau comparatif, puis mon analyse.

Module drupal Alternative WordPress Commentaire
Aggregator Plugin : WP-o-matic Ancien, mais plugin très complet
Blog Natif -
Blog API Natif -
Book Natif + Plugins Les pages de WordPress non ? Couplé à un plugin Séries ou une navigation bien pensée ;)
Color Natif + Thèmes Dans WordPress, le thème peut avoir une page d’administration.
C’est le cas du thème par défaut, il permet à l’utilisateur de modifier le schéma de couleur de certains thèmes.
Comment Natif Permets aux utilisateurs de commenter et de discuter le contenu publié.
Contact Plugins : Cforms Cforms, what else ?
Content
translation
Plugins Qtranslate, WP-ML, il y a pour tous les goûts…
Database logging Plugins Partiel, pas de plugin générique à ce niveau.
Forum Plugins ou bbPress bbPress se couple facilement à WordPress. La prochaine version devrait être encore plus intégrée à WordPress !
Help Natif Pas besoin d’aide pour utiliser WordPress ! ;)
Locale Natif -
Menu Plugins Par défaut, pas grand chose. (ça devrait changer dans WP 3.0), mais des plugins permettent cela
OpenID Plugins -
Path Natif Par défaut, les permaliens…
PHP filter Plugins -
Ping Natif -
Poll Plugin : WP-Polls -
Profile Plugin : BuddyPress Des profils, mais pas seulement…
Search Natif Sans compter les innombrables plugins à ce sujet
Statistics Plugins : Wassup, StatsPress -
Syslog Plugins Des plugins permettent des logs pour l’activité, d’autres pour le développement. Globalement ca existe.
Taxonomy Natif + Plugins L’API le supporte, les plugins apportent la couche utilisateur.
Throttle Pas vraiment À ma connaissance, aucun plugin ne permet de désactiver des fonctionnalités selon la charge. Cependant, les plugins de cache permettent ponctuellement d’alléger la charge serveur. Conclusion, pas vraiment ! mais pas très utile !
Tracker Natif + Plugins Les commentaires sont des contributions utilisateurs, sinon des plugins comme TDO Form permettent de créer des formulaires publics.
Trigger Natif Similaire aux actions/filtres de WordPresss
Update status Natif -
Upload Natif Depuis bien longtemps + La retouche d’image depuis WordPress 2.9

Comme vous pouvez le constater, mis à part 1-2 fonctionnalités mineures qui n’ont pas d’alternative complète sous WordPress, la totalité des fonctionnalités des modules intégrés dans Drupal possède une alternative ou plusieurs alternatives. Parfois nativement, parfois sous la forme de plugins de la communauté !

Lorsque la fonctionnalité est native, elle possède le même niveau de qualité que sa concurrente drupal. Lorsqu’il s’agit d’un plugin, c’est variable. Certains plugins de la communauté sont bien plus évolués que leurs concurrents par défaut de drupal (mais des plugins drupal peuvent équilibrer la balance), tandis que dans certains cas, c’est l’inverse.

Je conclurai en 3 points.

1. WordPress n’a rien à envier aux modules de base de Drupal. La communauté très active remplit parfaitement son rôle en réalisant des plugins de qualité similaire.

2. Le programme de plugins « officiel » de WordPress.org va permettre de constituer une base de plugins sûrs, vérifiés et mis à jour régulièrement. Ces plugins deviendront l’équivalent des modules de drupal.

3. Drupal possède une longueur d’avance concernant la possibilité de créer nativement des types de contenus à la volée. (je ne parle pas de CCK, mais des types de contenus), WordPress supporte depuis très longtemps ce genre d’ajout via des plugins, mais rien de  très propre. La version 3.0 ajoutera une API complète permettant d’ajouter autant de types de contenu que souhaité.

Dans un prochain article, je vous parlerai de Views/CCK et WordPress !

PS: J’ai sûrement oublié certaines fonctionnalités, je pense par exemple aux permissions, je me suis contenté des modules de base pour le moment, mais si vous voyez des fonctionnalités de bases qui n’existe pas dans WordPress, dites-le-moi, j’essaierai de trouver l’alternative si elle existe !

Correction rapide pour le bug de l’édition des mots clefs/catégories/termes dans WordPress Mu !

21 janvier 2010 § 0

Un bug assez connu de la communauté WordPress Mu subsiste lors de l'édition de mots clefs. Le bug se produit uniquement dans certaines situations et est amplifié lors que l'installation WordPress Mu vient d'une migration de WordPress.

En fait, le bug se caractérise par la perte des catégories/mots clefs ou bien une "confusion" dans la taxonomie de WordPress. Vous éditez un mot clef avec l'ID 199 et ce dernier disparait au profit de la catégorie avec l'ID 8.

Étrange n'est ce pas !

Pourtant en base de données rien n'est perdu, c'est juste que la fonctionnalité globale catégories de WordPress Mu fout le bordel dans la table term_taxonomy.

Pour éviter d'avoir ce problème à l'édition, je vous donne un correctif très rapide : créer un fichier fix-bug-cat.php dans le dossier mu-plugins de votre installation WordPress Mu.

Et insérez-y le code suivant :

<?php
remove_filter ( 'term_id_filter', 'global_terms' );
?>

En désactivant le filtre fautif, vous vous évitez ce bug ennuyant... Pour ceux que ça intéresse, j'ai créé un ticket sur le trac à ce sujet pour probablement une correction définitive d'ici WordPress 3.0 !

Utilisation originale de WordPress comme CMS : une documentation !

21 janvier 2010 § 8

WordPress peut tout faire… (enfin presque !)

À force de le dire, on me reproche de vendre mon produit, mais avouer quand même que WordPress peut être utilisé dans un nombre incalculable de situations… En fait, je ne vois qu’une situation courante où WordPress ne convient pas… l’e-commerce… Et ça n’est pas les extensions existantes qui me feront mentir… rien ne vaut à mon goût un couplage avec un outil dédié… comme Magento par exemple !

Mais revenons au sujet principal de cet article, jQuery, dont une partie des sites est développée en drupal, vient de mettre à jour sa documentation pour la sortie future de la version 1.4 !

Et pour faire la mise à jour de la documentation, l’équipe de jQuery a migré de l’outil MediaWiki vers WordPress en utilisant l’aspect CMS…

Ainsi, elle profite :

  • D’un référencement naturel de premier ordre
  • La possibilité d’avoir des contributions pour chaque page via les commentaires et akismet pour contrer le spam
  • Une rapidité d’affichage grâce à l’usage de WP-SuperCache
  • Une classification libre via les catégories et les mots clefs.

Comme d’habitude avec l’équipe jQuery, le résultat est très soigné, en particulier le moteur de recherche avec l’effet AJAX qui actualise en temps réel les résultats de la recherche !

Peut-être les prémices d’une migration entière des sites jQuery vers WordPress… L’avenir nous le dira !

Source : Dougal Campbell’s geek ramblings & jQuery14.com

Where Am I?

You are currently browsing the blog category at Here With Me.