<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
><channel><title>Joe Song &#187; PHP</title> <atom:link href="http://joesong.com/tag/php-development/feed/" rel="self" type="application/rss+xml" /><link>http://joesong.com</link> <description>Development, music.</description> <lastBuildDate>Tue, 22 Jun 2010 04:37:09 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0</generator> <item><title>Overriding Drupal Login Form Messages via Localization</title><link>http://joesong.com/2010/03/overriding-drupal-login-form-messages-via-localization/</link> <comments>http://joesong.com/2010/03/overriding-drupal-login-form-messages-via-localization/#comments</comments> <pubDate>Fri, 19 Mar 2010 16:22:32 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Development]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[drupal]]></category> <category><![CDATA[drupal 6]]></category> <category><![CDATA[forms]]></category> <category><![CDATA[localization]]></category> <category><![CDATA[programming]]></category><guid
isPermaLink="false">http://joesong.com/?p=991</guid> <description><![CDATA[Altering form messages in Drupal via i10n.]]></description> <content:encoded><![CDATA[<h3>Sx</h3><p>We want something besides the default messaging for user forms in Drupal. They are still in English, but just custom to our application. Also, we don&#8217;t need to override all of them, just a few. And, we are using Drupal 6.</p><h3>Dx</h3><p>Drupal is set up to automatically translate form messaging. Using this mechanism, we can cleanly alter the messages to appear just as we would like them to appear. We create a custom language and set it as the default. We only make the few translations that we need and Drupal falls back on the default English for stuff we don&#8217;t translate.</p><p>To setup the custom language:</p><ol
class="default_list"><li>Make sure the Locale module is enabled and that you have permissions to use it (both to Administer Languages and for the Translate Interface)</li><li>Go to Site Configuration -&gt; Languages -&gt; Add Language</li><li>Open the Custom Language form</li><li>Fill in the form with something like:<br
/> Language code: en-MySite<br
/> Language name in English: MySite<br
/> Native language name: MySite<br
/> Path prefix: mysite (this is only a placeholder and won&#8217;t be needed later)<br
/> Language domain: [blank]<br
/> Direction: Left to right</li><li>Click the Add custom language</li><li>Go to Site Configuration -&gt; Languages and choose en-MySite as the default language, click Save Configuration</li></ol><p>To make the faux translations:</p><ol
class="default_list"><li>Go to Site Building -&gt; Translate Interface -&gt; Search</li><li>Search for a particular string by something it contains, say, &#8220;username&#8221;.</li><li>Find your string in the search results and click edit. Enter your translation and submit it.</li><li>Repeat for other strings as necessary.</li></ol><h3>Tx</h3><p>So, we end up with a clean faux translation of the default strings into your application-specific copy.</p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2010/03/overriding-drupal-login-form-messages-via-localization/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>BedlamTheatre.org</title><link>http://joesong.com/2010/02/bedlamtheatre-org/</link> <comments>http://joesong.com/2010/02/bedlamtheatre-org/#comments</comments> <pubDate>Tue, 02 Feb 2010 05:01:17 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Portfolio]]></category> <category><![CDATA[Development]]></category> <category><![CDATA[development lead]]></category> <category><![CDATA[minneapolis]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[wordpress]]></category><guid
isPermaLink="false">http://joesong.com/?p=677</guid> <description><![CDATA[The new site of the boldest theater in town.]]></description> <content:encoded><![CDATA[<p><a
href="http://joesong.com/wp-content/uploads/2010/02/bedlam.png"><img
class="alignright size-thumbnail wp-image-679" title="BedlamTheatre.org" src="http://joesong.com/wp-content/uploads/2010/02/bedlam-150x150.png" alt="" width="150" height="150" /></a><strong>The Site:</strong> The new site (version 2) for the boldest live theater in town.<br
/> <a
href="http://bedlamtheatre.org" target="_blank">http://bedlamtheatre.org</a></p><p><strong>The Client:</strong> Bedlam creates some of the most interesting and original theater in Minneapolis. They run their own production and, in addition, rent their space to other groups. This means they have a large number of events to keep track of and promote,  and they needed a site that could accommodate them all.</p><p><strong>My Role:</strong> Having designed, built and maintained their version 1 site, I was keenly aware of the workflow issues and front-end pros and cons that they were experiencing. I worked with them to find the new look and feel of the site and to expand the functionality. In the end, the new site was built on WordPress, with collaborative design and unique plugins.</p><p><strong>The Technology:</strong> One of the initial hurdles of this site was importing the existing years of data into WordPress, including media and event dates. I created a unique plugin for them called TheatreEvents and wrote a custom import script that inserted the new posts and attachments and populated the data. The plugin features direct hooking into the admin interface so that event data entry is in the same form as post entry.  On the front-end, the plugin allows for sorting by the event dates and custom week and month views. The plugin will be released publicly soon.</p><p><strong>The Highlights:</strong> Weekly calendar in the sidebar of most pages with Ajax navigation. <a
href="http://bedlamtheatre.org/2010/02/" target="_blank">Monthly calendar</a> of events.</p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2010/02/bedlamtheatre-org/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>MyChinet.com</title><link>http://joesong.com/2009/11/mychinet-com/</link> <comments>http://joesong.com/2009/11/mychinet-com/#comments</comments> <pubDate>Thu, 05 Nov 2009 20:00:44 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Portfolio]]></category> <category><![CDATA[codeigniter]]></category> <category><![CDATA[development lead]]></category> <category><![CDATA[javascript]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[progressive enhancement]]></category><guid
isPermaLink="false">http://joesong.com/?p=600</guid> <description><![CDATA[PHP and JavaScript development for the premium disposable tableware manufacturer, Chinet&#174;.]]></description> <content:encoded><![CDATA[<p><strong><a
href="http://joesong.com/wp-content/uploads/2009/11/mychinet.png"><img
class="alignright size-thumbnail wp-image-603" title="MyChinet.com" src="http://joesong.com/wp-content/uploads/2009/11/mychinet-150x150.png" alt="MyChinet.com" width="150" height="150" /></a>The Site:</strong> The site of the premium disposable tableware manufacturer.<br
/> <a
style="color: #000099; text-decoration: none; padding: 0px; margin: 0px;" href="http://mychinet.com" target="_blank">http://mychinet.com</a></p><p
style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;"><strong>The Client:</strong> Chinet wanted to revamp its site to drive sales of a product line that was deeper than most people knew. As part of a full campaign, OLSON designed, developed and promoted their new website.</p><p
style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;"><strong>My Role:</strong> Development lead of concentrated development group. Development planning and production.</p><p
style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;"><strong>The Technology:</strong> The client had an existing CMS which they wished to keep. The system had been hand-rolled by another agency. We were asked to work with the CMS, improve it where needed and rebuild the public-facing side using CodeIgniter PHP framework. The end product included an implementation of the Zend Lucene search library and smart data caching to reduce server load and speed load times.  The team developed inviting Flash features for the home page and Moments Calendar on the site. Also, the site used MooTools for JavaScript interactions. Finally, the site was built for progressive enhancement where the content is available without Flash or JavaScript and present for SEO.</p><p
style="margin-top: 0px; margin-right: 0px; margin-bottom: 1em; margin-left: 0px; padding: 0px;"><strong>The Highlights:</strong> <a
href="http://mychinet.com/club" target="_blank">Club Chinet</a> where visitors can save recipes and tips and sign up for the Chinet newsletter, <a
href="http://mychinet.com/moments" target="_blank">Moments Calendar</a> where visitors can find a reason to celebrate any day.</p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2009/11/mychinet-com/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Style.Target.com</title><link>http://joesong.com/2009/08/style-target-com/</link> <comments>http://joesong.com/2009/08/style-target-com/#comments</comments> <pubDate>Sat, 29 Aug 2009 01:25:18 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Portfolio]]></category> <category><![CDATA[Development]]></category> <category><![CDATA[OLSON]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[programming]]></category> <category><![CDATA[progressive enhancement]]></category> <category><![CDATA[wordpress]]></category><guid
isPermaLink="false">http://joesong.com/?p=614</guid> <description><![CDATA[Design-driven WordPress theme for Target's most stylish clothing and accessories.]]></description> <content:encoded><![CDATA[<p><a
href="http://joesong.com/wp-content/uploads/2010/01/style_target_com.png"><img
class="size-thumbnail wp-image-615 alignright" title="style_target_com" src="http://joesong.com/wp-content/uploads/2010/01/style_target_com-150x150.png" alt="Style.Target.com" width="150" height="150" /></a><strong>The Site:</strong> Flexible and stylish boutique for promotion of Target&#8217;s most stylish clothing and accessories. <br
/> <a
href="http://style.target.com" target="_blank">http://style.target.com</a></p><p><strong>The Client:</strong> Already well known for their design-on-a-dime offerings, Target needed a site to regularly update with new product announcements, features about their relationships with top designers and frugal fashion tips.</p><p><strong>My Role:</strong> Implementation of ongoing content and evolving design of blog. Each post has a slightly new feel that keeps the whole blog fresh.</p><p><strong>The Technology:</strong> The site is built on WordPress but uses custom short codes and fields. In this way, the project is able to keep WordPress&#8217; ease of use while using unique design features.</p><p><strong>The Highlights: </strong><a
href="http://style.target.com/?category_name=Designers">Designer&#8217;s directory</a> from which users can quickly access any designer&#8217;s Target collection. Integration of Target&#8217;s universal header and footer navigation, including seasonal updates, into the WordPress theme.</p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2009/08/style-target-com/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>LegalCurrent.com</title><link>http://joesong.com/2009/05/legalcurrent-com/</link> <comments>http://joesong.com/2009/05/legalcurrent-com/#comments</comments> <pubDate>Fri, 15 May 2009 02:09:20 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Portfolio]]></category> <category><![CDATA[Development]]></category> <category><![CDATA[development lead]]></category> <category><![CDATA[OLSON]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[wordpress]]></category><guid
isPermaLink="false">http://joesong.com/?p=623</guid> <description><![CDATA[Information about, commentary on and current events in the practice of law. Custom WordPress theme for Thomson Reuters.]]></description> <content:encoded><![CDATA[<p><a
href="http://joesong.com/wp-content/uploads/2010/01/legalcurrent_com.png"><img
class="size-thumbnail wp-image-624 alignright" title="legalcurrent_com" src="http://joesong.com/wp-content/uploads/2010/01/legalcurrent_com-150x150.png" alt="LegalCurrent.com" width="150" height="150" /></a><strong>The Site:</strong> Information about, commentary on and current events in the practice of law. A custom WordPress theme for Thomson Reuters.<br
/> <a
href="http://legalcurrent.com/">http://legalcurrent.com</a></p><p><strong>The Client:</strong> Thomson Reuters is the world’s leading source of intelligent information for businesses and professionals. They needed a blog to maintain contact and conversation with legal professionals.</p><p><strong>My Role: </strong>Development lead for custom WordPress theme.</p><p><strong>The Technology:</strong> The data is driven through a WordPress installation but the theme is setup to enable a number of special features. The site uses native category functionality to populate special areas of the site while keeping those specific categories out of the blog flow, e.g. Featured media and Headnote of the Day</p><p><strong>The Highlights:</strong> Custom design, unique widgets and features.</p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2009/05/legalcurrent-com/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Lee.com</title><link>http://joesong.com/2009/03/lee-com/</link> <comments>http://joesong.com/2009/03/lee-com/#comments</comments> <pubDate>Sun, 01 Mar 2009 19:18:20 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Portfolio]]></category> <category><![CDATA[html]]></category> <category><![CDATA[javascript]]></category> <category><![CDATA[OLSON]]></category> <category><![CDATA[PHP]]></category> <category><![CDATA[progressive enhancement]]></category><guid
isPermaLink="false">http://joesong.com/?p=589</guid> <description><![CDATA[HTML and JavaScript development for top jeans brand, Lee&#174;.]]></description> <content:encoded><![CDATA[<p><strong><a
href="http://joesong.com/wp-content/uploads/2009/11/lee.png"><img
class="alignright size-thumbnail wp-image-590" title="Lee.com" src="http://joesong.com/wp-content/uploads/2009/11/lee-150x150.png" alt="Lee.com" width="150" height="150" /></a>The Site:</strong> The home of Lee® Jeans and Apparel.<br
/> <a
href="http://lee.com" target="_blank">http://lee.com</a></p><p><strong>The Client:</strong> Lee is one of the top Jeans brands in the world. The new site was designed by OLSON for ease of use and style.</p><p><strong>My Role:</strong> HTML and JavaScript development during principal development in small group. PHP programming of prototype site for proof of concept which was handed over to third-party back-end developers. After launch, development lead for follow up and enhancements.</p><p><strong>The Technology:</strong> Dojo Toolkit for JavaScript, complete with custom builds and minification. Our team also provided Flash elements for featured messaging. Deep progressive enhancement; the site is completely usable and friendly with or without JavaScript, Flash or images.</p><p><strong>The Highlights:</strong> <a
href="http://www.lee.com/store/LEE_STORE_US/en_US/fitfinder/FitFinderLanding.html" target="_blank">Fit Finder</a>, <a
href="http://www.lee.com/store/LEE_STORE_US/en_US/category/men/jeans.html" target="_blank">asynchronous results filtering and pagination</a> built to work with IBM&#8217;s WebSphere technology.</p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2009/03/lee-com/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>StevenLang.net</title><link>http://joesong.com/2006/04/stevenlang-net/</link> <comments>http://joesong.com/2006/04/stevenlang-net/#comments</comments> <pubDate>Tue, 25 Apr 2006 01:52:22 +0000</pubDate> <dc:creator>josephsong</dc:creator> <category><![CDATA[Portfolio]]></category> <category><![CDATA[Development]]></category> <category><![CDATA[development lead]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[PHP]]></category><guid
isPermaLink="false">http://joesong.com/?p=619</guid> <description><![CDATA[Custom PHP CMS and artist-designed look and feel for renowned collagist and painter, Steven Lang.]]></description> <content:encoded><![CDATA[<p><a
href="http://joesong.com/wp-content/uploads/2010/01/stevenlang_net.png"><img
class="size-thumbnail wp-image-620 alignright" title="stevenlang_net" src="http://joesong.com/wp-content/uploads/2010/01/stevenlang_net-150x150.png" alt="StevenLang.net" width="150" height="150" /></a><strong>The Site:</strong> Online showcase for the work of renowned collagist and painter, Steven Lang.<br
/> <a
href="http://stevenlang.net">http://stevenlang.net</a></p><p><strong>The Client: </strong>Steven Lang needed a site to show his work and needed it to be congruent to his approach and style.</p><p><strong>My Role:</strong> Development of light-weight, custom CMS to allow the artist to easily update the site. Mr. Lang had a clear idea of how he wanted the site to look and act, and asked me to make the site a reality.</p><p><strong>The Technology:</strong> The site is built on PHP and MySQL. It features custom JavaScript for the gallery interactions and uses a few CSS tricks to keep the background&#8217;s ceiling and floor in place at almost any resolution.</p><p><strong>The Highlights:</strong> Implementation of the artist&#8217;s design vision, unique and JavaScript gallery interaction.</p><p><a
href="http://joesong.com/2006/04/The-new-Steven-Lang--dot-net-/">Also, here&#8217;s my original post about this generation of the site.</a></p> ]]></content:encoded> <wfw:commentRss>http://joesong.com/2006/04/stevenlang-net/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced) (user agent is rejected)

Served from: joesong.com @ 2010-07-31 09:43:43 -->