TAG | plugins
During the last couple of days I installed some more WordPress plugins to see if they would have any positive effect on the traffic. I was mainly focussing on social media integration and cross linking.
Here’s the list of plugins I tested.
I work for a publishing company so I am concentrated on editor work flows a lot. With this in mind I implemented the gjPositionsPlugin. Using it you can easily compose a homepage from multiple design elements.
This is often used to display lists of articles, dossiers and other contents. But sometimes you want to override the headline or title of an article when it appears on a homepage. This makes sense for SEO reasons as this article then becomes much more interesting for Google.
This is now a build in feature!
For a while I’ve been toying with the idea to set up a fully automated continuous deployment process for my symfony plugins. You can think of continuous deployment as a continuous integration process with automated deployment.
I just didn’t come round to do it as I couldn’t find the time so far. But then I read this article by Toni Schneider about CD at wordpress.com and it got me hooked again.
So I thought lets write down what it takes for a start.
Usually the answer is a misconfiguration but sometimes of course they found one of the bugs I involuntarily put in the code.
In these cases I have to get down at the code level and try to fix it. This is how I usually do it.
Yesterday only two days after the previous release I uploaded sfImageTransformExtraPlugin version 1.0.12 to the symfony plugin page. Despite my efforts the optimisation for removing generated thumbnails whose original source was changed did still not meet the performance expectations.
But I had another idea which got rid of the expensive recursion of RecursiveDirectoryIterator and replaced it with something else entirely.
sfImageTransformExtraPlugin is an ORM independent symfony plugin which utilizes sfImageTransformPlugin to generate all sorts of thumbnails and perform other image manipulations. Instead of providing an API it allows you to configure each desired format in a configuration .yml file. This enables you to separate design and function and simplifies format changes. It also decouples the generation process from the uploading process which ensures a clean user experience with no hickups.
It’s been a little over three months now since sfImageTransformExtraPlugin saw the last release. Yesterday I fired up version 1.0.11 which solves a few problems around caching.
Today I am happy to announce that this plugin is now available in its first beta version!
Not only I managed to implement the basic idea of composing design and content elements on a canvas; by now the plugin became completely independent from your models and database structure!
For a while i am now working on a plugin to allow easy page composition. I wrote about the basic idea previously.
gjPositionsPlugin has seen quite some change since as it turned into a doctrine behaviour and symfony admin theme combination. Now the main thing left is some jQuery action to add usability.
Unfortunately the current structure does not allow easy collaboration as the plugin only defines functionalities that can be incorporated by your application. It does not work standalone. That’s why I had the idea of another plugin for demonstration purposes only. (more…)
To be honest I had little idea of what to write today. Fortunately I received an email from Benjamin (a.k.a. robo47) about my sfImageTransformExtraPlugin. He asked if there is any chance to retrieve the stable releases from GitHub as well as from the symfony website.
And he’s got a point. Many developers have switched to git by now while symfony (1.x) only provides subversion. So here are a few best practices for those symfony plugin developers who have switched their development to GitHub (like me). (more…)
Many of you will have been confronted with the symfony form sub-framework at some point. And when you had to work with model relations that were a tad more complicated that the examples from the documentation you will have experiences difficulties. I know I have. There are however three interesting plugins that can be of great help.