12 Jan
Posted by Mike as Personal / Home Life, Worklife at iStudio
Talk about starting the new year with a bang! Here are at iStudio, we are absolutely pumped to announce that we have joined with High Road Communications.
“We are thrilled to share that today, iStudio is joining High Road Communications. We are merging into one company, under the High Road Communications brand, bringing to reality a fully integrated communications agency, with best-in-class PR, social media and digital services.”
Source: istudio.ca
Read more about this announcement on iStudio’s blog, or check out a short video which gives more details on this announcement on the High Road web site’s home page.
On a personal level, I couldn’t be happier with this news as I think of all the exciting work and projects that will come as a result of this. This year – and the future – are truly going to rock!
Happy New Year – indeed!
07 Jan
Posted by Mike as CMS, Web Development, WordPress
In the days leading up to the Christmas break I was involved in creating a WPMU-powered WordPress blog for one of our clients. This was the first time we (iStudio) or I had used this product, so as you might expect there were a few growing pains that were encountered along the way. Since I spent so much time trying to fix them, I thought it would be a good idea to document a couple of the more annoying ones.
My common practice when creating a WordPress theme is to take the default one – Kubrick – and customize it to suit the requirements of the project it is for. All went well until I installed the multilingual plugin of choice, WPML. Not only did the language switching fail, but the page would go all 404 on me unless I inserted a trailing slash (‘/’) at the end of the URL. Hardly ideal.
The solution – and please don’t ask how I came to this because its not good memory – was to delete everything (except the junk about widgets at the top) in the function.php file. Once I did that, everything magically worked. I say magically becuase I really have no clue what was causing the error to occur within the functions.php file. As long as it works, that’s good enough for me.
This issue occurred with two or three plugins that I had to use for this project. The problem happened when making any customization to the plugin via the dashboard. For example, WP-Polls has a number of options that can be configured from the WordPress dashboard. However, when I went to save my changes, the form would kick me back to the main ‘parent’ blog of WPMU, and not the ‘child’ blog that I had been configuring the plugin on. This was actually an easy one to fix, but because of my bleary-eyed and brain-dead state it frustrated me over the course of a weekend (and no, I didn’t spend an entire weekend trying to fix it – just a few minutes at a time before I would quit and mutter a few ‘cheerful’ words).
I solved this problem by just changing the target URL of the form’s action attribute. In the cases where the plugin was failing, it was always due to the URL pointing to the main wp-admin folder, and not the actual wp-admin folder for the blog being customized. I updated the target and we had ourselves a winner.
13 Dec
Posted by Mike as Portfolio, Worklife at iStudio
Last last week the iStudio team launched a redesign of the Robertson Partners Web site.
Robertson Partners was founded by the Partners of Ottawa’s leading executive search firm,Odgers Berndtson. Three decades of experience in executive search has given us an informed perspective on what organizations are seeking in executive level job candidates, and how hiring decisions are ultimately made
As has been our practice for most of the year, the site was built on the Sitefinity CMS framework and we were able to accomplish all the required functionality with only minor customization of the existing controls.
13 Dec
Posted by Mike as Portfolio, Worklife at iStudio
During the early hours of Sunday morning, the Sun Life team launched a new redesign of their Sun Life Financial Canada home page, as well as redesign to their Careers and About us sections.
A good number of us at iStudio were involved in this project – from the design and templates to content restructuring – working closely with both the Business and ECS (technical) teams at Sun Life.
Among the new features that the sites boasts are:
30 Nov
Posted by Mike as Bugs, Quick Tips, Web Development
I came across a bug today with a RSS feed plugin we use for one of our WordPress-powered client sites. The bug is with Simple Feed List (v 1.4, by David Artiss), and occurs when the feed link supplied is either dead or unreachable. When either one of these two cases occur, the plugin fails and causes the rest of the page to stop executing. In other words, no error checking is in place to ensure that it fails gracefully.
Simple Feed List is a useful plugin that allows you to display news headlines (with a number of options) from an RSS feed.
The fix is simple enough – you simply need to add logic to the plugin to ensure that the link being opened is in fact valid and reachable. In the PHP file for the plugin, simple-feed-list.php, the following code block currently exists which handles the opening and reading of the URL (RSS link) that has been fed to it.
// Fetch in the contents of the XML file
$handle = fopen($feed_url,"rb");
$array = '';
while (!feof($handle)) {
$array .= fread($handle,8192);
}
fclose($handle);
// Check that the file is in RSS format
if ((strpos($array,"<rss")===false)&&($check_failure==0)) {
echo "<li style=\"color: #f00; font-weight: bold;\">Feed not available.</li>\n";
$check_failure=1;
}
Modify this by wrapping the code block above in an IF statement that verifies that the URL being opened was in fact successful; otherwise, return an error statement and return gracefully.
if ($check_failure==0) {
if(@ $handle = fopen($feed_url,"rb")) {
// Fetch in the contents of the XML file
$handle = fopen($feed_url,"rb");
$array = '';
while (!feof($handle)) {
$array .= fread($handle,8192);
}
fclose($handle);
// Check that the file is in RSS format
if ((strpos($array,"<rss")===false)&&($check_failure==0)) {
echo "<li style=\"color: #f00; font-weight: bold;\">Feed not available.</li>\n";
$check_failure=1;
}
} else {
echo "<li style=\"color: #f00; font-weight: bold;\">Feed not available.</li>\n";
$check_failure=1;
}
}
So there you have it, an easy fix for an otherwise nasty little bug that can otherwise cause a bit of mayhem (in our case it was one of the first plugins executed on the page, so when it failed it meant the rest of the page did not render!)