<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:admin="http://webns.net/mvcb/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:content="http://purl.org/rss/1.0/modules/content/">

    <channel>
    
    <title>brandnewbox.co.uk</title>
    <link>http://www.brandnewbox.co.uk/</link>
    <description></description>
    <dc:language>en</dc:language>
    <dc:creator>aweaver@brandnewbox.co.uk</dc:creator>
    <dc:rights>Copyright 2010</dc:rights>
    <dc:date>2010-05-15T15:38:28+00:00</dc:date>
    <admin:generatorAgent rdf:resource="http://www.pmachine.com/" />
    

    <item>
      <title>DataGrab launches</title>
      <link>http://brandnewbox.co.uk/logbook/article/datagrab_launches/</link>
      <description>Back in 2006 I released FeedGrab, soon followed by CSVGrab and XMLGrab. The 3 tools allowed various types of data to imported into ExpressionEngine sites.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, CSVGrab, DataGrab, FeedGrab, XMLGrab</dc:subject>
      <content:encoded><![CDATA[<p>Back in 2006 I released <a href="http://brandnewbox.co.uk/products/details/feedgrab/" title="FeedGrab">FeedGrab</a>, soon followed by <a href="http://brandnewbox.co.uk/products/details/csvgrab/" title="CSVGrab">CSVGrab</a> and <a href="http://brandnewbox.co.uk/products/details/xmlgrab/" title="XMLGrab">XMLGrab</a>. The 3 tools allowed various types of data to imported into <a href="http://www.expressionengine.com/index.php?affiliate=brandnewbox" title="ExpressionEngine">ExpressionEngine</a> sites.
</p> <p>The plugins were powerful, but not very user-friendly. I always had the intention of developing the plugins into a easier-to-use module, but the announcement of ExpressionEngine 2.0 put this on hold.</p>

<p>For EE2.0, I have merged the 3 plugins into a new system I have called <a href="http://brandnewbox.co.uk/products/details/datagrab/" title="DataGrab">DataGrab</a>.</p>

<ul>
<li><a href="http://brandnewbox.co.uk/products/details/datagrab/">DataGrab product page</a></li>
</ul>

<h3>Features</h3>

<p>DataGrab is:</p>

<ul>
<li><b>Easier to use</b> &#8212; No more complex plugin parameters. You can now use the wizard-style module to configure an import.</li>
<li><b>More powerful</b> &#8212; Many new features, including the ability to update entries.</li>
<li><b>More flexible</b> &#8212; You can now add &#8216;plugins&#8217; to import different types of data.</li>
</ul>

<h3>Pricing</h3>

<p>I have decided to charge a small fee of &#163;20 for this module. It possible that the price may change in the future, but I wanted to keep it as low as possible to reward early adopters.</p>

<h3>Why charge?</h3>

<p>For this module to be useful I will need to provide a high level of support. This will especially be the case at this early stage of release (from experience people have different expectations and requirements from an import system). </p>

<p>Selling add-ons is a side line to my business, so the cost of the add-on compared to the time required to support needs to add-up; it will also enable me to prioritise support</p>

<h3>Will there be a free version?</h3>

<p>Releasing FeedGrab, CSVGrab and XMLGrab for free allowed me give something back to the EE community - a community that I am in no doubt I have taken more from than I have given.</p>

<p>I&#8217;d like to continue to give something back especially for non-commercial and personal use. As yet, though, I have not figured the best way to do this. Some options include:</p>

<p>Reduced functionality - I am not keen to go down this route; it has always seemed unsatisfactory to artificially remove features from software.<br />
Request donations - this has not worked for me with previously and I&#8217;d prefer to avoid making the module &#8216;nag-ware&#8217;</p>

<p>I&#8217;d sincerely welcome any suggestions or comments.</p>

<h3>Available now</h3>

<ul>
<li><a href="http://brandnewbox.co.uk/products/details/datagrab/">DataGrab product page</a></li>
</ul>]]></content:encoded>
      <dc:date>2010-05-15T15:38:28+00:00</dc:date>
    </item>

    <item>
      <title>DataGrab: an introduction</title>
      <link>http://brandnewbox.co.uk/logbook/article/datagrab_an_introduction/</link>
      <description>A quick walk&#45;through showing how to import a simple CSV file into ExpressionEngine 2 using the DataGrab module</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, DataGrab</dc:subject>
      <content:encoded><![CDATA[<p>A quick walk-through showing how to import a simple CSV file into <a href="http://www.expressionengine.com/index.php?affiliate=brandnewbox">ExpressionEngine</a> 2 using the DataGrab module
</p> <h3>Prepare the CSV file</h3>

<p>
<img src="/images/DataGrab_an_introduction/media_1273161798072.png" width="560" height="91" alt="" />
</p><p>
CSV (&#8220;Comma-separeated values&#8221;:http://en.wikipedia.org/wiki/Comma-separated_values) files can created manually using a text editor, or is a common export format for many other applications, especially spreadsheets.</p>

<h3>Using DataGrab</h3>

<p>
<img src="/images/DataGrab_an_introduction/media_1273161828654.png" width="360" height="123" alt="" />
</p><p>
From the ExpressionEngine Control Panel, go to Add-Ons > Modules and choose the AJW DataGrab module.</p>

<p>DataGrab has the option to import different types of data. Choose CSV and click on &#8220;Create new import&#8221;</p>

<h3>Import Settings</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273161889959_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273161889959.png" width="580" height="419" alt="" /></a>
</p><p>
Choose which channel to import the data into, and then tell DataGrab about your file. If the first row of data contains titles and should not be imported select the checkbox.</p>

<h3>Check Settings</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273161980833_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273161980833.png" width="580" height="287" alt="" /></a>
</p><p>
The settings will be checked and a preview of the data file will be shown, displaying a summary of the columns of the CSV file. If anything is wrong, you can go back to the previous step and adjust the settings.</p>

<p>If things look correct, click on &#8220;Configure Import&#8221;.</p>

<h3>Configure Import 1</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162005553_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162005553.png" width="580" height="184" alt="" /></a>
</p><p>
The first stage is to choose which columns to use for the entry&#8217;s title and date. The columns from the CSV file will be displayed nin the pull-down menus to select from.</p>

<h3>Configure Import 2</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162028456_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162028456.png" width="580" height="288" alt="" /></a>
</p><p>
Then, we need to assign values to the chosen channel&#8217;s custom fields. Here, we&#8217;ve assigned 3 columns of the CSV file to custom fields.</p>

<h3>Configure Import 3</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162044944_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162044944.png" width="580" height="212" alt="" /></a>
</p><p>
We can add categories to each imported entry.</p>

<h3>Configure Import 4</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162066702_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162066702.png" width="580" height="213" alt="" /></a>
</p><p>
We can tell the module what to do if an entry already exists. This is especially useful if we want to periodically re-run the import. The best way to do this is to import a unique value into a custom field (we&#8217;ve called it GUID above). This unique value could be an id, a url specific to the entry, a stock control number, or just something as simple as the title.</p>

<p>If the module encounters a duplicate entry, we can tell it ignore it and not import it, or we can get it to check to see if anything has changed and updates the existing record.</p>

<p>Sometimes, we want to delete entries that are not in the current import file. By adding a timestamp we can see when a record was last updated. We can then delete older entires if desired.</p>

<h3>Configure Import 4</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162083118_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162083118.png" width="580" height="180" alt="" /></a>
</p><p>
Finally, we can specify the author of the entry and add a time offset if required.</p>

<h3>Importing</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162101238_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162101238.png" width="580" height="184" alt="" /></a>
</p><p>
Clicking &#8220;Do Import&#8221; will start the process and the results will be displayed.</p>

<h3>Save Import</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162118709_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162118709.png" width="580" height="222" alt="" /></a>
</p><p>
If we want to re-run the import at a kater date we can save it, giving it a title and description.</p>

<h3>Using a saved import</h3>

<p>
<a href="/images/DataGrab_an_introduction/media_1273162136964_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162136964.png" width="580" height="243" alt="" /></a>
</p><p>
Saved imports can be accessed from the module&#8217;s homepage and can be modified and run. Saved imports can also be run from outside the Control Panel using, for example, a cron job to automate the process.</p>

<p>
</p><p>
<a href="/images/DataGrab_an_introduction/media_1273162187426_lg.png" class="image" rel="lightbox"><img src="/images/DataGrab_an_introduction/media_1273162187426.png" width="580" height="113" alt="" /></a>
</p>

<p>
</p>]]></content:encoded>
      <dc:date>2010-05-08T10:13:41+00:00</dc:date>
    </item>

    <item>
      <title>DataGrab for EE2.0</title>
      <link>http://brandnewbox.co.uk/logbook/article/datagrab_for_ee2.0/</link>
      <description>For ExpressionEngine 2.0, I&#8217;ll be replacing FeedGrab, CSVGrab and XMLGrab, with a new, improved module called DataGrab.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, CSVGrab, DataGrab, FeedGrab, XMLGrab</dc:subject>
      <content:encoded><![CDATA[<p>For ExpressionEngine 2.0, I&#8217;ll be replacing FeedGrab, CSVGrab and XMLGrab, with a new, improved module called DataGrab. 
</p> <p>Despite having versions of the 3 plugins working, I&#8217;ve been holding off the release while the Datagrab module was developed. </p>

<p><a href="http://brandnewbox.co.uk/images/uploads/datagrab_full.gif" class="image" rel="lightbox" target="_blank"><img class="image" src="http://brandnewbox.co.uk/images/uploads/datagrab_580.gif" width="580" height="172" title="The DataGrab module front page" alt="Datagrab module" /></a></p>

<p>The new module will make importing data into ExpressionEngine:</p>

<p><strong>Easier</strong>. The old plugin format for configuring imports has been replaced by a GUI-driven module.</p>

<p><strong>More powerful</strong>. Subsequent runs of the import can now update values that have changed.</p>

<p><strong>More flexible</strong>. A new plug-in mechanism should make it easier to create new types of import from different types of data. For example, a plug-in to import data from another database is in development.</p>

<p>There are some extra features to add, and some known issues to fix, but if you would like to help test the module, .</p>

]]></content:encoded>
      <dc:date>2010-03-22T11:45:47+00:00</dc:date>
    </item>

    <item>
      <title>EE2.0 progress report</title>
      <link>http://brandnewbox.co.uk/logbook/article/ee2.0_progress_report/</link>
      <description>This week saw the public release ExpressionEngine 2.0 so it seems a good time to give an update on this site&#8217;s add&#45;ons.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, Client Downloads, CSVGrab, FeedGrab, Followers, Selected Items, XMLGrab</dc:subject>
      <content:encoded><![CDATA[<p>This week saw the public release ExpressionEngine 2.0 so it seems a good time to give an update on this site&#8217;s add-ons.
</p> <h3>Commercial add-ons</h3>

<p>Both <a href="http://brandnewbox.co.uk/products/details/followers/" title="Followers">Followers</a> and <a href="http://brandnewbox.co.uk/products/details/client_downloads/" title="Client Downloads">Client Downloads</a> will be ported to EE2.0 and upgrades will be free. Currently I don&#8217;t have a release date set for these two modules. </p>

<h3>Free add-ons</h3>

<p><a href="http://brandnewbox.co.uk/products/details/feedgrab/" title="FeedGrab">FeedGrab</a> and <a href="http://brandnewbox.co.uk/products/details/csvgrab/" title="CSVGrab">CSVGrab</a> are complete and are currently undergoing testing. I am hoping to finish <a href="http://brandnewbox.co.uk/products/details/xmlgrab/" title="XMLGrab">XMLGrab</a> next, and then these 3 plugins will be released together. These plugins will work the same as the EE1.6 versions, but I am considering re-developing these add-ons into a more user-friendly, <a href="http://en.wikipedia.org/wiki/Wizard_(software)">wizard</a>-driven module that will take the effort out of configuring the import parameters. I am also looking to release PurgeData at the same time.</p>

<p><a href="http://brandnewbox.co.uk/products/details/selected_items/" title="Selected Items">Selected Items</a> is working and will be released soon. Improvements in EE since it was first developed means it will now work in a slightly different, simpler way (which will be explained when launched).</p>

<p>I&#8217;ll aim to keep posting updates here, but please feel free to contact me if you have any questions.</p>

<p>
</p>]]></content:encoded>
      <dc:date>2009-12-05T10:47:37+00:00</dc:date>
    </item>

    <item>
      <title>Testers required for new Quiz module</title>
      <link>http://brandnewbox.co.uk/logbook/article/testers_required_for_new_quiz_module/</link>
      <description>I&#8217;m looking for a handful of ExpressionEngine users to help test a new Quiz add&#45;on.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, Quiz</dc:subject>
      <content:encoded><![CDATA[<p>I&#8217;m looking for a handful of ExpressionEngine users to help test a new Quiz add-on. 
</p> <p>More details:</p>

<ul>
<li><a href="http://brandnewbox.co.uk/docs/Quiz/">ExpressionEngine Quiz module</a></li>
</ul>

<p>Please <a href="http://brandnewbox.co.uk/v7/contact/">contact me</a> if you are interested.</p>

<p>&nbsp;</p>]]></content:encoded>
      <dc:date>2009-08-27T20:02:08+00:00</dc:date>
    </item>

    <item>
      <title>Support forums now available</title>
      <link>http://brandnewbox.co.uk/logbook/article/support_forums_now_available/</link>
      <description>Support for all the ExpressionEngine add&#45;ons from this site can now be requested in the new forum section.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons</dc:subject>
      <content:encoded><![CDATA[<p>Support for all the ExpressionEngine add-ons from this site can now be requested in the new forum section.
</p> <p>Link:</p>
<ul>
<li><a href="http://www.brandnewbox.co.uk/forums/">Forums</a></li>
</ul>]]></content:encoded>
      <dc:date>2009-08-11T14:37:52+00:00</dc:date>
    </item>

    <item>
      <title>ExpressionEngine 2.0 and add&#45;ons</title>
      <link>http://brandnewbox.co.uk/logbook/article/expressionengine_2.0_and_add&#45;ons/</link>
      <description>With ExpressionEngine version 2.0 now in beta the aim of this post is to set out the upgrade process for this site&#8217;s add&#45;ons.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons</dc:subject>
      <content:encoded><![CDATA[<p>With ExpressionEngine version 2.0 now in beta the aim of this post is to set out the upgrade process for this site&#8217;s add-ons.
</p> <p>EllisLab have made no secret that the <a title="What&#8217;s Taking So Long?!" href="http://expressionengine.com/index.php?affiliate=brandnewbox&amp;page=/blog/entry/whats_taking_so_long/">architectural changes in EE2.0</a> have made the upgrade a time-consuming task, and the same will be true for 3rd party add-ons.</p>

<p>I&#8217;ve been fortunate enough to have been given access to the <a title="Accepting ExpressionEngine 2.0 Developer Preview Applications" href="http://expressionengine.com/index.php?affiliate=brandnewbox&amp;page=/blog/entry/accepting_expressionengine_2.0_developer_preview_applications/">developer preview</a> and the current <a title="Today&#8217;s Update Brought to You By the Letter" href="http://expressionengine.com/index.php?affiliate=brandnewbox&amp;page=/blog/entry/todays_update_brought_to_you_by_the_letter/">beta release</a> of the next version of ExpressionEngine, so progress towards converting my add-ons has already started.</p>

<p>Of the add-ons available from this site, I intend to upgrade the following:</p>

<ul>
<li>Client Download</li>
<li>Followers</li>
<li>FeedGrab</li>
<li>CSVGrab</li>
<li>XMLGrab</li>
<li>Selected Items</li>
<li>PurgeData</li>
</ul>

<p>and I also hope to have 1 or 2 new add-ons ready to release by that time.</p>

<p>The upgrades to my commercial add-ons (currently Client Downloads and Followers) will be made available free of charge to those who have purchased the current version.</p>

<p>Please contact me if you have any questions.</p>

<p>&nbsp;</p>]]></content:encoded>
      <dc:date>2009-08-07T12:41:04+00:00</dc:date>
    </item>

    <item>
      <title>Featured on ExpressionEngine Techniques screencasts</title>
      <link>http://brandnewbox.co.uk/logbook/article/featured_on_expressionengine_techniques_screencasts/</link>
      <description>The FeedGrab and CSVGrab add&#45;ons are featured in the second screencast of Ryan Irelan&#8217;s ExpressionEngine Techniques series.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, CSVGrab, FeedGrab</dc:subject>
      <content:encoded><![CDATA[<p>The FeedGrab and CSVGrab add-ons are featured in the second screencast of Ryan Irelan&#8217;s <a href="http://www.pragprog.com/screencasts/v-rieet/expressionengine-techniques" title="ExpressionEngine Techniques">ExpressionEngine Techniques</a> series.
</p> <p>The ExpressionEngine Techniques series follows on from Ryan&#8217;s excellent <a href="http://pragprog.com/screencasts/v-riexp/building-a-dynamic-website-with-expressionengine" title="Building a Dynamic Website with ExpressionEngine">Building a Dynamic Website with ExpressionEngine</a> series, and aims to teach &#8220;the latest techniques the pros use to build full-featured websites with ExpressionEngine&#8221;.</p>

]]></content:encoded>
      <dc:date>2009-03-16T11:31:00+00:00</dc:date>
    </item>

    <item>
      <title>Selected items 1.4 released</title>
      <link>http://brandnewbox.co.uk/logbook/article/selected_items_1_4_released/</link>
      <description>A new version of the Selected items modules is now available.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, Selected Items</dc:subject>
      <content:encoded><![CDATA[<p>A new version of the Selected items modules is now available.
</p> <p>This release:</p>

<ul>
<li>should be more robust to different system configurations</li>
<li>allows entries to be ordered in the interface</li>
<li>improves the ability to add the module to a CP tab</li>
<li>tidies up the javascript and css (it now uses the <a href="http://www.ngenworks.com/software/ee/cp_jquery/" title="CP jQuery extension">CP jQuery extension</a>)</li>
</ul>

<p>Download from the <a href="http://brandnewbox.co.uk/products/details/selected_items/" title="Selected items">Selected items</a> product page.
</p>]]></content:encoded>
      <dc:date>2009-03-16T11:23:00+00:00</dc:date>
    </item>

    <item>
      <title>Followers module &#45; Part 3</title>
      <link>http://brandnewbox.co.uk/logbook/article/followers_module_part_3/</link>
      <description>Part 3 of this introduction to the Followers module for ExpressionEngine will show how to display a list of your friends&#8217; entries.</description>
      <dc:subject>ExpressionEngine, Add&#45;ons, Followers</dc:subject>
      <content:encoded><![CDATA[<p>Part 3 of this introduction to the <a href="/products/details/followers/" title="Followers module for ExpressionEngine">Followers module for ExpressionEngine</a> will show how to display a list of your friends&#8217; entries.</p>

 <p>The basic <code>&#123;exp:weblog:entries&#125;</code> tag allows you to use a <code>author_id=</code> parameter to <a href="http://expressionengine.com/?affiliate=brandnewbox&amp;page=/docs/modules/weblog/parameters.html#par_author_id" title="display all entries by a particular author">display all entries by a particular author</a>. Multiple authors can be selected by &#8216;pipe&#8217; separating their ids (eg, <code>author_id=&#8220;1|12|34&#8221;</code>.</p>

<p>The Followers module can output your list of friends in this format, like so:</p>

<div class="codeblock"><code><span style="color: #000000">
<span style="color: #0000BB">&#123;exp</span><span style="color: #007700">:</span><span style="color: #0000BB">ajw_followers</span><span style="color: #007700">:</span><span style="color: #0000BB">display&nbsp;show</span><span style="color: #007700">=</span><span style="color: #DD0000">"following"&nbsp;</span><span style="color: #0000BB">member_id</span><span style="color: #007700">=</span><span style="color: #DD0000">"&#123;segment_3&#125;"</span><span style="color: #0000BB">&#125;<br />&nbsp;&nbsp;&#123;if&nbsp;no_members&#125;</span><span style="color: #007700">-</span><span style="color: #0000BB">1&#123;</span><span style="color: #007700">/</span><span style="color: #0000BB">if&#125;<br />&nbsp;&nbsp;&#123;members&nbsp;backspace</span><span style="color: #007700">=</span><span style="color: #DD0000">"1"</span><span style="color: #0000BB">&#125;&#123;member_id&#125;</span><span style="color: #007700">|</span><span style="color: #0000BB">&#123;</span><span style="color: #007700">/</span><span style="color: #0000BB">members&#125;<br />&#123;</span><span style="color: #007700">/</span><span style="color: #0000BB">exp</span><span style="color: #007700">:</span><span style="color: #0000BB">ajw_followers</span><span style="color: #007700">:</span><span style="color: #0000BB">display&#125;&nbsp;</span>
</span>
</code></div>

<p>But, there is a problem with supplying this list of authors to the <code>&#123;exp:weblog:entries&#125;</code> tag, as ExpressionEngine runs the <code>&#123;exp:weblog:entries&#125;</code> before the <code>&#123;exp:ajw_followers:display&#125;</code> and so it does not get the list of authors that we want.</p>

<p>To get around this problem we can use an <a href="http://expressionengine.com/index.php?affiliate=brandnewbox&amp;page=/docs/templates/embedding_templates.html" title="embedded template">embedded template</a>.</p>

<h3>The Solution</h3>

<p>We put the basic code to display the list of our friends&#8217; entries in a separate template - called for this example <code>embed_articles_by_author</code></p>

<div class="codeblock"><code><span style="color: #000000">
<span style="color: #007700">&lt;</span><span style="color: #0000BB">h3</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">Friends&nbsp;articles</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">h3</span><span style="color: #007700">&gt;<br />&lt;</span><span style="color: #0000BB">ol</span><span style="color: #007700">&gt;<br /></span><span style="color: #0000BB">&#123;exp</span><span style="color: #007700">:</span><span style="color: #0000BB">weblog</span><span style="color: #007700">:</span><span style="color: #0000BB">entries&nbsp;weblog</span><span style="color: #007700">=</span><span style="color: #DD0000">"default_site"&nbsp;</span><span style="color: #0000BB">orderby</span><span style="color: #007700">=</span><span style="color: #DD0000">"date"&nbsp;</span><span style="color: #0000BB">sort</span><span style="color: #007700">=</span><span style="color: #DD0000">"desc"&nbsp;</span><span style="color: #0000BB">disable</span><span style="color: #007700">=</span><span style="color: #DD0000">"member_data|trackbacks"&nbsp;</span><span style="color: #0000BB">dynamic</span><span style="color: #007700">=</span><span style="color: #DD0000">"off"&nbsp;</span><span style="color: #0000BB">author_id</span><span style="color: #007700">=</span><span style="color: #DD0000">"&#123;embed:authors&#125;"</span><span style="color: #0000BB">&#125;<br />&#123;if&nbsp;no_results&#125;No&nbsp;articles&nbsp;by&nbsp;friends&#123;</span><span style="color: #007700">/</span><span style="color: #0000BB">if&#125;<br /></span><span style="color: #007700">&lt;</span><span style="color: #0000BB">li</span><span style="color: #007700">&gt;<br />&nbsp;&nbsp;&lt;</span><span style="color: #0000BB">a&nbsp;href</span><span style="color: #007700">=</span><span style="color: #DD0000">"&#123;title_permalink=home/index&#125;"</span><span style="color: #007700">&gt;</span><span style="color: #0000BB">&#123;title&#125;</span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">a</span><span style="color: #007700">&gt;&nbsp;</span><span style="color: #0000BB">by&nbsp;&#123;author&#125;&nbsp;on&nbsp;&#123;entry_date&nbsp;format</span><span style="color: #007700">=</span><span style="color: #DD0000">"%d/%m/%Y"</span><span style="color: #0000BB">&#125;<br /></span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">li</span><span style="color: #007700">&gt;<br /></span><span style="color: #0000BB">&#123;</span><span style="color: #007700">/</span><span style="color: #0000BB">exp</span><span style="color: #007700">:</span><span style="color: #0000BB">weblog</span><span style="color: #007700">:</span><span style="color: #0000BB">entries&#125;<br /></span><span style="color: #007700">&lt;/</span><span style="color: #0000BB">ol</span><span style="color: #007700">&gt;&nbsp;</span>
</span>
</code></div>

<p>Notice that the <code>author_id=</code> parameter now contains an <a href="http://expressionengine.com/index.php?affiliate=brandnewbox&amp;page=/docs/templates/embedding_templates.html" title="embed variable">embed variable</a>, <code>{embed:authors}</code>.</p>

<p>To display this list of friends&#8217; entries, we then need to call the embedded template with the list of authors.</p>

<div class="codeblock"><code><span style="color: #000000">
<span style="color: #0000BB">&#123;embed</span><span style="color: #007700">=</span><span style="color: #DD0000">"followers/embed_articles_by_author"&nbsp;</span><span style="color: #0000BB">authors</span><span style="color: #007700">=</span><span style="color: #DD0000">"&#123;exp:ajw_followers:display&nbsp;show="</span><span style="color: #0000BB">following</span><span style="color: #DD0000">"&nbsp;member_id="</span><span style="color: #0000BB">&#123;segment_3&#125;</span><span style="color: #DD0000">"&#125;&#123;if&nbsp;no_members&#125;-1&#123;/if&#125;&#123;members&nbsp;backspace="</span><span style="color: #0000BB">1</span><span style="color: #DD0000">"&#125;&#123;member_id&#125;|&#123;/members&#125;&#123;/exp:ajw_followers:display&#125;"</span><span style="color: #0000BB">&#125;&nbsp;</span>
</span>
</code></div>

<p>This is just a basic embedded template call but with the <code>&#123;exp:ajw_followers:display&#125;</code> tag being used to populate the <code>authors=</code> parameter. (For safety&#8217;s sake, all whitespace between tags has been removed, which makes it look more comlicated than it is.)</p>

<h3>Summary</h3>

<p>The Followers module allows you to create and manage friend relationships between members. These relationships can be used however you wish within ExpressionEngine. Using embedded templates allows you to get around any problems due to the order which templates are parsed.</p>

<h3>Related</h3>

<ul>
<li><a href="http://brandnewbox.co.uk/articles/details/introducing_the_followers_module_part_1/" title="Introduction to the Followers module - Part 1">Introduction to the Followers module - Part 1</a>, and <a href="http://brandnewbox.co.uk/articles/details/introducing_the_followers_module_part_2/" title="Part 2">Part 2</a></li>
<li><a href="http://brandnewbox.co.uk/products/details/followers/" title="Followers module for ExpressionEngine">Followers module for ExpressionEngine</a></li>
</ul>]]></content:encoded>
      <dc:date>2009-01-23T10:48:00+00:00</dc:date>
    </item>

    
    </channel>
</rss>