<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:og="http://ogp.me/ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:schema="http://schema.org/" xmlns:sioc="http://rdfs.org/sioc/ns#" xmlns:sioct="http://rdfs.org/sioc/types#" xmlns:skos="http://www.w3.org/2004/02/skos/core#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" version="2.0" xml:base="http://badzilla.co.uk/">
  <channel>
    <title>Drupal 7</title>
    <link>http://badzilla.co.uk/</link>
    <description/>
    <language>en</language>
    
    <item>
  <title>Drupal 7 with Drush Loader and Non-Composer Project</title>
  <link>http://badzilla.co.uk/drupal-7-drush-loader-and-non-composer-project</link>
  <description>
&lt;span&gt;Drupal 7 with Drush Loader and Non-Composer Project&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Tue, 09/10/2018 - 20:59&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-10/Screen%20Shot%202018-10-09%20at%2021.37.54.png?itok=_EaR9i2O 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-10/Screen%20Shot%202018-10-09%20at%2021.37.54.png?itok=ww5kSzKf 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-10/Screen%20Shot%202018-10-09%20at%2021.37.54.png?itok=kkG98XFJ 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-10/Screen%20Shot%202018-10-09%20at%2021.37.54.png?itok=xCFiutQF 2026w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-10/Screen%20Shot%202018-10-09%20at%2021.37.54.png?itok=_EaR9i2O" alt="drush status" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;I've just upgraded my bare-metal Linux server which host many of my Drupal projects. My main driver was to get it up to PHP 7.1. I also in that process I elected to replace the existing &lt;em&gt;/usr/local/bin/drush&lt;/em&gt; command with the &lt;em&gt;drush&lt;/em&gt; loader which automatically runs project-based &lt;em&gt;drush&lt;/em&gt; commands installed by composer into the vendor directory. &lt;/p&gt;

&lt;p&gt;The problem with this approach of course is if you have Drupal 7 virtual hosts which were built without composer, then they would lose &lt;em&gt;drush&lt;/em&gt; capability. Thankfully there is a simple workaround for this - by retrospectively adding a skeleton composer.json file to the project. &lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;The Current Situation&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;I change directory into one of my many D7 projects
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;$ &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;var&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;html&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube
$ drush
The Drush launcher could not &lt;span style="color: #c20cb9; font-weight: bold;"&gt;find&lt;/span&gt; a Drupal site to operate on. Please &lt;span style="color: #000000; font-weight: bold;"&gt;do&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;one&lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; of the following:
  - Navigate to any where within your Drupal project and try again.
  - Add &lt;span style="color: #660033;"&gt;--root&lt;/span&gt;=&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;path&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;to&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drupal so Drush knows where your site is located.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
This is the diagnostic you will receive if you attempt to run drush in a non-composer project.&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;The composer.json Skeleton&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Now we have to add our composer skeleton to our project. So in your favourite editor add:&lt;br /&gt;
&lt;strong&gt;composer.json&lt;/strong&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;{&lt;/span&gt;
    &lt;span style="color: #ff0000;"&gt;"require"&lt;/span&gt;: &lt;span style="color: #7a0874; font-weight: bold;"&gt;{&lt;/span&gt;
        &lt;span style="color: #ff0000;"&gt;"drush/drush"&lt;/span&gt;: &lt;span style="color: #ff0000;"&gt;"~8"&lt;/span&gt;
    &lt;span style="color: #7a0874; font-weight: bold;"&gt;}&lt;/span&gt;,
    &lt;span style="color: #ff0000;"&gt;"extra"&lt;/span&gt;: &lt;span style="color: #7a0874; font-weight: bold;"&gt;{&lt;/span&gt;
        &lt;span style="color: #ff0000;"&gt;"installer-paths"&lt;/span&gt;: &lt;span style="color: #7a0874; font-weight: bold;"&gt;{&lt;/span&gt;
            &lt;span style="color: #ff0000;"&gt;"."&lt;/span&gt;: &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;"type:drupal-core"&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
        &lt;span style="color: #7a0874; font-weight: bold;"&gt;}&lt;/span&gt;
    &lt;span style="color: #7a0874; font-weight: bold;"&gt;}&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Most of this will be self-evident to composer users. The "drush/drush": "~8" means the version of drush should be kept at 8 with minor version increases allowed. The installer paths "." option basically means install the vendor directory that will house the drush binaries in the current directory. The reason is simple: I created this particular project long before child www or docroot directories became the norm.&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Composer Install&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Once the json file has been created, we are ready to go.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;$ composer &lt;span style="color: #c20cb9; font-weight: bold;"&gt;install&lt;/span&gt;
Loading composer repositories with package information
Updating dependencies &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;including require-dev&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
Package operations: &lt;span style="color: #000000;"&gt;20&lt;/span&gt; installs, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; updates, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; removals
..
snipped
...
drush&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drush suggests installing drush&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;config-extra &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;Provides configuration workflow commands, such &lt;span style="color: #c20cb9; font-weight: bold;"&gt;as&lt;/span&gt; config-merge.&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
Writing lock &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt;
Generating autoload files
&lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;code&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Vendor Directory&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;The vendor directory will now have been created and can be witnessed with
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ls&lt;/span&gt; &lt;span style="color: #660033;"&gt;-las&lt;/span&gt; vendor
total &lt;span style="color: #000000;"&gt;60&lt;/span&gt;
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x &lt;span style="color: #000000;"&gt;14&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;22&lt;/span&gt; .
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x &lt;span style="color: #000000;"&gt;11&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; ..
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt;  &lt;span style="color: #000000;"&gt;1&lt;/span&gt; nigel www-data  &lt;span style="color: #000000;"&gt;178&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;22&lt;/span&gt; autoload.php
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;2&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; bin
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;2&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; composer
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;4&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; consolidation
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; dnoegel
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; drush
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;4&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; jakub-onderka
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; nikic
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; pear
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; psr
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; psy
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x &lt;span style="color: #000000;"&gt;10&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; symfony
&lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;4&lt;/span&gt; nigel www-data &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Oct  &lt;span style="color: #000000;"&gt;9&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;21&lt;/span&gt; webmozart&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Running drush status&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Ok so now we should be good to go. Let's try it out!
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;$ drush status
 Drupal version                  :  &lt;span style="color: #000000;"&gt;7.59&lt;/span&gt;                                            
 Site URI                        :  http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;default                                  
 Database driver                 :  mysql                                           
 Database &lt;span style="color: #c20cb9; font-weight: bold;"&gt;hostname&lt;/span&gt;               :  127.0.0.1                                       
 Database port                   :                                                  
 Database username               :  drupal                                          
 Database name                   :  xxxx                                            
 Database                        :  Connected                                       
 Drupal bootstrap                :  Successful                                      
 Drupal user                     :                                                  
 Default theme                   :  xxxx                                  
 Administration theme            :  seven                                           
 PHP executable                  :  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;php                                    
 PHP configuration               :  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;etc&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;php&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;&lt;span style="color: #000000;"&gt;7.0&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cli&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;php.ini                        
 PHP OS                          :  Linux                                           
 Drush script                    :  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;var&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;html&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;xxxx&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;vendor&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drush&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drush&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drush.php 
 Drush version                   :  8.1.17                                          
 Drush temp directory            :  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp                                            
 Drush configuration             :                                                  
 Drush &lt;span style="color: #7a0874; font-weight: bold;"&gt;alias&lt;/span&gt; files               :                                                  
 Install profile                 :  standard                                        
 Drupal root                     :  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;var&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;html&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;xxxx                              
 Drupal Settings File            :  sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;settings.php                      
 Site path                       :  sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default                                   
 File directory path             :  sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files                             
 Temporary &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt; directory path   :  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp                    &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Good to go! We are done here!&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
      &lt;div class="field field--name-field-blog-youtube field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-text-youtube paragraph--view-mode--default"&gt;
          
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal8" hreflang="en"&gt;Drupal 8&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/development" hreflang="en"&gt;Development&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Tue, 09 Oct 2018 19:59:27 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">148 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 8 and DRUD Tech's ddev Local Development Environment</title>
  <link>http://badzilla.co.uk/drupal-8-and-drud-techs-ddev-local-development-environment</link>
  <description>
&lt;span&gt;Drupal 8 and DRUD Tech's ddev Local Development Environment&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Sat, 10/03/2018 - 21:12&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.40.36.png?itok=RMPUTXj1 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.40.36.png?itok=Z0gmcixg 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.40.36.png?itok=JHQH5DPa 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.40.36.png?itok=IN5xeixh 2294w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.40.36.png?itok=RMPUTXj1" alt="Command Line" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;My favourite presentation at DrupalCamp London 2018 was &lt;strong&gt;Turbocharge Your Agency&lt;/strong&gt; given by DRUD Tech co-founder Kevin Bridges and Jeffrey A. "jam" McGuire. They talked at length about the container solution &lt;strong&gt;ddev&lt;/strong&gt; which enables developers to manage their local environments and thus optimise their time and in addition save their configuration under source control. Furthermore the demonstration showed that it was possible to flip between different configurations with different Drupal versions easily and quickly. The solution found &lt;a href="https://github.com/drud/ddev"&gt;here&lt;/a&gt; uses Docker and is wrapped by the lightning fast Golang.&lt;/p&gt;
&lt;p&gt;I've been thinking for a while about moving from my existing hand crafted Virtual Machine towards Docker. My VM's configuration isn't under source control management, and has built up over the years into quite a complex beast. I have Jenkins, phing, composer, Drupal console, Mail Catcher, Compass, node, npm, Python, nginx, Apache, MariaDB and MongoDB that I can remember off the top of my head. It's becoming a difficult proposition to keep it all working. When I need to run a different version of PHP I manually switch simlinks around. Oh for something easier. &lt;/p&gt;
&lt;p&gt;So I elected to investigate whether Drud Tech's offering could possibly help out. The demonstration given by their guys at DrupalCamp London 2018 showed the ease of moving between D7 and D8 repos. However they were fresh builds and for the tool to be of value to me, it would have to work from pre-existing codebases. &lt;/p&gt;
&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Installing a VirtualBox VM&lt;/div&gt;
      
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-05%20at%2021.41.04.png?itok=YLavAD3q 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-05%20at%2021.41.04.png?itok=p9TxKiLl 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-05%20at%2021.41.04.png?itok=kWThqz1Q 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-05%20at%2021.41.04.png?itok=GhAKBne5 1764w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-05%20at%2021.41.04.png?itok=YLavAD3q" alt="ddev VM" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.01.38.png?itok=fR6uv1yE 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.01.38.png?itok=5GkmA5Mt 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.01.38.png?itok=oYLUJWwI 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.01.38.png?itok=FgT36KcJ 1768w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.01.38.png?itok=fR6uv1yE" alt="ifconfig" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.06.05.png?itok=4NUDSvv6 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.06.05.png?itok=QwIRA5Ls 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.06.05.png?itok=J1ySsudd 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.06.05.png?itok=quF2Q4GI 1526w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-05%20at%2022.06.05.png?itok=4NUDSvv6" alt="ssh port forward" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;This was purely a Proof of Concept so as a consequence I needed to keep anything I did in a ring-fenced environment. Therefore a VirtualBox Ubuntu 16.04LTS image was used as a starting point. I won't provide screenshots of the entire build process since I have previous blogs to cover this. &lt;/p&gt;

&lt;p&gt;Once the build has completed and I have logged in I issue a &lt;em&gt;ifconfig&lt;/em&gt; command to determine the IP address which is 10.0.2.15 (second screenshot). This will need to be used with the network configuration. &lt;/p&gt;

&lt;p&gt;When I was building the VM I kept the default network configuration which is NAT. I have moved away from using Bridged Adapter. A bridged adapter on the face of it is very convenient - it automatically gets an IP address via DHCP from my ISP provided router at home, in the 192.168.0.0 range. However this falls foul at client sites with security policies prohibiting unknown MAC Addresses, and Internet cafes that don't use the same IP range - it simply won't work. &lt;/p&gt;

&lt;p&gt;The solution is to use NAT and use the port forwarding facility. Navigate to &lt;em&gt;Settings -&gt; Network -&gt; Advanced -&gt; Port Forwarding&lt;/em&gt; and add values for ssh as per the third screenshot above.  &lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;I can now ssh into the ddev VM. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ssh&lt;/span&gt; &lt;span style="color: #660033;"&gt;-p&lt;/span&gt; &lt;span style="color: #000000;"&gt;2222&lt;/span&gt; nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;127.0.0.1
The authenticity of host &lt;span style="color: #ff0000;"&gt;'[127.0.0.1]:2222 ([127.0.0.1]:2222)'&lt;/span&gt; can&lt;span style="color: #ff0000;"&gt;'t be established.
ECDSA key fingerprint is SHA256:VRNxWpagSl2DGz7dmgRjBqdDdadXITdPPkItrMR9k38.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;127.0.0.1&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;:&lt;span style="color: #000000;"&gt;2222&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;' (ECDSA) to the list of known hosts.
nigel@127.0.0.1'&lt;/span&gt;s password: 
Welcome to Ubuntu 16.04.3 LTS &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;GNU&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;Linux 4.4.0-&lt;span style="color: #000000;"&gt;87&lt;/span&gt;-generic x86_64&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
 
 &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; Documentation:  https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;help.ubuntu.com
 &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; Management:     https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;landscape.canonical.com
 &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; Support:        https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;advantage
 
&lt;span style="color: #000000;"&gt;137&lt;/span&gt; packages can be updated.
&lt;span style="color: #000000;"&gt;69&lt;/span&gt; updates are security updates.
 
 
Last login: Mon Mar  &lt;span style="color: #000000;"&gt;5&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;50&lt;/span&gt;:&lt;span style="color: #000000;"&gt;35&lt;/span&gt; &lt;span style="color: #000000;"&gt;2018&lt;/span&gt;
To run a &lt;span style="color: #7a0874; font-weight: bold;"&gt;command&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;as&lt;/span&gt; administrator &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;user &lt;span style="color: #ff0000;"&gt;"root"&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;, use &lt;span style="color: #ff0000;"&gt;"sudo &lt;command&gt;"&lt;/span&gt;.
See &lt;span style="color: #ff0000;"&gt;"man sudo_root"&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; details.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Install Docker&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Don't be tempted to install the Docker version that is bundled in the Ubuntu default repos. Follow the instructions on the Docker site for installing the CE version of Docker from their private repo. &lt;br /&gt;&lt;br /&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get update&lt;/span&gt;
&lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; password &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; nigel: 
Hit:&lt;span style="color: #000000;"&gt;1&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;security.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-security InRelease
Hit:&lt;span style="color: #000000;"&gt;2&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial InRelease
Hit:&lt;span style="color: #000000;"&gt;3&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-updates InRelease
Hit:&lt;span style="color: #000000;"&gt;4&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-backports InRelease
Reading package lists... Done &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Install packages to allow apt to use a repository over HTTPS
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get install&lt;/span&gt; \
&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;     apt-transport-https \
&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;     ca-certificates \
&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;     curl \
&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;     software-properties-common
Reading package lists... Done
Building dependency &lt;span style="color: #c20cb9; font-weight: bold;"&gt;tree&lt;/span&gt;       
Reading state information... Done
apt-transport-https is already the newest version &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;1.2.25&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;.
ca-certificates is already the newest version &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;20170717&lt;/span&gt;~16.04.1&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;.
curl is already the newest version &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;7.47.0-1ubuntu2.6&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;.
software-properties-common is already the newest version &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;0.96.20.7&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;.
&lt;span style="color: #000000;"&gt;0&lt;/span&gt; to upgrade, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; to newly &lt;span style="color: #c20cb9; font-weight: bold;"&gt;install&lt;/span&gt;, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; to remove and &lt;span style="color: #000000;"&gt;2&lt;/span&gt; not to upgrade.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
That's good. Nothing to do there. Now let's add Docker’s official GPG key:
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;curl &lt;span style="color: #660033;"&gt;-fsSL&lt;/span&gt; https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;download.docker.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;linux&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;gpg &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-key add&lt;/span&gt; -
OK&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now I need to verify that we have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88, by searching for the last 8 characters of the fingerprint.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-key&lt;/span&gt; fingerprint 0EBFCD88
pub   4096R&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;0EBFCD88 &lt;span style="color: #000000;"&gt;2017&lt;/span&gt;-02-&lt;span style="color: #000000;"&gt;22&lt;/span&gt;
      Key fingerprint = 9DC8 &lt;span style="color: #000000;"&gt;5822&lt;/span&gt; 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid                  Docker Release &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;CE deb&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;docker&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;docker.com&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
sub   4096R&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;F273FCD8 &lt;span style="color: #000000;"&gt;2017&lt;/span&gt;-02-&lt;span style="color: #000000;"&gt;22&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
All good. Next the following command to set up the stable repository.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; add-apt-repository \
&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;    &lt;span style="color: #ff0000;"&gt;"deb [arch=amd64] https://download.docker.com/linux/ubuntu &lt;span style="color: #000099; font-weight: bold;"&gt;\
&lt;/span&gt;&gt;    &lt;span style="color: #007800;"&gt;$(lsb_release -cs)&lt;/span&gt; &lt;span style="color: #000099; font-weight: bold;"&gt;\
&lt;/span&gt;&gt;    stable"&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Update apt again
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get update&lt;/span&gt;
Hit:&lt;span style="color: #000000;"&gt;1&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;security.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-security InRelease
Hit:&lt;span style="color: #000000;"&gt;2&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial InRelease
Hit:&lt;span style="color: #000000;"&gt;3&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-updates InRelease
Hit:&lt;span style="color: #000000;"&gt;4&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-backports InRelease
Get:&lt;span style="color: #000000;"&gt;5&lt;/span&gt; https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;download.docker.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;linux&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial InRelease &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #000000;"&gt;65.8&lt;/span&gt; kB&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
Get:&lt;span style="color: #000000;"&gt;6&lt;/span&gt; https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;download.docker.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;linux&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;stable amd64 Packages &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #000000;"&gt;3&lt;/span&gt;,&lt;span style="color: #000000;"&gt;329&lt;/span&gt; B&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
Fetched &lt;span style="color: #000000;"&gt;69.1&lt;/span&gt; kB &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; 0s &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;140&lt;/span&gt; kB&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;s&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
Reading package lists... Done&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Again we are looking good - we can see it's picked up the Docker repo ok. Let's install the latest version of Docker. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get update&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Let's check it's working..
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; docker run hello-world
&lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; password &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; nigel: 
Unable to &lt;span style="color: #c20cb9; font-weight: bold;"&gt;find&lt;/span&gt; image &lt;span style="color: #ff0000;"&gt;'hello-world:latest'&lt;/span&gt; locally
latest: Pulling from library&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;hello-world
ca4f61b1923c: Pull &lt;span style="color: #7a0874; font-weight: bold;"&gt;complete&lt;/span&gt; 
Digest: sha256:083de497cff944f969d8499ab94f07134c50bcf5e6b9559b27182d3fa80ce3f7
Status: Downloaded newer image &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; hello-world:latest
 
Hello from Docker&lt;span style="color: #000000; font-weight: bold;"&gt;!&lt;/span&gt;
This message shows that your installation appears to be working correctly.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Success! Now we need docker-compose installing. Again, don't be tempted to install from the standard Ubuntu repos, because if you do with Ubuntu 16.04LTS you'll end up with docker-compose version 1.8.0 which does not meet the ddev requirements. So do it the proper way!
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; curl &lt;span style="color: #660033;"&gt;-L&lt;/span&gt; https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;github.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docker&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;compose&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;releases&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;download&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;1.19.0&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docker-compose-&lt;span style="color: #000000; font-weight: bold;"&gt;`&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -s&lt;span style="color: #000000; font-weight: bold;"&gt;`&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;`&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;uname&lt;/span&gt; -m&lt;span style="color: #000000; font-weight: bold;"&gt;`&lt;/span&gt; &lt;span style="color: #660033;"&gt;-o&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docker-compose
  &lt;span style="color: #000000; font-weight: bold;"&gt;%&lt;/span&gt; Total    &lt;span style="color: #000000; font-weight: bold;"&gt;%&lt;/span&gt; Received &lt;span style="color: #000000; font-weight: bold;"&gt;%&lt;/span&gt; Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
&lt;span style="color: #000000;"&gt;100&lt;/span&gt;   &lt;span style="color: #000000;"&gt;617&lt;/span&gt;    &lt;span style="color: #000000;"&gt;0&lt;/span&gt;   &lt;span style="color: #000000;"&gt;617&lt;/span&gt;    &lt;span style="color: #000000;"&gt;0&lt;/span&gt;     &lt;span style="color: #000000;"&gt;0&lt;/span&gt;    &lt;span style="color: #000000;"&gt;795&lt;/span&gt;      &lt;span style="color: #000000;"&gt;0&lt;/span&gt; --:--:-- --:--:-- --:--:--   &lt;span style="color: #000000;"&gt;795&lt;/span&gt;
&lt;span style="color: #000000;"&gt;100&lt;/span&gt; 8288k  &lt;span style="color: #000000;"&gt;100&lt;/span&gt; 8288k    &lt;span style="color: #000000;"&gt;0&lt;/span&gt;     &lt;span style="color: #000000;"&gt;0&lt;/span&gt;   355k      &lt;span style="color: #000000;"&gt;0&lt;/span&gt;  &lt;span style="color: #000000;"&gt;0&lt;/span&gt;:00:&lt;span style="color: #000000;"&gt;23&lt;/span&gt;  &lt;span style="color: #000000;"&gt;0&lt;/span&gt;:00:&lt;span style="color: #000000;"&gt;23&lt;/span&gt; --:--:--  196k&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now make it executable
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;chmod&lt;/span&gt; +x &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docker-compose&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Let's see the version
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;docker-compose &lt;span style="color: #660033;"&gt;--version&lt;/span&gt;
docker-compose version 1.19.0, build 9e633ef&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Neat! We are almost there. Now we need to make sure Docker starts every time we boot the machine.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; systemctl &lt;span style="color: #7a0874; font-weight: bold;"&gt;enable&lt;/span&gt; docker
Synchronizing state of docker.service with SysV init with &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;lib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;systemd&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;systemd-sysv-install...
Executing &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;lib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;systemd&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;systemd-sysv-install &lt;span style="color: #7a0874; font-weight: bold;"&gt;enable&lt;/span&gt; docker&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Before I am done here, I need to add myself to the Docker group so I can execute Docker commands (or rather ddev can on my behalf)
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~/projects/meedjum$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; usermod &lt;span style="color: #660033;"&gt;-aG&lt;/span&gt; docker $&lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;whoami&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Rebooting will now serve two purposes - check that the above command works which will start Docker, and make sure my new group status has been picked up. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;su&lt;/span&gt;
root&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #666666; font-style: italic;"&gt;# init 6&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Installing ddev&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;There are two ways of installing ddev - by downloading from the repository's &lt;a href="https://github.com/drud/ddev/releases"&gt;releases&lt;/a&gt; - or use the install script in the &lt;a href="https://ddev.readthedocs.io/en/latest/"&gt;ddev&lt;/a&gt; documentation. I opted for the latter. &lt;/p&gt;
&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;curl https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;raw.githubusercontent.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ddev&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;master&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;install_ddev.sh &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;bash&lt;/span&gt;
  &lt;span style="color: #000000; font-weight: bold;"&gt;%&lt;/span&gt; Total    &lt;span style="color: #000000; font-weight: bold;"&gt;%&lt;/span&gt; Received &lt;span style="color: #000000; font-weight: bold;"&gt;%&lt;/span&gt; Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
&lt;span style="color: #000000;"&gt;100&lt;/span&gt;  &lt;span style="color: #000000;"&gt;2545&lt;/span&gt;  &lt;span style="color: #000000;"&gt;100&lt;/span&gt;  &lt;span style="color: #000000;"&gt;2545&lt;/span&gt;    &lt;span style="color: #000000;"&gt;0&lt;/span&gt;     &lt;span style="color: #000000;"&gt;0&lt;/span&gt;   &lt;span style="color: #000000;"&gt;5821&lt;/span&gt;      &lt;span style="color: #000000;"&gt;0&lt;/span&gt; --:--:-- --:--:-- --:--:--  &lt;span style="color: #000000;"&gt;5823&lt;/span&gt;
ddev_linux.v0.15.0.tar.gz: OK
Download verified. Ready to place ddev &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; your &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin.
Running &lt;span style="color: #ff0000;"&gt;"sudo mv /tmp/ddev /usr/local/bin/"&lt;/span&gt; Please enter your password &lt;span style="color: #000000; font-weight: bold;"&gt;if&lt;/span&gt; prompted.
&lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; password &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; nigel: 
Bash completion &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; ddev was not installed. You may manually &lt;span style="color: #c20cb9; font-weight: bold;"&gt;install&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ddev_bash_completion.sh &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; your bash_completions.d directory.
ddev is now installed. Run &lt;span style="color: #ff0000;"&gt;"ddev"&lt;/span&gt; to verify your installation and see usage.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Installed - now check our installation
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;ddev
This Command Line Interface &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;CLI&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; gives you the ability to interact with the ddev to create a development environment.
 
Usage:
  ddev &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;command&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
 
Available Commands:
  auth-pantheon Provide a machine token &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; the global pantheon auth.
  config        Create or modify a ddev project configuration &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; the current directory
  describe      Get a detailed description of a running ddev project.
  &lt;span style="color: #7a0874; font-weight: bold;"&gt;exec&lt;/span&gt;          Execute a shell &lt;span style="color: #7a0874; font-weight: bold;"&gt;command&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; the container &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; a service. Uses the web service by default.
  &lt;span style="color: #7a0874; font-weight: bold;"&gt;help&lt;/span&gt;          Help about any &lt;span style="color: #7a0874; font-weight: bold;"&gt;command&lt;/span&gt;
  &lt;span style="color: #c20cb9; font-weight: bold;"&gt;hostname&lt;/span&gt;      Manage your hostfile entries.
  import-db     Import the database of an existing project to the dev environment.
  import-files  Import the uploaded files directory of an existing project to the default public upload directory of your project.
  list          List projects
  logs          Get the logs from your running services.
  pull          Import files and database using a configured provider plugin.
  remove        Remove the development environment &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; a project.
  restart       Restart the development environment &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; a project.
  &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ssh&lt;/span&gt;           Starts a shell session &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; the container &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; a service. Uses web service by default.
  start         Start a ddev project.
  stop          Stop the development environment &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; a project.
  version       print ddev version and component versions
 
Flags:
  -h, &lt;span style="color: #660033;"&gt;--help&lt;/span&gt;          &lt;span style="color: #7a0874; font-weight: bold;"&gt;help&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; ddev
  -j, &lt;span style="color: #660033;"&gt;--json-output&lt;/span&gt;   If &lt;span style="color: #c20cb9; font-weight: bold;"&gt;true&lt;/span&gt;, user-oriented output will be &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; JSON format.
 
Use &lt;span style="color: #ff0000;"&gt;"ddev [command] --help"&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;more&lt;/span&gt; information about a command.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
We have it!&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Getting Started with an Existing Drupal 8 Project&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;This blog has been built using Drupal 8 - so it made sense to use this for my first project. Let's create a directory for my projects and git clone. At this point I had already created a new .ssh key for my ddev VM and added it to my GitHub profile.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;mkdir&lt;/span&gt; projects
&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;git clone&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;git&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;github.com:sanddevil&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum.git
Cloning into &lt;span style="color: #ff0000;"&gt;'meedjum'&lt;/span&gt;...&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now let's cd into the project and config ddev for our Drupal 8 through its interactive shell. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum$ ddev config
Creating a new ddev project config &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; the current directory &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; 
Once completed, your configuration will be written to &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;.ddev&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;config.yaml
 
Project name &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;meedjum&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;: 
 
The docroot is the directory from &lt;span style="color: #c20cb9; font-weight: bold;"&gt;which&lt;/span&gt; your site is served. This is a relative path from your project root &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; 
You may leave this value blank &lt;span style="color: #000000; font-weight: bold;"&gt;if&lt;/span&gt; your site files are &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; the project root 
Docroot Location &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;docroot&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;: 
Found a php codebase at &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot. 
Project Type &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;php, drupal6, drupal7, drupal8, wordpress, typo3, backdrop&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;php&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;: drupal8
Configuration complete. You may now run &lt;span style="color: #ff0000;"&gt;'ddev start'&lt;/span&gt;. &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
ddev is suggesting I should run start, so why not?
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum$ ddev start
Network ddev_default created 
Starting environment &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; meedjum... 
ddev needs to add an entry to your hostfile.
It will require root privileges via the &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;command&lt;/span&gt;, so you may be required
to enter your password &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; sudo. ddev is about to issue the command: 
    &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ddev &lt;span style="color: #c20cb9; font-weight: bold;"&gt;hostname&lt;/span&gt; meedjum.ddev.local 127.0.0.1 
Please enter your password &lt;span style="color: #000000; font-weight: bold;"&gt;if&lt;/span&gt; prompted. 
Running Command  &lt;span style="color: #007800;"&gt;Command&lt;/span&gt;=&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ddev &lt;span style="color: #c20cb9; font-weight: bold;"&gt;hostname&lt;/span&gt; meedjum.ddev.local 127.0.0.1
&lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; password &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; nigel: 
Pulling db &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mariadb-local:v0.8.0&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;... 
Creating ddev-meedjum-db ... &lt;span style="color: #000000; font-weight: bold;"&gt;done&lt;/span&gt;
Pulling dba &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;phpmyadmin:v0.2.0&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;... 
Creating ddev-meedjum-web ... &lt;span style="color: #000000; font-weight: bold;"&gt;done&lt;/span&gt;
Creating ddev-meedjum-dba ...  
Creating ddev-meedjum-web ...  
 
Network ddev_default is external, skipping 
Pulling ddev-router &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ddev-router:v0.5.0&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;... 
Creating ddev-router ... &lt;span style="color: #000000; font-weight: bold;"&gt;done&lt;/span&gt;
 
Successfully started meedjum 
Your project can be reached at http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;meedjum.ddev.local and https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;meedjum.ddev.local &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Installing Composer&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Drupal 8 requires composer and that needs installing on our clean system. There are plenty of tutorials online on how to achieve this, so I'll whizz through this quickly. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get update&lt;/span&gt;
Hit:&lt;span style="color: #000000;"&gt;1&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;security.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-security InRelease
Hit:&lt;span style="color: #000000;"&gt;2&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial InRelease
Hit:&lt;span style="color: #000000;"&gt;3&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-updates InRelease
Hit:&lt;span style="color: #000000;"&gt;4&lt;/span&gt; http:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;gb.archive.ubuntu.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial-backports InRelease
Hit:&lt;span style="color: #000000;"&gt;5&lt;/span&gt; https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;download.docker.com&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;linux&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ubuntu xenial InRelease
Reading package lists... Done&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Install the dependencies
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;apt-get install&lt;/span&gt; curl php-cli php-mbstring &lt;span style="color: #c20cb9; font-weight: bold;"&gt;git&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;unzip&lt;/span&gt;
Reading package lists... Done&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Download composer
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;curl &lt;span style="color: #660033;"&gt;-sS&lt;/span&gt; https:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;getcomposer.org&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;installer &lt;span style="color: #660033;"&gt;-o&lt;/span&gt; composer-setup.php&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Install it globally
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; php composer-setup.php &lt;span style="color: #660033;"&gt;--install-dir&lt;/span&gt;=&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin &lt;span style="color: #660033;"&gt;--filename&lt;/span&gt;=composer
All settings correct &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; using Composer
Downloading...
 
Composer &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;version 1.6.3&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; successfully installed to: &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;composer
Use it: php &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;usr&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;local&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;bin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;composer&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now check it's been installed correctly
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;composer
   ______
  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; ____&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;___  ____ ___  ____  ____  ________  _____
 &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;   &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; __ \&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; __ &lt;span style="color: #000000; font-weight: bold;"&gt;`&lt;/span&gt;__ \&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; __ \&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; __ \&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; ___&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; _ \&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; ___&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;___&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;__  &lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;  __&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
\____&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;\____&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; .___&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;\____&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;____&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;\___&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
                    &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;_&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
Composer version 1.6.3 &lt;span style="color: #000000;"&gt;2018&lt;/span&gt;-01-&lt;span style="color: #000000;"&gt;31&lt;/span&gt; &lt;span style="color: #000000;"&gt;16&lt;/span&gt;:&lt;span style="color: #000000;"&gt;28&lt;/span&gt;:&lt;span style="color: #000000;"&gt;17&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Building Out the Drupal 8 Project&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;The &lt;i&gt;ddev start&lt;/i&gt; command creates a new subdirectory called &lt;strong&gt;.ddev&lt;/strong&gt; in the project's root directory. Within the directory we have &lt;strong&gt;config.yaml&lt;/strong&gt; and  &lt;strong&gt;docker-compose.yaml&lt;/strong&gt;. The config file contains the configuration of our ddev project such as the version of PHP, webpage url, type of project (drupal8) amongst other items. The docker yaml file contains the container configuration. &lt;/p&gt;
&lt;p&gt;Interaction with the ddev project can be accomplished in two ways, either with &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ddev exec &lt;em&gt;command&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;or by spawning a shell with&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;ddev ssh&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;and using &lt;strong&gt;exit&lt;/strong&gt; to terminate the interactive session. &lt;/p&gt;
&lt;p&gt;Our first requirement is to get dependencies into our D8 project since it is vendor-ised and uses &lt;strong&gt;composer&lt;/strong&gt; as its dependency management.&lt;/p&gt;
&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Ok my Drupal core was on 8.4.4 and 8.4.5 and then 8.5 had been released so it needed updating, and in my case would update to 8.4.5 initially 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot$ composer update &lt;span style="color: #660033;"&gt;--with-dependencies&lt;/span&gt;
Gathering patches &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; root package.
Loading composer repositories with package information
Updating dependencies &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;including require-dev&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
Package operations: &lt;span style="color: #000000;"&gt;51&lt;/span&gt; installs, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; updates, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; removals
Gathering patches &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; root package.
Gathering patches &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; dependencies. This might take a minute.&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now since there were schema changes, those need to be applied. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot$ ddev &lt;span style="color: #7a0874; font-weight: bold;"&gt;exec&lt;/span&gt; drush &lt;span style="color: #c20cb9; font-weight: bold;"&gt;updatedb&lt;/span&gt;
Performing node_update_8401                                          &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;ok&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; 
Cache rebuild complete.                                              &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;ok&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; 
Finished performing updates.                                         &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;ok&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt; 
The following updates are pending:
 
node module : 
  &lt;span style="color: #000000;"&gt;8401&lt;/span&gt; -   Run a node access rebuild, &lt;span style="color: #000000; font-weight: bold;"&gt;if&lt;/span&gt; required. 
 
Do you wish to run all pending updates? &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;y&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;n&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;: y&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Settings.php&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;This is where things started to go awry. I already have a fully constructed &lt;strong&gt;settings.php&lt;/strong&gt; and &lt;strong&gt;settings.local.php&lt;/strong&gt;. The settings.php file contains my Memcached settings. However the memcache(d) PHP libraries aren't shipped in the ddev product. Obviously by that fact ddev doesn't support Memcached. &lt;/p&gt;
&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;When I attempted a drush status command I was inundated with errors. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;vi&lt;/span&gt; settings.local.php
nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default$ ddev &lt;span style="color: #7a0874; font-weight: bold;"&gt;exec&lt;/span&gt; drush status
Drupal\memcache\MemcacheException: No Memcache extension found &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;var&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;html&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;contrib&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;memcache&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;src&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;DrupalMemcacheFactory.php on line &lt;span style="color: #000000;"&gt;162&lt;/span&gt; &lt;span style="color: #666666; font-style: italic;"&gt;#0 /var/www/html/docroot/modules/contrib/memcache/src/DrupalMemcacheFactory.php(62): Drupal\memcache\DrupalMemcacheFactory-&gt;initialize() &lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
As a consequence I commented out the Memcache settings
&lt;div class="codeblock geshifilter"&gt;&lt;code&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #0000BB"&gt;&lt;?php&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;// Memcache&lt;br /&gt;//Memcache configuration&lt;br /&gt;//$settings['memcache']['servers'] = ['127.0.0.1:11211' =&gt; 'default'];&lt;br /&gt;//$settings['memcache']['bins'] = ['default' =&gt; 'default'];&lt;br /&gt;//$settings['memcache']['key_prefix'] = 'badzillad8';&lt;br /&gt;//$settings['cache']['default'] = 'cache.backend.memcache';&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Importing the Database&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;The next problem is ddev looks for the db credentials in settings.php whereas I have my credentials in my settings.local.php file. I changed the credentials in the settings.local.php file and I copied my database file to the /tmp directory. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default$ ddev import-db  &lt;span style="color: #660033;"&gt;--extract-path&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp
Provide the path to the database you wish to import. 
Import path: &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;db-&lt;span style="color: #000000;"&gt;2018&lt;/span&gt;-03-&lt;span style="color: #000000;"&gt;10&lt;/span&gt;.sql.gz
Failed to import database &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; meedjum: failed to &lt;span style="color: #c20cb9; font-weight: bold;"&gt;write&lt;/span&gt; settings &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; meedjum: Failed to get Drupal settings &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt; path: settings files already exist and are being managed by the user &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
More errors! The import failed. I thought it could be because it required the credentials in settings.php but that didn't work either. So I decided to use Drush instead:
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #666666;"&gt;nigel@ddev:~/projects/meedjum/docroot/sites/default$ &lt;/span&gt;ddev &lt;span style="color: #7a0874; font-weight: bold;"&gt;exec&lt;/span&gt; drush sql-cli &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;db-&lt;span style="color: #000000;"&gt;2018&lt;/span&gt;-03-&lt;span style="color: #000000;"&gt;10&lt;/span&gt;.sql&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;HTTP Port Forwarding&lt;/div&gt;
      
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-10%20at%2015.46.21.png?itok=hMzNpeQj 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-10%20at%2015.46.21.png?itok=19ElDITG 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-10%20at%2015.46.21.png?itok=stTO3iQK 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-10%20at%2015.46.21.png?itok=Kmlp-Ivk 1526w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-10%20at%2015.46.21.png?itok=hMzNpeQj" alt="HTTP Port Forward" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.03.59.png?itok=paAus2c1 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.03.59.png?itok=1lyjZtih 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.03.59.png?itok=o7fpGydO 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.03.59.png?itok=u7dhNeop 1326w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.03.59.png?itok=paAus2c1" alt="Localhost domain" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.16.13.png?itok=vZm4Hvoe 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.16.13.png?itok=f3fWRXdM 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.16.13.png?itok=1PaW4psd 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.16.13.png?itok=eHu0PxkP 1688w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-10%20at%2017.16.13.png?itok=vZm4Hvoe" alt="Error 40x" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Just like our earlier forwarding of the ssh port so we can log into the VM, we also have to forward http port 80 traffic. To do this, we go back to the virtual machine network configuration, and set up a redirect from port 9090 (somewhat arbitrary) on the host to port 80 on the guest. See the first screenshot. This will take us to the the default website on the VM. We need to explicitly tell a browser which site it is - to do that we add an entry on the machine where we will be using our browser - which in my case will be my MacBook.
&lt;br /&gt;&lt;br /&gt;
So I have added the entry to /etc/hosts of the working ddev domain name and the localhost IP address
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;127.0.0.1       localhost
255.255.255.255 broadcasthost
::&lt;span style="color: #000000;"&gt;1&lt;/span&gt;             localhost
 
127.0.0.1 meedjum.ddev.local&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now we need to reboot our VM and then login back in and issue a ddev start on our project. We can also check whether everything is good with a docker ps command. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;root&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;home&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nigel&lt;span style="color: #666666; font-style: italic;"&gt;# init 6&lt;/span&gt;
Connection to 127.0.0.1 closed by remote host.
Connection to 127.0.0.1 closed.
Nigels-MacBook-Pro:tmp nigel$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ssh&lt;/span&gt; &lt;span style="color: #660033;"&gt;-p&lt;/span&gt; &lt;span style="color: #000000;"&gt;2222&lt;/span&gt; nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;127.0.0.1
&lt;span style="color: #666666;"&gt;nigel@ddev:~$ &lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum$ ddev start
Starting environment &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; meedjum... 
nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum$ docker &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ps&lt;/span&gt;
CONTAINER ID        IMAGE                             COMMAND                  CREATED             STATUS                             PORTS                                                                                      NAMES
5fd9a60cb90c        drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;ddev-router:v0.5.0           &lt;span style="color: #ff0000;"&gt;"/app/docker-entrypo…"&lt;/span&gt;   &lt;span style="color: #000000;"&gt;10&lt;/span&gt; seconds ago      Up &lt;span style="color: #000000;"&gt;10&lt;/span&gt; seconds &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;healthy&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;            0.0.0.0:&lt;span style="color: #000000;"&gt;80&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;80&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp, 0.0.0.0:&lt;span style="color: #000000;"&gt;443&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;443&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp, 0.0.0.0:&lt;span style="color: #000000;"&gt;8025&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;8025&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp, 0.0.0.0:&lt;span style="color: #000000;"&gt;8036&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;8036&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp   ddev-router
cea77b7cbc6b        drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;nginx-php-fpm-local:v1.1.0   &lt;span style="color: #ff0000;"&gt;"/start.sh"&lt;/span&gt;              &lt;span style="color: #000000;"&gt;7&lt;/span&gt; hours ago         Up &lt;span style="color: #000000;"&gt;11&lt;/span&gt; seconds &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;healthy&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;            &lt;span style="color: #000000;"&gt;443&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp, 0.0.0.0:&lt;span style="color: #000000;"&gt;32771&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;80&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp, 0.0.0.0:&lt;span style="color: #000000;"&gt;32770&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;8025&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp                                    ddev-meedjum-web
2dc08e116820        drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;phpmyadmin:v0.2.0            &lt;span style="color: #ff0000;"&gt;"/run.sh phpmyadmin"&lt;/span&gt;     &lt;span style="color: #000000;"&gt;7&lt;/span&gt; hours ago         Up &lt;span style="color: #000000;"&gt;11&lt;/span&gt; seconds &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;health: starting&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;   0.0.0.0:&lt;span style="color: #000000;"&gt;32769&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;80&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp                                                                      ddev-meedjum-dba
f239a52ae806        drud&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;mariadb-local:v0.8.0         &lt;span style="color: #ff0000;"&gt;"/docker-entrypoint.…"&lt;/span&gt;   &lt;span style="color: #000000;"&gt;7&lt;/span&gt; hours ago         Up &lt;span style="color: #000000;"&gt;12&lt;/span&gt; seconds &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;healthy&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;            0.0.0.0:&lt;span style="color: #000000;"&gt;32768&lt;/span&gt;-&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;3306&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tcp                                                                    ddev-meedjum-db&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
We can now point a web browser at the url we typed into our /etc/hosts file - see third image above. Ok - so we are close but not quite there yet! Looks like this could be the old trusted host pattern issue since it doesn't know about my domain meedjum.ddev.test.&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Add ddev Domain to Trusted Hosts in Settings.php&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;...or rather in my case my settings.local.php file. I added the ddev domain name to the trusted hosts pattern array
&lt;div class="codeblock geshifilter"&gt;&lt;code&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #0000BB"&gt;&lt;?php&lt;br /&gt;$settings&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'trusted_host_patterns'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = [&lt;br /&gt;  &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'meedjum.test'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;  &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'meedjum.ddev.local'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;];&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Copying the Assets&lt;/div&gt;
      
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2009.26.38.png?itok=pQrRE3Ve 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-11%20at%2009.26.38.png?itok=3T_aByhp 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-11%20at%2009.26.38.png?itok=bU1BJaRD 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-11%20at%2009.26.38.png?itok=mYJLCWoc 2444w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2009.26.38.png?itok=pQrRE3Ve" alt="No images" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Adding the trusted host entry now means the web site loads successfully but of course the assets are missing and need copying down from my prod site. ddev provides a command for this:
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot$ ddev import-files &lt;span style="color: #660033;"&gt;--src&lt;/span&gt;=&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files.tar.gz
Successfully imported files &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; meedjum &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
100% my fault, but my file structure ended up as sites/default/files/files because I'd tarballed my prod files directory within the tarball, instead of just its contents. So I moved everything back one directory. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;mv&lt;/span&gt; sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/*&lt;/span&gt; sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;.
nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;mv&lt;/span&gt; sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;.htaccess sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;.
nigel&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;ddev:~&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;projects&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;meedjum&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docroot$ &lt;span style="color: #c20cb9; font-weight: bold;"&gt;rmdir&lt;/span&gt; sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Completed Project&lt;/div&gt;
      
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.08.06.png?itok=KRAPhIbF 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.08.06.png?itok=7L9fTv8R 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.08.06.png?itok=6iGL9DEv 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.08.06.png?itok=11PErvGZ 2482w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.08.06.png?itok=KRAPhIbF" alt="Complete Blog" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.09.27.png?itok=3UGeLQMw 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.09.27.png?itok=3TCbywLN 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.09.27.png?itok=6899WDN7 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.09.27.png?itok=n1x2oYdn 1804w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2018-03/Screen%20Shot%202018-03-11%20at%2010.09.27.png?itok=3UGeLQMw" alt="Successful Blog" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Ok so in the interim I fixed the missing Font Awesome library - not something I'd noticed before, but obviously it's been gitignored and it isn't in the composer.json file. Anyhoo the site is now fully functional and you can see from the URL bar I need to append the port :9090 as per my previous port forwarding fix. &lt;/p&gt;
&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-heading field--type-string field--label-hidden field--item"&gt;Verdict&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Playing with ddev was an interesting experience, not without challenges, but ultimately rewarding. Here are some of the points I made as I went along. &lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;The &lt;em&gt;ddev exec &lt;/em&gt;command is run as root. This is a problem because it basically means using composer with it - such as &lt;em&gt;ddev exec composer update &lt;/em&gt;- would trash the file permissions of my codebase. Ownerships would become root, and that would lead to problems down the line. Composer should never be run as root. So the net effect is composer needs to be installed on the host system. Ideally I wanted a totally un-poluted filesystem without installing anything on the host beyond ddev. It also means since composer has a dependency on PHP, that needs to be installed, and now we have a system with different PHP CLI and FPM versions. &lt;/li&gt;
	&lt;li&gt;I couldn't get the &lt;em&gt;ddev import-db &lt;/em&gt;command to work. A minor inconvenience and of course it is easy to  use alternatives with the command line or drush. &lt;/li&gt;
	&lt;li&gt;Now I've got a working system - what next? I have a welter of phing targets to deploy my code, usually invoked by Jenkins. I could add phing at project level but how would I get Jenkins docker-ised up and running across all projects? I sense that could be tricky. &lt;/li&gt;
	&lt;li&gt;I can see ddev's value. I would place it in a small agency with both legacy D6 and D7 support projects alongside new D8 and WP builds. I can't see it as an enterprise solution - there is too much missing such as Memcache and the previously mentioned phing and Jenkins. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But all in all I really enjoyed my Saturday watching the football whilst playing with ddev and writing this blog - despite my teams losing! &lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
      &lt;div class="field field--name-field-blog-youtube field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-text-youtube paragraph--view-mode--default"&gt;
          
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal8" hreflang="en"&gt;Drupal 8&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal6" hreflang="en"&gt;Drupal 6&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/devops" hreflang="en"&gt;devops&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/docker" hreflang="en"&gt;Docker&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/virtualbox" hreflang="en"&gt;VirtualBox&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Sat, 10 Mar 2018 21:12:50 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">140 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 7 Feeds XPathParser RSS Import Screencast Tutorial</title>
  <link>http://badzilla.co.uk/Drupal-7-Feeds-XPathParser-RSS-Import-Screencast-Tutorial</link>
  <description>
&lt;span&gt;Drupal 7 Feeds XPathParser RSS Import Screencast Tutorial&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Sun, 08/05/2016 - 14:06&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
      &lt;div class="field field--name-field-blog-youtube field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-text-youtube paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Here's a screencast tutorial I have made for importing RSS feeds into Drupal 7 websites using the Feeds and Feeds XPathParser modules and fetching the data from Scalemates&lt;/p&gt;&lt;/div&gt;
      
            &lt;div class="field field--name-field-blog-youtube field--type-youtube field--label-hidden field--item"&gt;&lt;figure class="youtube-container youtube-container--responsive"&gt;
  &lt;iframe src="https://www.youtube.com/embed/-_uSe0yi_6k?rel=0" id="youtube-field-player" class="youtube-field-player" title="Embedded video for Drupal 7 Feeds XPathParser RSS Import Screencast Tutorial &gt; Blog Widgets" aria-label="Embedded video for Drupal 7 Feeds XPathParser RSS Import Screencast Tutorial &amp;gt; Blog Widgets: https://www.youtube.com/embed/-_uSe0yi_6k?rel=0" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;
&lt;/figure&gt;
&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/youtube" hreflang="en"&gt;YouTube Screencasts&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Sun, 08 May 2016 13:06:17 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">2 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal Critical Update SA-CORE-2014-005 - How to Fix an Infected Site</title>
  <link>http://badzilla.co.uk/Drupal-Critical-Update-SA-CORE-2014-005-How-Fix-Infected-Site</link>
  <description>
&lt;span&gt;Drupal Critical Update SA-CORE-2014-005 - How to Fix an Infected Site&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Sun, 30/11/2014 - 11:16&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;The issuing of the security advisory &lt;a href="https://www.drupal.org/SA-CORE-2014-005"&gt;SA-CORE-2014-005 - Drupal core - SQL injection&lt;/a&gt; on 15th October, and designated the status of &lt;em&gt;Critical&lt;/em&gt; sent shock waves through the Drupal community. The inference being that unless the security fix was applied within seven hours of the advisory then a Drupal site owner should expect their site to be subjected to attack.&lt;/p&gt;

&lt;p&gt;I look after many sites and quickly applied the fix to them. However I couldn't react within the seven hours - in fact I didn't even hear about the issue so quickly. Therefore it couldn't be considered a surprise when I discovered one of the sites I looked after had become infected.&lt;/p&gt;

&lt;p&gt;The security advisory is suitably vague about the consequences of any attack and so I can only supply a fix for the problems I experienced on my site. Any other infected site may have different symptoms and consequences to mine obviously, and your mileage may vary.&lt;/p&gt;

&lt;p&gt;The symptom I experienced was numerous email non delivery reports flooding my email client. All the original messages were emanating from my machine, and being created and issued through Apache Web Server meaning a script on one of my sites was generating the messages through an infected script. The subsequent attempt of external delivery was resulting the NDRs coming straight back to my email client.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/exim-processed1_0.png?itok=J1aQ0UqB 295w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/exim-processed1_0.png?itok=F8ldw73Q 590w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/exim-processed1_0.png?itok=UxHcghHs 724w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/exim-processed1_0.png?itok=J1aQ0UqB" alt="Exim" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;To diagnose the issue, I spun up the email client &lt;em&gt;mutt&lt;/em&gt; - which should be familiar with most dyed-in-the-wool Linux Engineers. Other clients will be able to provide the same information if you are not familiar or don't have mutt installed. You need to look at the header information to determine the provenance of the message so in mutt I hit return over one of the messages then hit 'h' for header information.&lt;/p&gt;

&lt;p&gt;If you look carefully you will see under the header &lt;em&gt;X-PHP_ORIGINATING-SCRIPT&lt;/em&gt; there is reference to &lt;em&gt;db60.php&lt;/em&gt; and a particular line number. Bingo! We now know what generated the emails.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;So to find the script simply issue a find command.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube &lt;span style="color: #666666; font-style: italic;"&gt;# find . | grep db60.php&lt;/span&gt;
.&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;translation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;db60.php
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube &lt;span style="color: #666666; font-style: italic;"&gt;# cd modules/translation&lt;/span&gt;
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;translation &lt;span style="color: #666666; font-style: italic;"&gt;# ls -las&lt;/span&gt;
total &lt;span style="color: #000000;"&gt;88&lt;/span&gt;
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;3&lt;/span&gt; wwwrun www  &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;26&lt;/span&gt; 04:&lt;span style="color: #000000;"&gt;53&lt;/span&gt; .
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x &lt;span style="color: #000000;"&gt;42&lt;/span&gt; wwwrun www  &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; ..
&lt;span style="color: #000000;"&gt;20&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt;  &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www &lt;span style="color: #000000;"&gt;19175&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; db60.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; drwxrwxr-x  &lt;span style="color: #000000;"&gt;2&lt;/span&gt; wwwrun www  &lt;span style="color: #000000;"&gt;4096&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; tests
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt;  &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www   &lt;span style="color: #000000;"&gt;322&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;38&lt;/span&gt; translation.info
&lt;span style="color: #000000;"&gt;24&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt;  &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www &lt;span style="color: #000000;"&gt;23389&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; translation.module
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt;  &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www  &lt;span style="color: #000000;"&gt;3278&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; translation.pages.inc
&lt;span style="color: #000000;"&gt;24&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt;  &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www &lt;span style="color: #000000;"&gt;22087&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; translation.test
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;translation &lt;span style="color: #666666; font-style: italic;"&gt;# &lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/exim2-processed.png?itok=WnMkOBrJ 295w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/exim2-processed.png?itok=XahzqK5M 590w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/exim2-processed.png?itok=HwMWUVgM 724w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/exim2-processed.png?itok=WnMkOBrJ" alt="Exim2" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;The file was copied to the &lt;em&gt;/tmp&lt;/em&gt; directory and inspected. The file is obfuscated PHP and the &lt;em&gt;eval&lt;/em&gt; command with the email generating payload is at the end.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Next step is to determine the IP address responsible for executing this script. This can be achieved by issuing the following:
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;translation &lt;span style="color: #666666; font-style: italic;"&gt;# grep db60.php /var/log/apache2/access_log | awk '{print $1}' | sort -n | uniq -c  | sort -n&lt;/span&gt;
      &lt;span style="color: #000000;"&gt;2&lt;/span&gt; 146.185.239.51&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
A whois search indicates this is a Russian address. Wherever it originates from, it needs to be blocked immediately. The best solution would be to block at it the firewall method. Since I wanted a solution then and there I blocked it first against the website by adding the address to the .htaccess file
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube &lt;span style="color: #666666; font-style: italic;"&gt;# tail -3 .htaccess&lt;/span&gt;
order allow,deny
deny from 146.185.239.51
allow from all&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now I wanted to determine how this mb60.php was being generated. I navigated to the document root of the website and the answer was apparent immediately. There should be no general.php in the root directory of a Drupal site.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube &lt;span style="color: #666666; font-style: italic;"&gt;# ls -las *.php&lt;/span&gt;
 &lt;span style="color: #000000;"&gt;8&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www  &lt;span style="color: #000000;"&gt;6604&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; authorize.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www   &lt;span style="color: #000000;"&gt;720&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; cron.php
&lt;span style="color: #000000;"&gt;24&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www &lt;span style="color: #000000;"&gt;23025&lt;/span&gt; Dec &lt;span style="color: #000000;"&gt;11&lt;/span&gt;  &lt;span style="color: #000000;"&gt;2013&lt;/span&gt; general.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www   &lt;span style="color: #000000;"&gt;529&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; index.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www   &lt;span style="color: #000000;"&gt;703&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; install.php
&lt;span style="color: #000000;"&gt;20&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www &lt;span style="color: #000000;"&gt;19986&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; update.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-rw-r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www   &lt;span style="color: #000000;"&gt;417&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; xmlrpc.php&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/exim3-processed.png?itok=_zujjQxt 295w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/exim3-processed.png?itok=mGLDwprc 590w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/exim3-processed.png?itok=maLun6lN 724w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/exim3-processed.png?itok=_zujjQxt" alt="Exim3" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Yet more obfuscated PHP code which I immediately moved away from document root into the temporary directory.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;I then decided to check the root directories of all my other Drupal 7 sites, and lo and behold I spied another rogue file, this time entitled css.php in one of them. I simple diff command proved it was a copy of the general.php file.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdsb &lt;span style="color: #666666; font-style: italic;"&gt;# ls -las *.php&lt;/span&gt;
 &lt;span style="color: #000000;"&gt;8&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt;   &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;6226&lt;/span&gt;  &lt;span style="color: #000000;"&gt;6604&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; authorize.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt;   &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;6226&lt;/span&gt;   &lt;span style="color: #000000;"&gt;720&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; cron.php
&lt;span style="color: #000000;"&gt;24&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; wwwrun www  &lt;span style="color: #000000;"&gt;23025&lt;/span&gt; Apr &lt;span style="color: #000000;"&gt;27&lt;/span&gt;  &lt;span style="color: #000000;"&gt;2014&lt;/span&gt; css.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt;   &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;6226&lt;/span&gt;   &lt;span style="color: #000000;"&gt;529&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; index.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt;   &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;6226&lt;/span&gt;   &lt;span style="color: #000000;"&gt;703&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; install.php
&lt;span style="color: #000000;"&gt;20&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt;   &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;19986&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; update.php
 &lt;span style="color: #000000;"&gt;4&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt;   &lt;span style="color: #000000;"&gt;6226&lt;/span&gt; &lt;span style="color: #000000;"&gt;6226&lt;/span&gt;   &lt;span style="color: #000000;"&gt;417&lt;/span&gt; Nov &lt;span style="color: #000000;"&gt;19&lt;/span&gt; &lt;span style="color: #000000;"&gt;20&lt;/span&gt;:&lt;span style="color: #000000;"&gt;24&lt;/span&gt; xmlrpc.php
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdsb &lt;span style="color: #666666; font-style: italic;"&gt;# less css.php&lt;/span&gt;
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sdsb &lt;span style="color: #666666; font-style: italic;"&gt;# diff css.php  /tmp/general.php&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
So the lesson is to check that your Drupal 7 installation has exactly the correct number and correctly named php scripts. 
&lt;br /&gt;
Next step is to remove all the messages in the mail queue waiting for delivery to be retried. I use exim for my MTA so my command is as follows:
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:~ &lt;span style="color: #666666; font-style: italic;"&gt;# exim -bp&lt;/span&gt;
25m  1.1K 1XtXXl-0003eD-&lt;span style="color: #000000;"&gt;98&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmusic11&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;aol.com
 
25m  1.1K 1XtXXm-0003f4-Fl &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmangtm&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com
 
25m  1.0K 1XtXXn-0003fS-2n &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulove&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;aol.com
 
25m  1.1K 1XtXXn-0003fZ-6J &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmover&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com
 
25m  1.1K 1XtXXn-0003ft-Ma &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulreaver234&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com
 
25m  1.1K 1XtXXo-0003gB-5y &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmusic11&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;aol.com
 
25m  1.0K 1XtXXo-0003gG-Ay &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulove&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;aol.com
 
25m  1.1K 1XtXXo-0003gL-Eh &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmusic11&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;aol.com
 
25m  1.1K 1XtXXo-0003gQ-Ip &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmover&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com
 
25m  1.1K 1XtXXo-0003gi-US &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulmangtm&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com
 
25m  1.1K 1XtXXp-0003gn-1v &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
          soulrider777&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com
 
25m  1.1K 1XtXXp-0003gt-6t &lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;wwwrun&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;calsync.co.uk&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;                                                   
          soulmangtm&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;gmail.com                                                                      
 
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:~ &lt;span style="color: #666666; font-style: italic;"&gt;#&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;br /&gt;
To delete using exim use:
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube &lt;span style="color: #666666; font-style: italic;"&gt;# exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | bash&lt;/span&gt;
Message 1XtXXl-0003eD-&lt;span style="color: #000000;"&gt;98&lt;/span&gt; has been removed
Message 1XtXXn-0003fZ-6J has been removed
Message 1XtXXn-0003ft-Ma has been removed
Message 1XtXXo-0003gB-5y has been removed
Message 1XtXXo-0003gG-Ay has been removed
Message 1XtXXo-0003gL-Eh has been removed
Message 1XtXXo-0003gQ-Ip has been removed
Message 1XtXXo-0003gi-US has been removed
Message 1XtXXp-0003gn-1v has been removed
Message 1XtXXp-0003gt-6t has been removed
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube &lt;span style="color: #666666; font-style: italic;"&gt;# &lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
My final (and probably worthless) step was to create a cron job to automatically delete db60.php should it reappear, although I think I'll remove this entry in a couple of weeks since I believe the entire problem is now fixed.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs &lt;span style="color: #666666; font-style: italic;"&gt;# cd /var/spool/cron/tabs/&lt;/span&gt;
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;var&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;spool&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cron&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tabs &lt;span style="color: #666666; font-style: italic;"&gt;# tail -2 root&lt;/span&gt;
&lt;span style="color: #666666; font-style: italic;"&gt;# Delete hacker script &lt;/span&gt;
&lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;rm&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tube&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;translation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;db60.php &lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;dev&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;null &lt;span style="color: #000000;"&gt;2&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&amp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;1&lt;/span&gt;
openSUSE-&lt;span style="color: #000000;"&gt;123&lt;/span&gt;-&lt;span style="color: #000000;"&gt;64&lt;/span&gt;-minimal:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;var&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;spool&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;cron&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tabs &lt;span style="color: #666666; font-style: italic;"&gt;# &lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Sun, 30 Nov 2014 11:16:19 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">8 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>tottenhamturfies.com: The Drupal game-changer</title>
  <link>http://badzilla.co.uk/tottenhamturfiescom-Drupal-game-changer</link>
  <description>
&lt;span&gt;tottenhamturfies.com: The Drupal game-changer&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Thu, 08/08/2013 - 12:32&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Traditionally the open source Drupal CMS has been the mainstay of the corporate / NGO and charity market since it lends itself perfectly to the rapid development of websites in those sectors. It also has traction for social media sites, being possibly the best equipped CMS using contributed modules for that functionality; and in addition for news portals and blog networks too.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Turfies-cropped.png?itok=cqLBTLvg 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Turfies-cropped.png?itok=bK3jFCSR 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Turfies-cropped.png?itok=BjSV-sC0 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Turfies-cropped.png?itok=oK9hKve3 1581w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Turfies-cropped.png?itok=cqLBTLvg" alt="Turfies" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Today sees the launch of the Tottenham Hotspur &lt;a href="http://www.tottenhamtufies.com/"&gt;http://www.tottenhamtufies.com&lt;/a&gt;gaming and gamification platform aimed at children aged between 7 and 10 years old. The site's underlying architecture is Drupal 7 which may not on initial consideration be the most obvious choice. The site operates in essence on a single url and presents overlays to the users to extend the experience and to play the games.&lt;/p&gt;

&lt;p&gt;In fact Drupal met the requirements perfectly. Drupal out-of-the-box comes with multi-user, multi-role capability – an essential requirement for a site that needs different levels of membership for gated content, along with back-end administration to create the content. Drupal's built-in concept of content types is ideal for these administrators to create the competitions, quizzes, quick polls and football predictions for the children, administered using a dashboard created with the Panels module.&lt;/p&gt;

&lt;p&gt;Connectivity to external API web services is easily constructed with supporting helper modules and configuration credentials can be set by extending the superadmin menu scheme making the flip between sandbox and production services a breeze.&lt;/p&gt;

&lt;p&gt;The Drupal database schema is extensible and this is the bedrock of the gamification logic. The gamification needed to cater for leaderboards, experience points, coins, medals (default blue and also a hierarchy of bronze, silver, gold), trophies, levelling up and asset unlocks upon achievement. The site also introduces the concept of 'promocodes' – unique alpha-numeric combinations of the format A2B-C3D-EF4 (with O0LI1 removed from the set of valid characters / numbers to avoid confusing the children) which can be used in an offline or online context to redeem against points, coins, trophies and medals. So, a child awarded a unique promocode for being a ball-boy at a game at White Hart Lane can type in the code on the site and have a trophy added to his trophy cabinet. The entire gamification business logic was complex but using object oriented PHP (PHP being Drupal's native language) reduced the chore of the activity.&lt;/p&gt;

&lt;p&gt;Drupal's session management enables logged in users to have their progress restored automatically when re-opening a browser. Its internal API allowed the construction of the Ajax front-end back-end handshaking mechanism so for instance a call from the front-end to the back-end to delete a user's email will trigger a whole sequence of events including gamification checks (has the user been awarded points for keeping their inbox tidy? And as a consequence of that have they won a medal or levelled up?) and subsequence database updates that would be reflected and reported back to the front-end.&lt;/p&gt;

&lt;p&gt;Throughout the lifespan of the project I was adamant that, whist Drupal was a somewhat unconventional choice in the first instance, it has proven itself and my belief that choice was correct has never wavered. Hopefully other industry professionals will have the courage to select Drupal as their choice of architecture for their avant-garde project too!&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Badzilla is Hangar Seven's Consultant Technical Director&lt;/em&gt;&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Thu, 08 Aug 2013 11:32:46 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">10 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 7 - Setting Up Piecemaker 3D Slider with InnoCompany Theme</title>
  <link>http://badzilla.co.uk/Drupal-7--Setting-Up-Piecemaker-3D-Slider-with-InnoCompany-Theme</link>
  <description>
&lt;span&gt;Drupal 7 - Setting Up Piecemaker 3D Slider with InnoCompany Theme&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Sat, 08/06/2013 - 12:49&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Subsequent to my earlier blog on installing and setting up the commercial InnoCompany Drupal 7 theme, it is now time to do something useful - set up the Piecemaker 3D slider which is based on Flash animation, with an XML configuration file. Thankfully a lot of the work has already been bundled into the InnoCompany theme and there isn't that much to do. Principally the slider images, captions and links are included in theme configuration, and there are 10 available placeholders which means the carousel may have up to 10 images. Once this has been saved as &lt;em&gt;theme settings&lt;/em&gt; it is retrieved in &lt;strong&gt;template.php-&gt;icomp_get_slider_html()-&gt;icomp_prepare_piecemaker()&lt;/strong&gt; and the XML file is written out for the Flash file to process.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider3.png?itok=pWEyEtvM 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Slider3.png?itok=6LiJ338A 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Slider3.png?itok=LaqiGJeg 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Slider3.png?itok=9a8xHah9 1517w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider3.png?itok=pWEyEtvM" alt="Slider3" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Go to &lt;em&gt;admin/appearance/settings/icompany&lt;/em&gt; and scroll down to the Slider setting. Change the selection to &lt;strong&gt;Piecemaker Slider&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider4.png?itok=6m2qCnjB 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Slider4.png?itok=1CISL5OL 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Slider4.png?itok=YRxM65aQ 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Slider4.png?itok=bm2i1gVw 1512w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider4.png?itok=6m2qCnjB" alt="Slider4" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Click on the next tab down and start populating each image in the carousel. &lt;strong&gt;Note well that you need to make your images 1050px by 400px&lt;/strong&gt; and not the 1170x450px as prompted. The dimensions suggested are for the other slider types included in the theme that span the entire web page width. Piecemaker 3D needs to sit inside its own div containers. Furthermore, the ratios are slightly different as I discovered to my cost. Now the fields - I copied my images to a directory below the standard image area - &lt;em&gt;/sites/default/images/slider&lt;/em&gt;. The target link for the image should be a valid landing page, and ideally pertinent to the image you are showing. In my case, it's the portfolio narrative item for the experience the image is showing.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider6.png?itok=9sFmEvkh 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Slider6.png?itok=aSkDU6Wn 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Slider6.png?itok=4CLiNMqX 1209w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider6.png?itok=9sFmEvkh" alt="Slide6" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;If you now save your carousel settings then navigate to your homepage (remember to flush your browser's cache also) you should see your completed slider. However, there is a bug we still need to deal with...&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider5.png?itok=KiWiY2Cf 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Slider5.png?itok=qDc09pGD 569w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Slider5.png?itok=KiWiY2Cf" alt="Slider5" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Clicking on &lt;em&gt;Info&lt;/em&gt; shows the heading and caption associated with the image. However, there is a bug in the previously mentioned &lt;em&gt;template.php&lt;/em&gt; file - when it writes out the XML file it uses the H2 tag for the heading text and not H1. This can be fixed by either editing the template file or the css file. I elected to edit the css file...&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;Change the &lt;strong&gt;/sites/all/themes/icompany/sliders/piecemaker/piecemaker.css&lt;/strong&gt; file
&lt;div class="geshifilter"&gt;&lt;div class="css geshifilter-css" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #808080; font-style: italic;"&gt;/* CSS Document */&lt;/span&gt;
 
H2 &lt;span style="color: #00AA00;"&gt;{&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;font-family&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; Verdana&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;font-style&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #993333;"&gt;bold&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;font-weight&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #993333;"&gt;normal&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;color&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #cc00cc;"&gt;#222222&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;display&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #993333;"&gt;block&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;font-size&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #933;"&gt;20px&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;margin-bottom&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #933;"&gt;10px&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;line-height&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #cc66cc;"&gt;30&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;text-align&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #993333;"&gt;left&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
        &lt;span style="color: #000000; font-weight: bold;"&gt;letter-spacing&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;:&lt;/span&gt; &lt;span style="color: #933;"&gt;0px&lt;/span&gt;&lt;span style="color: #00AA00;"&gt;;&lt;/span&gt;
&lt;span style="color: #00AA00;"&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Note how I've changed the H1 to H2 so the XML finds the correct tag. You can take this opportunity to edit the tag to how you want it output in the info box. 

That's all there is to it :)&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Sat, 08 Jun 2013 11:49:22 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">11 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 7 - Installing and Setting Up the Commercial InnoCompany Theme</title>
  <link>http://badzilla.co.uk/Drupal-7--Installing-Setting-Up-Commercial-InnoCompany-Theme</link>
  <description>
&lt;span&gt;Drupal 7 - Installing and Setting Up the Commercial InnoCompany Theme&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Sun, 02/06/2013 - 13:58&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;This is a tutorial for installing and setting up the commercial InnoCompany Theme that retails for around $45 in the US (£32 or so in the UK). The theme offers a multi-purpose corporate solution, but my own use is to create a portfolio site. I consider myself a back-end Drupal dev first and foremost, and my feeling is it would take me too long to create a neat portfolio site (which must of course be Drupal) from scratch. That effort would detract from my paid work for my clients and the &lt;em&gt;pro bono&lt;/em&gt; weekend work I undertake for charities.&lt;/p&gt;

&lt;p&gt;Despite the theme being constructed by WorthAPost, payment is I actually made to &lt;a href="http://themeforest.net/"&gt;themeforest&lt;/a&gt;. Once the theme is bought it can be downloaded as a zip file.&lt;/p&gt;

&lt;p&gt;To follow this tutorial, the following assumptions are made:&lt;/p&gt;

&lt;ul&gt;
	&lt;li&gt;You have already set up a LAMP stack on your rig with a working Apache server and PHP and MySQL&lt;/li&gt;
	&lt;li&gt;You have &lt;a href="https://drupal.org/project/drush"&gt;Drush&lt;/a&gt; installed&lt;/li&gt;
	&lt;li&gt;You have an understanding of Linux command line&lt;/li&gt;
	&lt;li&gt;You have at least a passing knowledge of Drupal 7&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ok, so firstly navigate to the innocompany download which under most circumstances will by either in your home downloads directory, or in my case /tmp.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:~&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ls&lt;/span&gt; &lt;span style="color: #660033;"&gt;-las&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;.zip
&lt;span style="color: #000000;"&gt;29452&lt;/span&gt; &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; badzilla &lt;span style="color: #c20cb9; font-weight: bold;"&gt;users&lt;/span&gt; &lt;span style="color: #000000;"&gt;30158778&lt;/span&gt; May &lt;span style="color: #000000;"&gt;31&lt;/span&gt; &lt;span style="color: #000000;"&gt;21&lt;/span&gt;:&lt;span style="color: #000000;"&gt;40&lt;/span&gt; themeforest-&lt;span style="color: #000000;"&gt;3177223&lt;/span&gt;-innocompany-multipurpose-corporate-drupal-theme.zip
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt; 
The zip file expands into the current directory (nasty and messy) so create a subdirectory and move the zip file into it, then unzip
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;mkdir&lt;/span&gt; innocompany
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;cp&lt;/span&gt; ..&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;themeforest-&lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; .
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;unzip&lt;/span&gt; themeforest-&lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
The zip file expands to quite a complicated file structure. It ships with features and views to minimise the effort of setting up the theme since these are dependencies. The entire directory tree is shown below.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;find&lt;/span&gt; .&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; &lt;span style="color: #660033;"&gt;-type&lt;/span&gt; d &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sed&lt;/span&gt; &lt;span style="color: #660033;"&gt;-e&lt;/span&gt; &lt;span style="color: #ff0000;"&gt;'s/[^-][^\/]*\//--/g;s/--/ |-/'&lt;/span&gt;
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-theme_with_demo_installation
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---compressed_database
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-standalone_theme
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---icompany
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----forum
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----sliders
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------iview
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------img
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------skin1
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------skin4
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------piecemaker
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------scripts
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------swfobject
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------flex
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------nivo
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------themes
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------bar
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------elastic
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----simplenews
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----img
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------slides
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------icons
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------&lt;span style="color: #000000;"&gt;48&lt;/span&gt;
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------picons
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------bg
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----views
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------ie6
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----cache
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----fonts
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----includes
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-licensing
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-Documentation
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---img
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---bootstrap
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----img
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-psd
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-modules
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---features
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----tests
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----includes
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----theme
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---jquery_update
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----replace
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------minified
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------------i18n
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------i18n
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------themes
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----------base
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------------minified
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------external
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------jquery
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------&lt;span style="color: #000000;"&gt;1.5&lt;/span&gt;
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------&lt;span style="color: #000000;"&gt;1.7&lt;/span&gt;
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------&lt;span style="color: #000000;"&gt;1.8&lt;/span&gt;
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------misc
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------&lt;span style="color: #000000;"&gt;1.7&lt;/span&gt;
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---token
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----tests
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---icompany_config
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---views
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----views_export
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----tests
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------test_plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------taxonomy
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------user
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------node
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------templates
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------styles
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------field
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------handlers
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------comment
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------export_ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------views_wizard
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------ie
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----help
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----handlers
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----includes
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----drush
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----modules
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------translation
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------taxonomy
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------user
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------filter
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------node
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------locale
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------aggregator
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------search
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------system
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------profile
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------tracker
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------field
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------statistics
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------book
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------contact
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------comment
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----theme
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---icompany_module
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----.settings
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---ctools
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----page_manager
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------task_handlers
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------tasks
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------cache
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------help
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------theme
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----ctools_ajax_sample
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----tests
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------ctools_export_test
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------not_cached
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------cached
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----bulk_export
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----ctools_plugin_example
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------content_types
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------access
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------relationships
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------arguments
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------contexts
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------help
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----stylizer
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------export_ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------content_types
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------entity_context
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------term_context
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------block
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------node_form
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------node_context
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------token
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------page
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------custom
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------node
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------search
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------form
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------user_context
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------vocabulary_context
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------contact
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------comment
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------access
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------relationships
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------export_ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------arguments
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------cache
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------contexts
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----ctools_custom_content
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------export_ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----views_content
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------content_types
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------views
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------relationships
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------contexts
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----css
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----ctools_access_ruleset
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------plugins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------access
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---------export_ui
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----help
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----includes
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----drush
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----images
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;---jcarousel
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----js
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----skins
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------default
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-------tango
 &lt;span style="color: #000000; font-weight: bold;"&gt;|&lt;/span&gt;-----includes&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Next you will need to create a MySQL database for your site. I tend to do this on the command line - a habit I've got into.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; mysql &lt;span style="color: #660033;"&gt;-u&lt;/span&gt; root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection &lt;span style="color: #c20cb9; font-weight: bold;"&gt;id&lt;/span&gt; is &lt;span style="color: #000000;"&gt;181&lt;/span&gt;
Server version: 5.5.28-log Source distribution
 
Copyright &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;c&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;2000&lt;/span&gt;, &lt;span style="color: #000000;"&gt;2012&lt;/span&gt;, Oracle and&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type &lt;span style="color: #ff0000;"&gt;'help;'&lt;/span&gt; or &lt;span style="color: #ff0000;"&gt;'\h'&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; help. Type &lt;span style="color: #ff0000;"&gt;'\c'&lt;/span&gt; to &lt;span style="color: #c20cb9; font-weight: bold;"&gt;clear&lt;/span&gt; the current input statement.
 
mysql&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; CREATE DATABASE portfolio;
database created
mysql&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; GRANT ALL PRIVILEGES ON portfolio.&lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt; TO &lt;span style="color: #ff0000;"&gt;'database_username'&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;'localhost'&lt;/span&gt; WITH GRANT OPTION;
Query OK, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; rows affected &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;0.77&lt;/span&gt; sec&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
mysql&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; quit
Bye&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
You will need to change database_username to whatever value you are using. 
Next we need to create the document root for the website - and this is where the convention varies between Linux distros. Since I'm using openSUSE I placed my website under &lt;strong&gt;/srv/www/htdocs/&lt;/strong&gt; but I know other distros such as the immensely popular Ubuntu uses &lt;strong&gt;/var/www/html/&lt;/strong&gt;. Pick whichever is appropriate for your rig. Whichever you choose, ensure that:
&lt;ul&gt;
&lt;li&gt;Apache user and group has write access to the document root&lt;/li&gt;
&lt;li&gt; The user you use at the command line is a member of the Apache group and the directory has group write permissions&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; drush dl drupal
Project drupal &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;7.22&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; downloaded to &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;drupal-&lt;span style="color: #000000;"&gt;7.22&lt;/span&gt;.                                                 &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;success&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
Project drupal contains:                                                                                         &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;success&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
 - &lt;span style="color: #000000;"&gt;3&lt;/span&gt; profiles: minimal, testing, standard
 - &lt;span style="color: #000000;"&gt;4&lt;/span&gt; themes: seven, garland, bartik, stark
 - &lt;span style="color: #000000;"&gt;47&lt;/span&gt; modules: comment, syslog, menu, shortcut, simpletest, contact, trigger, book, statistics, field_ui, update,
dblog, contextual, list, options, field_sql_storage, text, number, field, openid, path, image, tracker, &lt;span style="color: #7a0874; font-weight: bold;"&gt;help&lt;/span&gt;,
profile, system, search, aggregator, rdf, locale, node, filter, poll, dashboard, color, block, blog, user,
overlay, taxonomy, forum, translation, &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt;, php, toolbar, drupal_system_listing_compatible_test,
drupal_system_listing_incompatible_test
 
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;mv&lt;/span&gt; drupal-&lt;span style="color: #000000;"&gt;7.22&lt;/span&gt; portfolio
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Note how I use drush to download the latest version of Drupal and then since it creates the directory under the name of the latest version of Drupal, I rename it to portfolio since that's what I want my document root to be called. 

You can now install the Drupal download, and this can be effected by using Drush. Change directory to inside portfolio and execute the following command below. It is unimportant what you specify for the Drupal user 1 values since they will be overwritten shortly when we create the InnoCompany demo data. However, you will need to change your database username, password and db name. Also I've had problems in the past with Drupal understanding localhost so I always use 127.0.0.1 instead. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; portfolio
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; drush site-install standard &lt;span style="color: #660033;"&gt;--account-name&lt;/span&gt;=admin &lt;span style="color: #660033;"&gt;--account-pass&lt;/span&gt;=admin &lt;span style="color: #660033;"&gt;--db-url&lt;/span&gt;=mysql:&lt;span style="color: #000000; font-weight: bold;"&gt;//&lt;/span&gt;your_username:your_password&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;127.0.0.1&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;your_db_name
You are about to create a sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files directory and create a sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;settings.php &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt; and DROP all tables &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; your &lt;span style="color: #ff0000;"&gt;'portfolio'&lt;/span&gt; database. Do you want to &lt;span style="color: #7a0874; font-weight: bold;"&gt;continue&lt;/span&gt;? &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;y&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;n&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;: y
Starting Drupal installation. This takes a few seconds ...                                                       &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;ok&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
Installation complete.  User name: admin  User password: admin                                                   &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;ok&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now it's almost time to check you have a functioning website - but that will need a change to the Apache configuration first. Here your mileage will vary dependent upon your setup. I am adding to the httpd.conf file (not necessarily a good idea since changes could be lost in a system upgrade), and your configuration could be different.
&lt;strong&gt;/etc/apache2/httpd.conf&lt;/strong&gt; 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;VirtualHost &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;:&lt;span style="color: #000000;"&gt;80&lt;/span&gt;&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
	DocumentRoot &lt;span style="color: #ff0000;"&gt;"/srv/www/htdocs/portfolio"&lt;/span&gt;
	ServerName portfolio.localhost
        ServerAlias portfolio.localhost
	RewriteEngine On
	RewriteOptions Inherit
&lt;span style="color: #000000; font-weight: bold;"&gt;&lt;/&lt;/span&gt;VirtualHost&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
 
&lt;span style="color: #000000; font-weight: bold;"&gt;&lt;&lt;/span&gt;Directory &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;
	Options &lt;span style="color: #660033;"&gt;-Indexes&lt;/span&gt; +FollowSymLinks
	AllowOverride All
	Order allow,deny
	Allow from all
&lt;span style="color: #000000; font-weight: bold;"&gt;&lt;/&lt;/span&gt;directory&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Next an entry to the hosts file is required to ensure you can actually point a browser at your site.
&lt;strong&gt;/etc/hosts&lt;/strong&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;127.0.0.1	portfolio.localhost&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now it's time for an Apache reboot
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;etc&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;init.d&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;apache2 restart
redirecting to systemctl
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio1.png?itok=0mAeFIft 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Portfolio1.png?itok=7I7r8vpI 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Portfolio1.png?itok=z_BDzV6H 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Portfolio1.png?itok=jy9w_PdR 1600w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio1.png?itok=0mAeFIft" alt="Portfolio" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;By pointing a browser to &lt;em&gt;portfolio.localhost&lt;/em&gt; you should be able to see the website, albeit without (as yet) the InnoCompany theme and functionality&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;I noticed that the &lt;a href="https://drupal.org/project/webform"&gt;Webform&lt;/a&gt; module is not listed in the directory tree above, yet the site does use it for the contact form. So this needs to be added. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; drush dl webform
Project webform &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;7&lt;/span&gt;.x-&lt;span style="color: #000000;"&gt;3.19&lt;/span&gt;&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; downloaded to &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;webform.                    &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;success&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; drush en webform &lt;span style="color: #660033;"&gt;-y&lt;/span&gt;
The following extensions will be enabled: webform
Do you really want to &lt;span style="color: #7a0874; font-weight: bold;"&gt;continue&lt;/span&gt;? &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;y&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;n&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;: y
webform was enabled successfully.                                                                                &lt;span style="color: #7a0874; font-weight: bold;"&gt;[&lt;/span&gt;ok&lt;span style="color: #7a0874; font-weight: bold;"&gt;]&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Now let's copy over the modules from the InnoCompany directory tree. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ls&lt;/span&gt;
README.txt  webform
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;cp&lt;/span&gt; &lt;span style="color: #660033;"&gt;-R&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/*&lt;/span&gt; .
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ls&lt;/span&gt;
ctools  features  icompany_config  icompany_module  jcarousel  jquery_update  README.txt  token  views  webform
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
The theme is situated in the standalone_theme directory in the tree, in a zip file. So unzip this into sites/all/themes as per the Drupal convention.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;modules&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;icompany_config&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; ..&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;..&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;themes&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;themes&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;unzip&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;standalone_theme&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;icompany.zip
Archive:  &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;standalone_theme&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;icompany.zip
   creating: icompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
  inflating: icompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;block--footer1.tpl.php  
  inflating: icompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;block--footer2.tpl.php  
etc.....&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
In the Documentation directory in the tree there is a file called docs.html that unsurprisingly contains useful configuration information. So copy this to the document root along with its supporting img directory files &lt;strong&gt;BUT REMEMBER TO DELETE THIS FILE BEFORE HOSTING YOUR WEBSITE!!&lt;/strong&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;all&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;themes&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; ..&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;..&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;..
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;cp&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;Documentation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;docs.html .
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;cp&lt;/span&gt; &lt;span style="color: #660033;"&gt;-R&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;Documentation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;img .&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
Ok so now we need to add the sql statements provided by WorthAPost - this will provide all the startup data to pre-populate our Drupal database. I've elected for the strategy of using the test data and amending to fit my circumstances rather than building from scratch. The test data db commands can be found in the directory tree at theme_with_demo_installation in a zipped file with a filename commencing InnoCompany-
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;theme_with_demo_installation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;compressed_database&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;ls&lt;/span&gt; &lt;span style="color: #660033;"&gt;-lash&lt;/span&gt;
total 160K
4.0K drwxr-xr-x &lt;span style="color: #000000;"&gt;2&lt;/span&gt; badzilla &lt;span style="color: #c20cb9; font-weight: bold;"&gt;users&lt;/span&gt; 4.0K Apr &lt;span style="color: #000000;"&gt;20&lt;/span&gt; &lt;span style="color: #000000;"&gt;23&lt;/span&gt;:&lt;span style="color: #000000;"&gt;16&lt;/span&gt; .
4.0K drwxr-xr-x &lt;span style="color: #000000;"&gt;3&lt;/span&gt; badzilla &lt;span style="color: #c20cb9; font-weight: bold;"&gt;users&lt;/span&gt; 4.0K Apr &lt;span style="color: #000000;"&gt;20&lt;/span&gt; &lt;span style="color: #000000;"&gt;23&lt;/span&gt;:&lt;span style="color: #000000;"&gt;19&lt;/span&gt; ..
152K &lt;span style="color: #660033;"&gt;-rw-r--r--&lt;/span&gt; &lt;span style="color: #000000;"&gt;1&lt;/span&gt; badzilla &lt;span style="color: #c20cb9; font-weight: bold;"&gt;users&lt;/span&gt; 152K Apr &lt;span style="color: #000000;"&gt;20&lt;/span&gt; &lt;span style="color: #000000;"&gt;23&lt;/span&gt;:&lt;span style="color: #000000;"&gt;16&lt;/span&gt; InnoCompany-&lt;span style="color: #000000;"&gt;2013&lt;/span&gt;-04-20T23-&lt;span style="color: #000000;"&gt;16&lt;/span&gt;-&lt;span style="color: #000000;"&gt;41&lt;/span&gt;.mysql.gz
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;theme_with_demo_installation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;compressed_database&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;gunzip&lt;/span&gt; InnoCompany-&lt;span style="color: #000000;"&gt;2013&lt;/span&gt;-04-20T23-&lt;span style="color: #000000;"&gt;16&lt;/span&gt;-&lt;span style="color: #000000;"&gt;41&lt;/span&gt;.mysql.gz
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;theme_with_demo_installation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;compressed_database&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; mysql &lt;span style="color: #660033;"&gt;-u&lt;/span&gt; your_db_username &lt;span style="color: #660033;"&gt;-p&lt;/span&gt; portfolio
Enter password: 
Reading table information &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; completion of table and column names
You can turn off this feature to get a quicker startup with &lt;span style="color: #660033;"&gt;-A&lt;/span&gt;
 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection &lt;span style="color: #c20cb9; font-weight: bold;"&gt;id&lt;/span&gt; is &lt;span style="color: #000000;"&gt;193&lt;/span&gt;
Server version: 5.5.28-log Source distribution
 
Copyright &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;c&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt; &lt;span style="color: #000000;"&gt;2000&lt;/span&gt;, &lt;span style="color: #000000;"&gt;2012&lt;/span&gt;, Oracle and&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type &lt;span style="color: #ff0000;"&gt;'help;'&lt;/span&gt; or &lt;span style="color: #ff0000;"&gt;'\h'&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;for&lt;/span&gt; help. Type &lt;span style="color: #ff0000;"&gt;'\c'&lt;/span&gt; to &lt;span style="color: #c20cb9; font-weight: bold;"&gt;clear&lt;/span&gt; the current input statement.
 
mysql&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;source&lt;/span&gt; InnoCompany-&lt;span style="color: #000000;"&gt;2013&lt;/span&gt;-04-20T23-&lt;span style="color: #000000;"&gt;16&lt;/span&gt;-&lt;span style="color: #000000;"&gt;41&lt;/span&gt;.mysql;
...etc...
Query OK, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; rows affected &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;0.00&lt;/span&gt; sec&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
 
Query OK, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; rows affected &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;0.00&lt;/span&gt; sec&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
 
Query OK, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; rows affected &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;0.00&lt;/span&gt; sec&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
 
Query OK, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; rows affected &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;0.00&lt;/span&gt; sec&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
 
Query OK, &lt;span style="color: #000000;"&gt;0&lt;/span&gt; rows affected &lt;span style="color: #7a0874; font-weight: bold;"&gt;(&lt;/span&gt;&lt;span style="color: #000000;"&gt;0.00&lt;/span&gt; sec&lt;span style="color: #7a0874; font-weight: bold;"&gt;)&lt;/span&gt;
 
mysql&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
There are a number of test images which belong in sites/default/files. These are buried quite deep in the InnoCompany filesystem and first need expanding out of an entire Drupal build and then copying to the correct place.
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #7a0874; font-weight: bold;"&gt;cd&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;theme_with_demo_installation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;theme_with_demo_installation&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;unzip&lt;/span&gt; themeforest-&lt;span style="color: #000000;"&gt;3177223&lt;/span&gt;-innocompany-multipurpose-corporate-drupal-theme.zip
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;cp&lt;/span&gt; &lt;span style="color: #660033;"&gt;-R&lt;/span&gt; &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;tmp&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;innocompany&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;theme_with_demo_installation&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/*&lt;/span&gt; sites&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;default&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;files&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;.
badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio2.png?itok=GSG5R4DE 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Portfolio2.png?itok=KMZAPl71 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Portfolio2.png?itok=pQ1MxuzX 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Portfolio2.png?itok=iIMhPuqH 1600w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio2.png?itok=GSG5R4DE" alt="Portfolio2" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Now refresh your browser and you will see the site appear, albeit the site in maintenance mode screen.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio3.png?itok=pcjiit2c 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Portfolio3.png?itok=LaTRQbRg 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Portfolio3.png?itok=BdVN7Kw8 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Portfolio3.png?itok=4-RyN9YP 1600w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio3.png?itok=pcjiit2c" alt="Portfolio3" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Navigate to /user and login with the credentials of Username: worthapost and password of worthapost. Once you are in, immediately change the username and the password by clicking on your username (top right) and then the &lt;em&gt;Edit&lt;/em&gt; tab. You will also probably want to change the timezone setting at the same time.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio4.png?itok=gxB53PVW 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Portfolio4.png?itok=nydCV_bn 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Portfolio4.png?itok=mm51sZTo 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Portfolio4.png?itok=KTlT51ut 1600w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio4.png?itok=gxB53PVW" alt="Portfolio4" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;Take a look at /docs.html and you'll see the config page that came with the installation.&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;It is now worthwhile to perform some tidy-up activities, such as ensure that the permissions are set correctly on the filesystem, and update.php has been run. 
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;badzilla&lt;span style="color: #000000; font-weight: bold;"&gt;@&lt;/span&gt;linux-ldan:&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;srv&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;www&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;htdocs&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;portfolio&lt;span style="color: #000000; font-weight: bold;"&gt;&gt;&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;sudo&lt;/span&gt; &lt;span style="color: #c20cb9; font-weight: bold;"&gt;chown&lt;/span&gt; &lt;span style="color: #660033;"&gt;-R&lt;/span&gt; wwwrun:www &lt;span style="color: #000000; font-weight: bold;"&gt;*&lt;/span&gt;
root&lt;span style="color: #ff0000;"&gt;'s password:
badzilla@linux-ldan:/srv/www/htdocs/portfolio&gt; sudo chown -R wwwrun:www .*
badzilla@linux-ldan:/srv/www/htdocs/portfolio&gt; sudo chmod -R ag+w *
badzilla@linux-ldan:/srv/www/htdocs/portfolio&gt; drush updatedb
Operations on Unicode strings are emulated on a best-effort basis. Install the PHP mbstring extension for        [warning]
improved Unicode support. (Currently using Unicode library Standard PHP)
The following updates are pending:
 
webform module : 
  7321 -   Remove files left over from deleted submissions. Such files are now deleted  automatically. 
 
Do you wish to run all pending updates? (y/n): y
Operations on Unicode strings are emulated on a best-effort basis. Install the PHP mbstring extension for        [warning]
improved Unicode support. (Currently using Unicode library Standard PHP)
Performed update: webform_update_7321                                                                            [ok]
Finished performing updates.                                                                                     [ok]
badzilla@linux-ldan:/srv/www/htdocs/portfolio&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
You should now have a fully functioning website. There is now plenty to do since you need to replace all the test data with your own, and your basic site details (such as name, email address etc) should be set by going to admin/config/system/site-information. All these activities can be worked on in the fullness of time, and I will be providing more tutorials to aid that process as I build my own portfolio site.&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
      &lt;div class="field field--name-field-blog-image field--type-image field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;    &lt;img srcset="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio5.png?itok=lN1kBJY2 325w, https://assets.badzilla.co.uk/s3fs-public/styles/max_650x650/public/2017-09/Portfolio5.png?itok=TxAAIlIt 650w, https://assets.badzilla.co.uk/s3fs-public/styles/max_1300x1300/public/2017-09/Portfolio5.png?itok=o9SQGtze 1300w, https://assets.badzilla.co.uk/s3fs-public/styles/max_2600x2600/public/2017-09/Portfolio5.png?itok=61ue61Ax 1600w" sizes="(min-width: 1290px) 1290px, 100vw" src="https://assets.badzilla.co.uk/s3fs-public/styles/max_325x325/public/2017-09/Portfolio5.png?itok=lN1kBJY2" alt="Portfolio5" typeof="foaf:Image" class="img-responsive" /&gt;


&lt;/div&gt;
          &lt;/div&gt;
  
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Sun, 02 Jun 2013 12:58:00 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">12 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 7 - User Restrictions Batch Module</title>
  <link>http://badzilla.co.uk/Drupal-7--User-Restrictions-Batch-Module</link>
  <description>
&lt;span&gt;Drupal 7 - User Restrictions Batch Module&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Mon, 04/03/2013 - 15:25&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;This module extends the existing user_restrictions module by providing a mechanism for the bulk import of prohibited words in the screen name during user registration. This is useful to ensure that on a community site no users attempt to create accounts with offensive names. Without this module, any admin wishing to add a few hundred words to the user_restrictions list would face quite an onerous chore to type them all in. With the module, they can be cut and pasted from an existing source into a textarea in one go. The textarea allows for carriage return / linefeeds and will also remove commas between words. 

The module was very easy to put together, so I don't believe there is anything requiring further expansion. If you disagree, drop me a line and I'll answer your questions. :)

&lt;strong&gt;user_resitrictions_batch.module&lt;/strong&gt;
&lt;div class="codeblock geshifilter"&gt;&lt;code&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #0000BB"&gt;&lt;?php&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/*&lt;br /&gt; * File         : user_restrictions_batch.module&lt;br /&gt; * Title        : Batch add of user restrictions&lt;br /&gt; * Sponsor      : Hangar Seven Digital&lt;br /&gt; * Author       : Badzilla www.badzilla.co.uk @badzillacouk&lt;br /&gt; *&lt;br /&gt; * This work is copyright Badzilla under the GPL licence terms and conditions&lt;br /&gt; *&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt; * Implements hook_menu().&lt;br /&gt; */&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #007700"&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;user_restrictions_batch_menu&lt;/span&gt;&lt;span style="color: #007700"&gt;() {&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$edit_restrictions &lt;/span&gt;&lt;span style="color: #007700"&gt;= array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'edit user restriction rules'&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$items &lt;/span&gt;&lt;span style="color: #007700"&gt;= array();&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$items&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'admin/config/people/user-restrictions/batch-input'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'title' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Batch input '&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'page callback' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'drupal_get_form'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'page arguments' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'user_restrictions_batch_input_form'&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;4&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'access arguments' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$edit_restrictions&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;MENU_LOCAL_ACTION&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;    );&lt;br /&gt;&lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$items&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;user_restrictions_batch_input_form&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;, &amp;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form &lt;/span&gt;&lt;span style="color: #007700"&gt;= array();&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'banned'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'textarea'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#title' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Enter prohibited words'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#required' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;TRUE&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#weight' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#value' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Save rule'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;    );&lt;br /&gt;&lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;;    &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;user_restrictions_batch_input_form_submit&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;, &amp;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$lines &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;explode&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;"\r\n"&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'values'&lt;/span&gt;&lt;span style="color: #007700"&gt;][&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'banned'&lt;/span&gt;&lt;span style="color: #007700"&gt;]);&lt;br /&gt;    if (&lt;/span&gt;&lt;span style="color: #0000BB"&gt;count&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$lines&lt;/span&gt;&lt;span style="color: #007700"&gt;)) &lt;br /&gt;        foreach(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$lines &lt;/span&gt;&lt;span style="color: #007700"&gt;as &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$line&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrases &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;explode&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;","&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$line&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;&lt;br /&gt;            if (&lt;/span&gt;&lt;span style="color: #0000BB"&gt;count&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrases&lt;/span&gt;&lt;span style="color: #007700"&gt;))&lt;br /&gt;                foreach(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrases &lt;/span&gt;&lt;span style="color: #007700"&gt;as &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrase&lt;/span&gt;&lt;span style="color: #007700"&gt;)&lt;br /&gt;                    if (&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrase &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;trim&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrase&lt;/span&gt;&lt;span style="color: #007700"&gt;))&lt;br /&gt;                        &lt;/span&gt;&lt;span style="color: #0000BB"&gt;db_insert&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'user_restrictions'&lt;/span&gt;&lt;span style="color: #007700"&gt;)&lt;br /&gt;                            -&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;fields&lt;/span&gt;&lt;span style="color: #007700"&gt;(array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'urid' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;NULL&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'mask' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$phrase&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'name'&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'subtype' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;''&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'status' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'expire' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;))&lt;br /&gt;                            -&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;execute&lt;/span&gt;&lt;span style="color: #007700"&gt;();&lt;br /&gt;        }    &lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;

&lt;strong&gt;user_resitrictions_batch.info&lt;/strong&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;name = User restrictions_batch
description = Brute force batch insertion of restricted words.
core = &lt;span style="color: #000000;"&gt;7&lt;/span&gt;.x
project = &lt;span style="color: #ff0000;"&gt;"user_restrictions"&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/php" hreflang="en"&gt;PHP&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Mon, 04 Mar 2013 15:25:18 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">16 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 7 - Node Limit Publish Module</title>
  <link>http://badzilla.co.uk/Drupal-7--Node-Limit-Publish-Module</link>
  <description>
&lt;span&gt;Drupal 7 - Node Limit Publish Module&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Fri, 04/01/2013 - 15:29&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;This module adds a configurable limit to how many nodes of any content type can be published at any one time. This is useful in circumstances such as when a website has created content types of polls or competitions or quizzes but only one of each type can be live and published at any one time. Of course the module allows limits other than 1 in case there is such a circumstance. The default is 0 which means unlimited. A web author may create content and exceed the limits providing the content remains unpublished. This allows for content to be created in advance of publication. 
&lt;br /&gt;&lt;br /&gt;
If a web author attempts to publish some content which would exceed the limit, the content is saved as unpublished.
&lt;br /&gt;&lt;br /&gt;
The admin should go to admin/config/content/node_limit_publish to set the limits for each content type known to the system. 
&lt;br /&gt;&lt;br /&gt;
&lt;strong&gt;node_limit_publish.info&lt;/strong&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;name = Node Limit Publish
description = Limit the number of published nodes per &lt;span style="color: #7a0874; font-weight: bold;"&gt;type&lt;/span&gt;
core = &lt;span style="color: #000000;"&gt;7&lt;/span&gt;.x
configure = admin&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;config&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;content&lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt;node_limit_publish&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;strong&gt;node_limit_publish.module&lt;/strong&gt;
&lt;div class="codeblock geshifilter"&gt;&lt;code&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #0000BB"&gt;&lt;?php&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/*&lt;br /&gt; * File         : node_limit_publish.module&lt;br /&gt; * Title        : Limits the number of concurrently published node types dependent upon admin configurable limits&lt;br /&gt; * Sponsor      : Hangar Seven Digital&lt;br /&gt; * Author       : Badzilla www.badzilla.co.uk @badzillacouk&lt;br /&gt; *&lt;br /&gt; * This work is copyright Badzilla under the GPL licence terms and conditions&lt;br /&gt; *&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* Implementation of hook_menu().&lt;br /&gt;*&lt;br /&gt;*/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #007700"&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;node_limit_publish_menu&lt;/span&gt;&lt;span style="color: #007700"&gt;() {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$items &lt;/span&gt;&lt;span style="color: #007700"&gt;= array();&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$items&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'admin/config/content/node_limit_publish'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'title' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Limit Number of Published Nodes per Node Type'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'description' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Zero represents an unlimited amount of published nodes'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'page callback' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'drupal_get_form'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'page arguments' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'node_limit_publish_admin_settings'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'access arguments' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'administer node_limit_publish'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;MENU_NORMAL_ITEM&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;    );&lt;br /&gt;    &lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$items&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;node_limit_publish_admin_settings&lt;/span&gt;&lt;span style="color: #007700"&gt;() {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form &lt;/span&gt;&lt;span style="color: #007700"&gt;= array();&lt;br /&gt;&lt;br /&gt;    if (&lt;/span&gt;&lt;span style="color: #0000BB"&gt;is_array&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$types &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;node_type_get_types&lt;/span&gt;&lt;span style="color: #007700"&gt;())) {&lt;br /&gt;&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'title'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#markup' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Zero represents an unlimited amount of published nodes'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        );&lt;br /&gt;&lt;br /&gt;        foreach(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$types &lt;/span&gt;&lt;span style="color: #007700"&gt;as &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$key &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$value&lt;/span&gt;&lt;span style="color: #007700"&gt;) &lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'node_limit_publish_'&lt;/span&gt;&lt;span style="color: #007700"&gt;.&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$key&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'textfield'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#description' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$key&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#size' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;4&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#maxlength' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;10&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#element_validate' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'node_limit_publish_is_numeric'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#default_value' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;variable_get&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'node_limit_publish_'&lt;/span&gt;&lt;span style="color: #007700"&gt;.&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$key&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;),                &lt;br /&gt;            );&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;system_settings_form&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;node_limit_publish_is_numeric&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$element&lt;/span&gt;&lt;span style="color: #007700"&gt;, &amp;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;    &lt;br /&gt;    if (!&lt;/span&gt;&lt;span style="color: #0000BB"&gt;is_numeric&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$element&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#value'&lt;/span&gt;&lt;span style="color: #007700"&gt;]))&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #0000BB"&gt;form_error&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$element&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'This field must be numeric'&lt;/span&gt;&lt;span style="color: #007700"&gt;));&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/**&lt;br /&gt;* Implementation of hook_presave().&lt;br /&gt;*&lt;br /&gt;*/&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #007700"&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;node_limit_publish_node_presave&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #FF8000"&gt;// Get the limit on this type&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #007700"&gt;if ((&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$limit &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;variable_get&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'node_limit_publish_'&lt;/span&gt;&lt;span style="color: #007700"&gt;.&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;type&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;)) and &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;status &lt;/span&gt;&lt;span style="color: #007700"&gt;== &lt;/span&gt;&lt;span style="color: #0000BB"&gt;1&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #FF8000"&gt;// now check whether we have reached our maximum&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$query &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;db_select&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'node'&lt;/span&gt;&lt;span style="color: #007700"&gt;)&lt;br /&gt;            -&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;condition&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'type'&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;type&lt;/span&gt;&lt;span style="color: #007700"&gt;)&lt;br /&gt;            -&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;condition&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'status'&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;1&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;        if (isset(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;nid&lt;/span&gt;&lt;span style="color: #007700"&gt;))&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$query&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;condition&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'nid'&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;nid&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'!='&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$count &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$query&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;countQuery&lt;/span&gt;&lt;span style="color: #007700"&gt;()&lt;br /&gt;            -&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;execute&lt;/span&gt;&lt;span style="color: #007700"&gt;()&lt;br /&gt;            -&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;fetchField&lt;/span&gt;&lt;span style="color: #007700"&gt;();&lt;br /&gt;&lt;br /&gt;        if (&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$count &lt;/span&gt;&lt;span style="color: #007700"&gt;&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$limit&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;status &lt;/span&gt;&lt;span style="color: #007700"&gt;= &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;drupal_set_message&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Sorry, the maximum amount of published content for %type has already been reached.'&lt;/span&gt;&lt;span style="color: #007700"&gt;, array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'%type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$node&lt;/span&gt;&lt;span style="color: #007700"&gt;-&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;type&lt;/span&gt;&lt;span style="color: #007700"&gt;)), &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'warning'&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Fri, 04 Jan 2013 15:29:28 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">17 at http://badzilla.co.uk</guid>
    </item>
<item>
  <title>Drupal 7 - Form in a Block With Template File</title>
  <link>http://badzilla.co.uk/Drupal-7-Tutorial--Form-Block-With-Template-File</link>
  <description>
&lt;span&gt;Drupal 7 - Form in a Block With Template File&lt;/span&gt;

&lt;span&gt;&lt;span lang="" about="http://badzilla.co.uk/user/1" typeof="schema:Person" property="schema:name" datatype="" xml:lang=""&gt;nigel&lt;/span&gt;&lt;/span&gt;

&lt;span&gt;Wed, 24/10/2012 - 16:55&lt;/span&gt;

      &lt;div class="field field--name-field-heading-image-text field--type-entity-reference-revisions field--label-hidden field--items"&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;p&gt;I have been coming up against the same Drupal 7 requirement over and over recently - the need to have a form in a block with a separate template file I can pass over to the front-end guy to weave his magic. This is one of my easiest ever tutorials, and is really only here as an &lt;em&gt;aide memoire&lt;/em&gt; for when I can't quite remember the exact syntax in say &lt;em&gt;hook_theme&lt;/em&gt; or I can't remember which rendering functions I call in the template.&lt;/p&gt;

&lt;p&gt;By using the module below, you have an excellent boilerplate to start your FAPI coding since this pattern repeats (as I have noted) over and over! Too easy!&lt;/p&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
              &lt;div class="field--item"&gt;  &lt;div class="paragraph paragraph--type--blog-heading-picture-text paragraph--view-mode--default"&gt;
          
            &lt;div class="field field--name-field-blog-text field--type-text-long field--label-hidden field--item"&gt;&lt;strong&gt;fb_pattern.info&lt;/strong&gt;
&lt;div class="geshifilter"&gt;&lt;div class="bash geshifilter-bash" style="font-family:monospace;"&gt;&lt;pre style="font-family: monospace; font-weight: normal; font-style: normal"&gt;name = Form &lt;span style="color: #000000; font-weight: bold;"&gt;/&lt;/span&gt; Block Pattern
description = Boilerplate form &lt;span style="color: #000000; font-weight: bold;"&gt;in&lt;/span&gt; a block pattern code with template &lt;span style="color: #c20cb9; font-weight: bold;"&gt;file&lt;/span&gt;
core = &lt;span style="color: #000000;"&gt;7&lt;/span&gt;.x&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;strong&gt;fb_pattern.module&lt;/strong&gt;
&lt;div class="codeblock geshifilter"&gt;&lt;code&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #0000BB"&gt;&lt;?php&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/*&lt;br /&gt; * File         : fb_pattern.module&lt;br /&gt; * Title        : Drupal 7 Boilerplate form in a block pattern with template file&lt;br /&gt; * Author       : www.badzilla.co.uk @badzillacouk&lt;br /&gt; *&lt;br /&gt; * This work is copyright BadZilla under the GPL licence terms and conditions&lt;br /&gt; *&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt; * Implements fb_pattern_info&lt;br /&gt; */&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #007700"&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;fb_pattern_block_info&lt;/span&gt;&lt;span style="color: #007700"&gt;() {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block &lt;/span&gt;&lt;span style="color: #007700"&gt;= array();&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #FF8000"&gt;// Sign up block&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'info' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt;   &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Form / Block Pattern Example'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;                &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'weight' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;);  &lt;br /&gt;&lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/*&lt;br /&gt; * Implements hook_block_view&lt;br /&gt; */&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #007700"&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;fb_pattern_block_view&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$delta&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block &lt;/span&gt;&lt;span style="color: #007700"&gt;= array();&lt;br /&gt;&lt;br /&gt;    switch(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$delta&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;        case &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern'&lt;/span&gt;&lt;span style="color: #007700"&gt;:&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'title'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Sample Form in a Block Pattern'&lt;/span&gt;&lt;span style="color: #007700"&gt;);&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'content'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = &lt;/span&gt;&lt;span style="color: #0000BB"&gt;drupal_get_form&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern_form'&lt;/span&gt;&lt;span style="color: #007700"&gt;); &lt;br /&gt;            break;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$block&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;fb_pattern_form&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;, &amp;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'age'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#title' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Age'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'textfield'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#required' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;TRUE&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#maxlength' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;3&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#size' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;3&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#weight' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;0&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;    );&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;] = array(&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#type' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#value' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#weight' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;10&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#validate' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern_form_validate'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#submit' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern_form_submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;    );&lt;br /&gt;&lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'#theme'&lt;/span&gt;&lt;span style="color: #007700"&gt;][] = &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern_form'&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;   &lt;br /&gt;    return &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;fb_pattern_form_validate&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;, &amp;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;    &lt;br /&gt;    if (!&lt;/span&gt;&lt;span style="color: #0000BB"&gt;is_numeric&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'values'&lt;/span&gt;&lt;span style="color: #007700"&gt;][&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'age'&lt;/span&gt;&lt;span style="color: #007700"&gt;]))&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #0000BB"&gt;form_set_error&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'age'&lt;/span&gt;&lt;span style="color: #007700"&gt;, &lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'That doesn\'t look like a valid age to me!'&lt;/span&gt;&lt;span style="color: #007700"&gt;));&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;fb_pattern_form_submit&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;, &amp;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;) {&lt;br /&gt;    &lt;br /&gt;    &lt;/span&gt;&lt;span style="color: #0000BB"&gt;drupal_set_message&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;t&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'Wow! You don\'t look :age - have you had work done?'&lt;/span&gt;&lt;span style="color: #007700"&gt;, array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;':age' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form_state&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'values'&lt;/span&gt;&lt;span style="color: #007700"&gt;][&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'age'&lt;/span&gt;&lt;span style="color: #007700"&gt;]))); &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/*&lt;br /&gt; * Implements hook_theme&lt;br /&gt; */&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #007700"&gt;function &lt;/span&gt;&lt;span style="color: #0000BB"&gt;fb_pattern_theme&lt;/span&gt;&lt;span style="color: #007700"&gt;() {&lt;br /&gt;    &lt;br /&gt;    return array(&lt;br /&gt;        &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern_form' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'arguments' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; array(&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'form' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #0000BB"&gt;NULL&lt;/span&gt;&lt;span style="color: #007700"&gt;),&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'render element' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'form'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;            &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'template' &lt;/span&gt;&lt;span style="color: #007700"&gt;=&gt; &lt;/span&gt;&lt;span style="color: #DD0000"&gt;'fb_pattern_form'&lt;/span&gt;&lt;span style="color: #007700"&gt;,&lt;br /&gt;        ),&lt;br /&gt;    );&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;
&lt;strong&gt;fb_pattern_form.tpl.php&lt;/strong&gt;
&lt;div class="codeblock geshifilter"&gt;&lt;code&gt;&lt;span style="color: #000000"&gt;&lt;span style="color: #0000BB"&gt;&lt;?php&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #FF8000"&gt;/*&lt;br /&gt; * File         : fb_pattern_form.tpl.php&lt;br /&gt; * Title        : Drupal 7 Boilerplate form in a block pattern with template file&lt;br /&gt; * Author       : www.badzilla.co.uk @badzillacouk&lt;br /&gt; *&lt;br /&gt; * This work is copyright BadZilla under the GPL licence terms and conditions&lt;br /&gt; *&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;br /&gt;&lt;/span&gt;        &lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000BB"&gt;&lt;?php &lt;/span&gt;&lt;span style="color: #007700"&gt;print &lt;/span&gt;&lt;span style="color: #0000BB"&gt;render&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'age'&lt;/span&gt;&lt;span style="color: #007700"&gt;]); &lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000BB"&gt;&lt;?php &lt;/span&gt;&lt;span style="color: #007700"&gt;print &lt;/span&gt;&lt;span style="color: #0000BB"&gt;render&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;[&lt;/span&gt;&lt;span style="color: #DD0000"&gt;'submit'&lt;/span&gt;&lt;span style="color: #007700"&gt;]); &lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;    &lt;span style="color: #0000BB"&gt;&lt;?php &lt;/span&gt;&lt;span style="color: #007700"&gt;print &lt;/span&gt;&lt;span style="color: #0000BB"&gt;drupal_render_children&lt;/span&gt;&lt;span style="color: #007700"&gt;(&lt;/span&gt;&lt;span style="color: #0000BB"&gt;$form&lt;/span&gt;&lt;span style="color: #007700"&gt;); &lt;/span&gt;&lt;span style="color: #0000BB"&gt;?&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;
      
      &lt;/div&gt;
&lt;/div&gt;
          &lt;/div&gt;
  
  &lt;div class="field field--name-field-blog-terms field--type-entity-reference field--label-inline"&gt;
    &lt;div class="field--label"&gt;blog terms&lt;/div&gt;
          &lt;span class="field__items"&gt;
              &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal" hreflang="en"&gt;Drupal&lt;/a&gt;&lt;/span&gt;
          &lt;span class="field--item"&gt;&lt;a href="http://badzilla.co.uk/drupal7" hreflang="en"&gt;Drupal 7&lt;/a&gt;&lt;/span&gt;
              &lt;/span&gt;
      &lt;/div&gt;
</description>
  <pubDate>Wed, 24 Oct 2012 15:55:22 +0000</pubDate>
    <dc:creator>nigel</dc:creator>
    <guid isPermaLink="false">20 at http://badzilla.co.uk</guid>
    </item>

  </channel>
</rss>
