<?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>Bryan Williams &#187; Wordpress</title>
	<atom:link href="http://www.bryankwilliams.com/category/web-development/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bryankwilliams.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 18 May 2010 17:16:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Flutter: Major step in using Wordpress as a CMS</title>
		<link>http://www.bryankwilliams.com/flutter-major-step-in-using-wordpress-as-a-cms/</link>
		<comments>http://www.bryankwilliams.com/flutter-major-step-in-using-wordpress-as-a-cms/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 22:58:32 +0000</pubDate>
		<dc:creator>Bryan</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.bryankwilliams.com/?p=388</guid>
		<description><![CDATA[
It&#8217;s no secret that Wordpress is being adapted to go well beyond its traditional blog functionality. In my free time I&#8217;ve been doing a lot with WP and in most cases it becomes a content management system. But for a site that isn&#8217;t a blog it&#8217;s kind of like fitting a square peg in a [...]]]></description>
			<content:encoded><![CDATA[<p><img src='http://www.bryankwilliams.com/wp-content/plugins/simple-post-thumbnails/timthumb.php?src=/wp-content/thumbnails/388.jpg&amp;w=275&amp;h=205&amp;zc=1&amp;ft=jpg' alt='post thumbnail' /></p>
<p>It&#8217;s no secret that Wordpress is being adapted to go well beyond its traditional blog functionality. In my free time I&#8217;ve been doing a lot with WP and in most cases it becomes a content management system. But for a site that isn&#8217;t a blog it&#8217;s kind of like fitting a square peg in a round hole. Pages aren&#8217;t quite pages, posts turn into special pages, tags and categories are adapted for organizing and showing data, widgets are modified to make universal yet flexible pieces on the site, and the whole thing you have to kind of &#8220;get used to&#8221;. Plugins help expand the functionality and I&#8217;ve recently started playing around with <a href="http://flutter.freshout.us/" target="_blank">Flutter</a>, which is proving itself to be very a powerful step in using Wordpress as a content management system.</p>
<p><span id="more-388"></span></p>
<p>I was so excited after I learned how to use custom fields in Wordpress. It gave me the chance to break up the data that a user would put into their post and place it in different portions on the web page. It did the trick, but there were issues. The data was sometimes different. In one field it would be a little text, in others it would be an image link, sometimes it was even more important than the post itself. Plus it was difficult to explain to the user or client what each custom field did and explain to them they had to make sure to set and each one. Flutter leverages the custom field options in Wordpress, but takes it to a whole new level, finally making it very clear what each field is used for, with clear labels and structure on the admin side.</p>
<div class="simplePullQuote">I first read about the plugin about 6 months ago but didn't have the time or experience with programming to really get into it, until today. Today I used it on a project for the very first time and I have to say, I wish I would have started using it 6 months ago.</div>
<p>Flutter changes the idea of posts and pages in Wordpress. With the Flutter Plugin you can create a template type for any type of data you want. Maybe you don&#8217;t add posts on your page, but you add information on Events or Reviews, maybe you have specific pages with completely different layouts and type of data. With Flutter you create what&#8217;s called a Panel. You can add custom data fields and types to that panel to create your very own template for the kind of data you wish your user to add. It then becomes a new option on your admin menu, just like a post or page, but the write/edit template is completely custom. In the settings menu you can even turn off posts and pages completely if you&#8217;re not going to use them at all.</p>
<p>I first read about the plugin about 6 months ago but didn&#8217;t have the time or experience with programming to really get into it, until today. Today I used it on a project for the very first time and I have to say, I wish I would have started using it 6 months ago.</p>
<h3>Displaying a Single Variable or Image in your Theme</h3>
<p>The plugin does require some coding work. Like using custom fields, you need to manually add the placeholders to your theme. Luckily it&#8217;s done pretty easy. Hear is some example of how to include the custom data into your theme:</p>
<pre>
<code>  &lt;? echo get('variable_name'); ?&gt;
  &lt;? echo get_image('variable_name'); ?&gt;</code>
</pre>
<p>It depends some on what kind of fields you get setup, and of course it can get a lot more complicated depending on what you want to accomplish. Here is a screenshot of just one part of the template that I created for a friend&#8217;s site:</p>
<p><a href="http://www.bryankwilliams.com/wp-content/uploads/flutter.png"><img src="http://www.bryankwilliams.com/wp-content/uploads/flutter.png" alt="" title="flutter" width="763" class="aligncenter size-full wp-image-389" style="float:none; text-align:center; margin:auto;" /></a></p>
<h3>Displaying a Duplicate Fields in your Theme</h3>
<p>There are some downsides to this plugin that I discovered quickly after I began to use it. First is that there is not a lot of documentation. The website has enough basics to get you started, but there is not a lot of resources when it comes to looking for help with specific things. For example there is a really neat feature that allows the user to duplicate fields. Say for instance you have a custom template to enter for Teams and you want to have a field where a user can add Team Members. It&#8217;s a simple text field and Flutter is set up to allow the user to add more fields. It gets a little complicated on the display side, because you have to have the logic to find out how many fields have been created and to pull in each one. Luckily I wasn&#8217;t the only one with this problem and found a solution to it in the comments on a post at <a href="http://www.doc4design.com/articles/flutter-duplicate-fields/" target="_blank">doc4design.com</a>. I wanted to pass that along, as it is kind of a big issue. The code that I found works best is:</p>
<pre>
<code>  &lt;?php
    $total = getFieldDuplicates('variable_name',1);
     for($i = 1; $i &lt; $total+1; $i++){ echo "&lt;li&gt;" .get('variable_name',1,$i). "&lt;/li&gt;";
   }?&gt;</code>
</pre>
<p>This code needs to be run within the loop and of course swap out variable_name to whatever yours is. Something little like that can be super frustrating if you&#8217;re new to php like I am. </p>
<p>There are more disadvantages, it&#8217;s buggy. While inspecting the code that it places into the admin menus, there are a lot of tags unclosed or added in a funky way. It&#8217;s difficult sometimes to manage the Panels and it&#8217;s a little unclear the differences between a Panel, Module, or Template Option. I&#8217;ve heard the bugs get worse when you get into Edit-in-Place. That&#8217;s another feature I want to get into. I&#8217;ll be sure to blog more about it when I get into it. That will add a new layer of tools to the pages themselves to edit content, no longer requiring users to go into the admin tools just to change text. That I think will be even a bigger move to a true CMS. </p>
<p>So it has some bugs, but it does help change WP to fit that CMS role that so many of us are using it as anyway. If you have any experience with Flutter or questions please share them in the comments below. I&#8217;d love to hear from you.</p>
<p>UPDATE:</p>
<p>Just wanted to share some more of the fun stuff I&#8217;ve learned with Flutter since I wrote the last post. </p>
<h3>Displaying Duplicate Groups of Fields in your Theme</h3>
<p>In my original post I described how to show single data, even duplicated fields. But I didn&#8217;t at the time know how to setup duplicate groups of fields. I found out it&#8217;s actually almost identical to multiple fields. All you need to do is first call on one variable in the group and get how many duplicates there are (just like a duplicated fields) but in the loop go ahead and include the code to return the values of the other variables in the group and there you. </p>
<pre>
<code>          &lt;?php $total = getGroupDuplicates('variable_name');?&gt;
          &lt;?php for($i = 1; $i &lt; $total+1; $i++):?&gt;
              echo "&lt;li&gt;" .get('variable_one',$i,1). "&lt;/li&gt;";
              echo "&lt;li&gt;" .get('variable_two',$i,1). "&lt;/li&gt;";
              echo "&lt;li&gt;" .get('variable_three',$i,1). "&lt;/li&gt;";
          &lt;?php endfor;?&gt; </code>
</pre>
<h3>Flutter Alternatives</h3>
<p>I discovered in working with Flutter that there are actual a couple different branches of the project. One popular alternative, based on the same original code is a plugin called Magic Fields. It works exactly the same way as Flutter and the code that I&#8217;ve provided works the same for both. Magic Fields however has stripped out a lot of the typically unused features of Flutter, making the plugin overall a lot more simple to use and less weight on your application. Another benefit to Magic Fields is currently their community is more active than Flutter, making it easier to find information on the plugin, how it works, and what you can do with it. Checkout <a href="http://magicfields.org/" target="_blank">magicfields.org</a> for more info. I&#8217;ve personally made the switch from Flutter to Magic Fields for the reasons stated above.</p>
<p>I&#8217;ve done a lot with Magic Fields/Flutter these past couple months. It&#8217;s become a pretty crucial tool in taking Wordpress development to the next level. Especially when using it as a content management system. Of course a lot of the functionality that this plugin offers can be done manually with adding custom codes and functions to a theme, I&#8217;d rather let the plugin do most of the heavy lifting and just leaving the only work to be done setting up the fields and putting the placeholders in the theme. </p>
<p class="digg"><a rel="nofollow" href="http://digg.com/submit?phase=2&url=http://www.bryankwilliams.com/flutter-major-step-in-using-wordpress-as-a-cms/&title=Flutter: Major step in using Wordpress as a CMS" target="_blank" title="Share on digg">Share on digg</a></p>]]></content:encoded>
			<wfw:commentRss>http://www.bryankwilliams.com/flutter-major-step-in-using-wordpress-as-a-cms/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>
