<?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>Conceptric &#187; drupal</title>
	<atom:link href="http://www.conceptric.co.uk/tag/drupal/feed" rel="self" type="application/rss+xml" />
	<link>http://www.conceptric.co.uk</link>
	<description>Ideas and Applications</description>
	<lastBuildDate>Sat, 31 Jul 2010 20:30:17 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Drupal revisited</title>
		<link>http://www.conceptric.co.uk/drupal-revisited.htm</link>
		<comments>http://www.conceptric.co.uk/drupal-revisited.htm#comments</comments>
		<pubDate>Thu, 24 Apr 2008 13:46:29 +0000</pubDate>
		<dc:creator>James Whinfrey</dc:creator>
				<category><![CDATA[Everything]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[club]]></category>
		<category><![CDATA[content management system]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[web development]]></category>
		<category><![CDATA[writemaps]]></category>

		<guid isPermaLink="false">http://www.jameswhinfrey.co.uk/?p=58</guid>
		<description><![CDATA[Four months on and it's time to review progress on the <a href="http://northamptonshirebirdclub.org.uk/">Northamptonshire Bird Club</a> website. Is Drupal working out the way I hoped?]]></description>
			<content:encoded><![CDATA[<p>OK&#8230; as I mentioned in my <a href="http://www.jameswhinfrey.co.uk/using-drupal.htm">previous article</a>, I&#8217;d had a change of heart on the approach for the <a href="http://northamptonshirebirdclub.org.uk/">Northamptonshire Bird Club</a> website.</p>
<h3>Redefining the Architecture.</h3>
<p>I decided to start again by defining the information architecture for the site based on a proper discussion with the Club committee. The first few meetings on this topic just weren&#8217;t as well focused as they should have been; mostly my fault for not knowing what I wanted from them; but this time I tried targeting those features that the membership would really value. Each of the features that emerged seemed to fall into logical sections of the information architecture:</p>
<ul>
<li>About the Club &#8212; including notices, events and membership contacts.</li>
<li>Content on Birding &#8212; after all it&#8217;s the main focus of the Club.</li>
<li>Social groups within the Club divided by specific interest.</li>
</ul>
<p>These overall sections were used as containers for the more specific features, and these formed the basis for implementation.</p>
<p>I&#8217;ve tried an online tool called <a href="http://writemaps.com/">WriteMaps</a> for developing and sharing the architecture of this site. I haven&#8217;t decided whether it&#8217;s the best way to approach the job yet, but here&#8217;s <a href="http://writemaps.com/sitemaps/shareMap/3b3c848ehee80w3zgak2n5e4wi9m7vblx2ma8n6fmemi1orinj">the link to the detailed sitemap</a>.</p>
<h3>Implementing the Design.</h3>
<p>The original site used custom taxonomy &#8212; tagging &#8212; to enforce the architecture, with multiple sections of the site sharing the same content types. As I mentioned, this made it very confusing for the Club editors, which was reflected in the site presentation.</p>
<h4>Installing new modules.</h4>
<p>I needed to add several new modules to support the new content. There are several ways of doing this; this alone is a substantial topic; but the simplest is to download the module directory containing the code into the modules directory of your Drupal installation.</p>
<h4>Content types.</h4>
<p>For this redesign I decided that each of the features should have a dedicated content type so that users only need select the right one, there&#8217;s help text as you can see, and it&#8217;ll end up in the right place on the website. No more messing about with tags!</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/the-content-types.jpg" title="The new content types" alt="The new create content menu" width="400" height="450" /></div>
<p>A great tool for this is the <a href="http://drupal.org/project/cck">Content Construction Kit (<abbr title="Content Construction Kit">CCK</abbr>)</a> module. It makes implementing new content types very easy; no PHP required; and there are a wide range of modules that provide additional data fields. I&#8217;ve used several to provide dates, images and even GoogleMaps, take a look at <a href="http://drupal.org/project/Modules/category/88">the full list of compatible modules</a> on the Drupal website.</p>
<p>Once the CCK module is installed, all the changes you want to make can be managed from the <em>Content types</em> section of <em>Content Management</em>.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/content-type-management.jpg" title="Content type management" alt="The content type management menu" width="400" height="396" /></div>
<h4>Providing access.</h4>
<p>All these new content types need to have access control set&#8211;up before you can go any further. This is done in <em>Access control</em>, under <em>User Management</em>  in the administration section of Drupal.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/user-management-menu.jpg" title="User management menu" alt="The user management menu" width="400" height="252" /></div>
<p>You should find both create and edit options to set under <em>node module</em> for the new content types.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/node-access-control.jpg" title="Node access control" alt="The node access control options" width="400" height="162" /></div>
<p>Once these are set the content types should appear on the appropriate <em>create content</em> menus.</p>
<h4>Setting up the paths.</h4>
<p>But you&#8217;ll want to set the <abbr title="Uniform Resource Locator">URL</abbr>s to reflect the new architecture before deploying.</p>
<p>I use <a href="http://drupal.org/project/pathauto">Pathauto</a> to provide aliases for my content that better reflect the structure of the website and present friendly URLs. You can do this manually, but if you can&#8217;t rely on your users to do this consistently I would recommend using Pathauto.</p>
<p>The <em>Pathauto</em> settings are under <em>Site Configuration</em>, and it&#8217;s the Node paths you want to set&#8211;up for your new content.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/pathauto-overview.jpg" title="Pathauto overview" alt="Overview of the options for the Pathauto module" width="400" height="234" /></div>
<p>These, combined with the individual content types, provide the structure for the website. For example I wanted the bird guide to appear within the birding section of the site architecture with individual entries beneath this, so I set the pattern to <cite title="Pathauto pattern for the bird guide">birding/birdguide/[title].htm</cite>.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/some-node-path-settings.jpg" title="Node path settings" alt="Examples of node path settings" width="400" height="198" /></div>
<h4>Time for a View.</h4>
<p>The Views module provides the ability to present node data in a range of different formats. With the module installed your views can be managed from the <em>Administer views</em> section found under <em>Site building</em>.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/the-views.jpg" title="Administering Views" alt="Example of the Views administration options" width="400" height="270" /></div>
<p>Here you can define new views for each of the content types and define a URL from which the specific view can be accessed in the browser. In the image above you can seen that I wanted the bird guide list to appear as the default in the bird guide, and gave it the URL <cite title="Views URL for the bird guide">birding/birdguide</cite>. These views can generate lists, tables and customised sorting, in addition to the more standard web page presentations.</p>
<h4>&#8230;And a menu.</h4>
<p>Finally we&#8217;re going to want a menu from which all our good work can be accessed. The menus and blocks in Drupal can all be found in the <em>Site building</em> section.</p>
<p>The sequence is simple, first create a new menu for the features you&#8217;ve implemented, under the <em>Menus</em> section, using the URLs of the views;</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/the-birding-menu.jpg" title="The birding menu" alt="Example of the birding section menu" width="400" height="216" /></div>
<p>and then go to the <em>Blocks</em> section and put the new menu where you want it to appear on the website.</p>
<div style="text-align:center;"><img src="http://www.jameswhinfrey.co.uk/wp-content/uploads/blocks-in-the-left-sidebar.jpg" title="Defining blocks" alt="Placing the menus in left sidebar on the website" width="400" height="162" /></div>
<p>That should be it! Your new functionality has been added.</p>
<h3>Conclusions?</h3>
<p>Having established this workflow, I implemented each of the identified features one at a time, ensuring it was working and acceptable before moving on to the next.</p>
<p>I believe, and feedback suggests my users agree, that this approach to building a Drupal website is far more successful than a taxonomy based one. I still use taxonomy, but it now provides addition information for particular types of content rather than forming the basis for site architecture.</p>
<p>As for Drupal itself, it&#8217;s relatively easy to use, even without significant PHP knowledge, and the large community provides a huge range of contributed modules and support. This makes it a powerful way to develop feature rich, multi&#8211;user websites very quickly.</p>
<p>On the downside, I&#8217;ve found providing users with an easy way to upload and insert images very difficult. There are serious problems with using the popular <a href="http://drupal.org/project/tinymce">TinyMCE</a> <abbr title="What You See Is What You Get">WYSIWYG</abbr> editor and <a href="http://drupal.org/project/imce">IMCE</a> file handling together; individually they work OK, but together&#8230; I need to look at this again.</p>
<p>I would definitely recommend trying <a href="http://drupal.org/">Drupal</a> out if you need a <abbr title="Content Management System">CMS</abbr>, for an image rich website; such as a gallery; I&#8217;d try <a href="http://www.flickr.com/">Flickr</a> or, for ultimate control, hand coded <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.conceptric.co.uk/drupal-revisited.htm/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Drupal</title>
		<link>http://www.conceptric.co.uk/using-drupal.htm</link>
		<comments>http://www.conceptric.co.uk/using-drupal.htm#comments</comments>
		<pubDate>Mon, 03 Dec 2007 17:02:49 +0000</pubDate>
		<dc:creator>James Whinfrey</dc:creator>
				<category><![CDATA[Everything]]></category>
		<category><![CDATA[Posts]]></category>
		<category><![CDATA[Software Engineering]]></category>
		<category><![CDATA[content management system]]></category>
		<category><![CDATA[drupal]]></category>
		<category><![CDATA[web development]]></category>

		<guid isPermaLink="false">http://www.jameswhinfrey.co.uk/using-drupal.htm</guid>
		<description><![CDATA[I&#8217;ve been working on a website for the Northamptonshire Bird Club which nominated committee members could easily manage themselves. I decided that a Content Management System would be be best way to achieve this, and being a fan of open source I finally settled on Drupal. I liked the modular approach to the software and [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working on a website for the <a href="http://northamptonshirebirdclub.org.uk">Northamptonshire Bird Club</a> which nominated committee members could easily manage themselves. I decided that a Content Management System would be be best way to achieve this, and being a fan of open source I finally settled on <a href="http://drupal.org/">Drupal</a>. I liked the modular approach to the software and I hope this will provide me with the scope to alter the website functionality as the Club&#8217;s needs changed.</p>
<p>The scope for customization in both the information architecture and presentation is huge in these systems, and I have to admit I was pretty shaky on where to start. I read blog posts and watched video tutorials, most of which were excellent, but I have often found that personal experimentation is the best way to find things out.</p>
<p>I started be using taxonomy to link content together. I customized the default content types to present a range of taxonomy terms from which the users could select to define the nature of the document. I&#8217;ve found that this leads to a patch association and presentation which is pretty hard for inexperienced users to follow. Basically, it&#8217;s a bit of a mess!</p>
<p>I&#8217;ve subsequently installed the <a href="http://drupal.org/handbook/modules/cck">Content Construction Kit (CCK) module</a> and I&#8217;m impressed with its flexibility. I don&#8217;t think it&#8217;ll handle some of the more complex content types that I&#8217;ve in mind, but these would be best implemented as separate modules anyway.</p>
<p>The CCK module allowed me to define customized content for each type of blog post, article, or sighting report that the Club needs. What&#8217;s more it creates an input form for each, allowing members to simply select the form they need and fill in the blanks. Much easier to control and far less confusing.</p>
<p>I&#8217;ve also discovered the <a href="http://drupal.org/project/views/">Views module</a>, and I&#8217;m hopeful that this will provide a far better way of ordering the website architecture than the old taxonomy driven solution. This module should allow me to really leverage the new content types I&#8217;ve defined and produce just about any content presentation I want. </p>
<p>I&#8217;ll post how I get on, but right now I&#8217;ve got a video tutorial on <a href="http://learn.awakenedvoice.com/2007/07/30/drupal-cck-and-views-tutorial/">Drupal CCK and Views</a> to watch.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.conceptric.co.uk/using-drupal.htm/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
