BuddyDrive 1.2.0

Publié le

par

Crédits Photo : dinner's served (bitches) by Pawel Loj, on Flickr

La version 1.2.0 introduit quelques nouvelles fonctionnalités… Mais surtout améliore la gestion du templating de BuddyDrive. Les évolutions apportées à Plupload par WordPress 3.9 ont été prises en compte et le plugin profite de quelques nouveautés de la version 2.0 de BuddyPress.

Cette nouvelle version a été une course contre la montre dont le top départ a été donné le 11 avril lorsque @kovshenin a publié son article « Plupload 2.x in WordPress 3.9 » dans le P2 de Make.WordPress.Org.

Ainsi le premier objectif de BuddyDrive 1.2.0 est de s’adapter aux changements intervenus pour le paramétrage de Plupload depuis la version 3.9 de notre moteur de sites préféré.

L’évolution requérant votre attention toute particulière

Si vous activerez pour la première fois BuddyDrive, vous pouvez « jumper » au chapitre suivant. Pour ceux d’entre vous qui vont mettre à jour une pécédente version du plugin, avant toute upgrade sauvage, je vous invite fortement à faire une sauvegarde de sécurité de votre base de données afin de pouvoir revenir plus facilement sur vos précédents settings en cas de difficultés. En effet, jusqu’à présent BuddyDrive était une extension « network only » : c’est à dire qu’à partir du moment où votre configuration était multisite, il n’était activable que sur l’intégralité du réseau.

A partir de la 1.2.0, BuddyDrive pourra toujours être activé sur le réseau, et en plus il sera possible de ne l’activer que sur un des sites du network. Mais attention pas n’importe où en fait! Il sera impératif de l’activer de la même façon qu’a été activé BuddyPress.

BuddyDrive s’assure que la configuration du site est conforme à celle qu’il attend avant de poursuivre son chargement.

Dans le cas contraire, un gentil message vous invitera à le faire. Autre point comme vous pouvez le constater sur la capture d’écran : BuddyDrive 1.2.0 nécessite à minima non seulement WordPress 3.9 mais aussi BuddyPress 2.0.

Ainsi, pour profiter de cette version : commencez par mettre à jour WordPress, puis BuddyPress avant de se lancer dans son activation/upgrade. English users: before upgrading, please read this forum post.

Ce changement me permet de résoudre les demandes de support au sujet des configurations particulières et de résoudre un bug lorsque BuddyPress n’est pas activé sur le réseau qui intervenait au moment de la sauvegarde des réglages de BuddyDrive.

Les évolutions qui se voient!

Imminence de la 3.9, j’ai dû temporairement remettre à plus tard certains de mes plans pour ce plugin, ainsi dans la rubrique « ça se voit », il y a pour l’instant peu à se mettre sous la dent!

Une liste déroulante pour changer l’ordre d’affichage des fichiers ou dossiers

Il y a d’abord cette liste déroulante qui vous permettra de classer vos fichiers selon leur nom ou leur dernière date de modification. Ensuite, je profite de la nouvelle interface de modération des profils BuddyPress de sa version 2.0 pour m’inviter dans sa metabox « stats » afin d’afficher le quota consommé par le membre.

Une information concernant le quota consommé est affichée dans le wp-admin/profile de l’utilisateur

La dernière évolution visible est un simple lien affiché dans l’explorateur BuddyDrive des groupes pour permettre au membre connecté de mieux comprendre que la gestion des fichiers ne se fait, pour l’instant, que depuis son explorateur BuddyDrive personnel. Je réponds ainsi à cette « feature request » du forum support du plugin.

Mon évolution expérimentale!

La gestion des templates d’un plugin BuddyPress a été énormément améliorée depuis sa version 1.7 grâce à son mécanisme « BP Theme Compat« . Ce qui fait que, la plupart du temps, un thème WordPress « normalement constitué » affichera correctement les contenus de BuddyPress et donc de BuddyDrive. Historiquement BuddyPress s’est également développé grâce au désormais « proche de la retraite » BP-Default.

Là aussi, BuddyDrive a toujours su gérer ce cas. En revanche, les difficultés commencent pour certains thèmes « spécialisés BuddyPress » et qui sont très souvent des premiums. La particularité de ces thèmes est qu’ils embarquent les fonctionnalités de BP-Default tout en leur apportant des évolutions quant au markup, au design… Du coup il est très difficile pour un créateur de plugins d’anticiper toutes ces créations (parfois très exotiques).

Au cours de la période de développement des nouvelles fonctionnalités de la version 2.0 de BuddyPress, j’ai bien entendu eu l’occasion d’apporter mes humbles contributions au projet, mais j’ai aussi participé à certains projets « annexes » comme celui, piloté par Tammie Lister et qui consiste à concevoir un nouveau template pack pour BuddyPress (j’en profite pour vous inviter à y contribuer!!), ou encore celui dont je suis à l’initiative au sujet de la gestion des « attachments » et enfin à un de ceux pilotés par Boone B. Gorges (cet homme est incroyable!!) et qui consiste à proposer un plugin « squelette » pour vous permettre de vous lancer dans la conception de plugins BuddyPress.

S’agissant de ce dernier plugin, j’ai notamment initié une classe particulière BuddyPress_Skeleton_Screens pour essayer de couvrir les 3 cas énoncés plus haut afin d’optimiser l’affichage des contenus dans le thème utilisé. BuddyDrive utilise une classe équivalente, et selon les tests (pour l’anecdote sur l’un des thèmes j’ai dû carrément désactiver le mode WP_DEBUG car mon écran était rempli de notice errors!) que j’ai réalisés auprès de 2 thèmes BuddyPress premiums : ça fonctionne 🙂 Alors 2 ne veut certainement pas dire tous, mais c’est encourageant car c’est toujours une déchirure d’avoir un message de support du type « Your plugin broke my theme! ». Et même si j’ai souvent envie de répondre « your theme broke my plugin! », je peux comprendre la frustration 😉

Les évolutions qui nécessitent que vous mettiez les mains dans le cambouis!

J’ai introduit un certain nombre de hooks qui vous permettent de personnaliser encore plus BuddyDrive. J’ai commencé avec le filtre buddydrive_global_css qui permet aux développeurs de thèmes de complètement remplacer la stylesheet du plugin. Ensuite depuis l’administration BuddyDrive, il est désormais possible d’ajouter un nouvelle colonne à la WP_List_Table.

Illustration de l’utilisation de quelques hooks de BuddyDrive

Voici ce que vous pouvez faire à l’aide de ce petit morceau de code que vous pouvez ajouter à votre bp-custom.php par exemple.

Avec le hook buddydrive_uploader_custom_fields, je réponds notamment à la demande qui m’avait été faite de pouvoir enrichir les fichiers uploadés de champs personnalisés.

Voilà! Donc en résumé : faites une sauvegarde de votre base de données, upgradez WordPress pour la version 3.9, upgradez BuddyPress pour la version 2.0 et seulement ensuite upgradez BuddyDrive 😉

28 réponses à “BuddyDrive 1.2.0”

  1. Avatar de Maria

    Hi!!! Great plugin but I can’t figure out how to change the language, could you help me? please

    1. Avatar de imath

      Hi thanks for your feedback. You need to create a po and mo file using poedit and the pot file you’ll find into the languages folder of the plugin.

  2. Avatar de kuek chun hian

    Why when i upload a file, and downloaded it, it show 0kb. Looks like there is no place to store the uploaded file.
    Is there a place where i need to configure where the uploaded file should store?
    Thanks.

    1. Avatar de imath

      There should be a buddydrive folder in wp-content/uploads

  3. Avatar de Ryan Dunn

    Hi! I am very happy with your plugin. While some of my users are experiencing issues, I don’t believe they are due to issues with BuddyDrive. In trying to determine whether php settings on my host are causing their errors, I was trying to see if BD adds a file size field to the db entries associated with each file and was a little astonsihed it wasn’t already there. I am unsure how to add a custom field to accomplish this task but could figure it out if necessary—is that the route to go or does it make sense to build in that functionality? I am also aware I could check the server directly to find this info, but thought it useful from within the site as well, so site members downloading files know what they’re getting into when they click a download link. Thank you!

    Best,
    Ryan Dunn
    aespop.com

  4. Avatar de Shiyi

    Hi, there.
    Thank you for the wonderful plugin, but I have a problem: It cannot show the file management icons in my personal file page when I switch my theme to MesoColumn. Your plugin works for some other themes . Could you give me some suggestions if I continue to use this theme?

    1. Avatar de imath

      Hi, i’ll test the theme in the next couple of days to see what’s going wrong. Thanks for your feedback.

      1. Avatar de Shiyi

        Thanks, imath.
        I really love your plugin and also that theme, and I wish to have both at hand. 🙂
        Mercie beaucoup.

        1. Avatar de imath

          Hi @Shiyi

          It’s a css issue, here’s a gist that explains how to fix it :
          https://gist.github.com/imath/a7e102004c4274c8fcb1

          Bonne journée 😉

          1. Avatar de Shiyi

            Merci imath,

            CSS, c’est très difficile pour mois, donc J’ai change mon theme. Oui, Je peut uploader les filles, mais maintenant  » Public files are not viewable on member’s BuddyDrive page ».

            Pouvez-vous visiter le page http://lingdaoli/buddydrive?

            Merci!

          2. Avatar de imath

            Je pense que le problème est lié aux caractères des noms de « files » (chinois). Il est difficile pour moi de reproduire, j’essaierai avec du copier coller.. Merci pour le feedback.

          3. Avatar de Shiyi

            Thanks for your reply, imath,
            I tried to change the name character (english now), but public files are not viewable on member’s BuddyDrive page. I really love your plugins, so could you help me out there?

            Merci et Bonne journée!

          4. Avatar de imath

            You can try to deactivate plugins one by one starting by « events manager » to see if there’s a conflict with BuddyDrive.

  5. Avatar de Joseph Segal (@joesegal)
    Joseph Segal (@joesegal)

    Great plugin thank you! I see there’s a « root » folder and I can create a new folder beneath that like « Joes Files » but then I can’t create other folders below that folder so it would look like /root/joesfiles/joes_finances for example and I could have /root/joesfiles/someotherfolder etc.

    Is there a way you can help me mod the code to be able to do this?

    Thank you!
    Joe

    1. Avatar de imath

      Hi Joseph,

      Thanks for your feedback. I’m sorry i miss time to help you 🙁
      I suggest you fork the plugin on github (https://github.com/imath/buddydrive).
      Folders is a custom post type which entries can be parents of the Files custom post type entries. I guess linking Folders would have a serious impact on a lot of the code. See the buddydrive-item-xxxx.php files.

      If i had time, i’ll deep in it as i know it’s a great and expected feature.

  6. Avatar de Matthew
    Matthew

    Great plugin! Best option for BuddyPress out there, imo. I have a few questions:

    Can you please add more sorting filters.?
    Can you please ad a search capability?
    Can I change the name that is listed in the group to something other than BuddyDrive? I would like it to just say Documents. You allow me to change the name in my profile area, why not for the group area?

    1. Avatar de imath

      Thanks for your feedback Matthew.

      1- What would be the new sorting filters ?
      2- Ahh search’s quite sensible as i need to be sure to respect files/folders privacy. I’ll see what i can do..
      3- « Top » nav follows the name of the component’s root page. Go into WordPress page administration, find the BuddyDrive page, then simply edit the title of this page. I advise you not to change the slug (end of permalink).

  7. Avatar de Adam Brisebois

    Is there any way to add more mime types? I specifically want users to be able to upload .epub and .lit files for un-copywrited books and manuals.

    I have no issue editing files on the back end if there is a place to add them quickly.

    1. Avatar de imath

      Yes you need to filter the allowed WordPress mime types as BuddyDrive is using it.

  8. Avatar de Antoni

    Bonjour,
    je viens d’installer BuddyDrive Version 1.2.1 sur un WordPress 4.0.1 (mono site) avec le thème Twenty Fourteen. La version de BuddyPress est 2.1.1.

    Lors de l’activation du plugin, et après un clic sur le lien « buddydrive » dans le profil d’un membre, la page BuddyDrive restait désespérément blanche (juste le titre en haut de page).

    Après avoir bien lu les articles de votre blog, sans succès, j’ai désactivé tous les plugins et Hooooo j’ai trouvé le petit casse pieds : NextGEN Gallery by Photocrati Version 2.0.66.33.
    Une fois désactivé tout est rentré dans l’ordre ! J’ai pu enfin découvrir votre plugin qui est simplement génial !!

    Avez-vous une idée pour rendre compatible BuddyDrive avec NextGEN Gallery ? Je me sert énormément de ce dernier et le désactiver m’enlève beaucoup de fonction de mon site.

    Encore Bravo !

    1. Avatar de imath

      Merci pour ton enthousiasme au sujet de BuddyDrive. C’est très difficile pour moi de travailler sur ce genre de difficulté avec d’autres plugins. J’imagine que nextgen est un plugin intéressant. Il me semble pourtant que ce plugin devrait limiter son périmètre aux attachments WordPress (posts et pages). Il est probable que le fond du problème se situe là.

      1. Avatar de Antoni

        Merci pour votre réponse,

        le problème vient de la redirection des liens avec nextgen activé : monsite.fr/admin/buddydrive et redirigé directement vers monsite.fr/buddydrive . Ceci me donne toujours une page blanche avec le titre en haut.
        Lors de la désactivation de nextgen, il n’y a plus de problème de redirection et tout fonctionne normalement.
        Je ne comprend pas vraiment pourquoi ce plugin interfère avec buddydrive dans la redirection des liens.

        Avez-vous une idée ?

  9. Avatar de Guillaume

    Hi Imath,
    Under the problem develop by one of teh guy working on our website :

    I took a look at the problem and it appears BuddyDrive doesn’t actually support sub-folders which is why you cannot create or move files to them – see this and this support article. Although surprisingly the author has developed the plugin in such a way that dynamically adding sub-folders and sub-files do show up – kudos to them.

    To get it working the way you require the core Buddydrive plugin would need to be modified to accomidate these sub-directories. Keep in mind if you went down this path you wouldn’t be able to update the BuddyDrive plugin without overriding the modified behaviour. Because of this I don’t recommend doing that because you won’t get any bug or security enhancements from updates.

    Can you help ?

    Regards
    Guillaume

    1. Avatar de imath

      Hi, what are exactly the needed modifications ? IMHO, best is to pull a request on the plugin’s git repo

  10. Avatar de sven

    Hello. I think your buddy drive absolutely great. if I can still see all buddy drive as instaliere page. and I can not änder when I click « Private » put the page. what should I do so that the page is invisible buddy drive ??

    1. Avatar de imath

      Thank you Sven, what is the meaning of änder and instaliere, i’m really sorry but i don’t understand 🙁

  11. Avatar de cannawebs

    Is there a shortcode that would all just a simple single file upload at registration? or a way I could make one?

    1. Avatar de imath

      Not to my knowledge, i guess everything is possible.