From 1c07b44f1b2c31b0b7d19e20530e06365f84f45f Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Mon, 10 Jul 2017 07:05:12 +0100 Subject: [PATCH] Add and configure redirect bundle. --- app.yml | 129 +----------------- app/SculpinKernel.php | 2 + composer.json | 1 + composer.lock | 49 ++++++- .../_posts/2010-04-05-style-drupal-6-lists.md | 2 + source/_posts/2010-04-28-imagecrop.md | 2 + ...05-06-conditional-email-address-webform.md | 2 + source/_posts/2010-05-10-zenophile.md | 2 + source/_posts/2010-05-25-fancy-slide.md | 2 + .../2010-05-29-imagefield-import-module.md | 2 + .../_posts/2010-06-02-improve-jpg-quality.md | 2 + .../_posts/2010-06-23-social-icons-block.md | 2 + .../2010-06-25-useful-drupal-6-modules.md | 2 + .../_posts/2010-06-28-flickr-photo-gallery.md | 2 + .../2010-07-01-change-content-type-sql.md | 2 + .../2010-07-02-virtual-hosts-virtualhostx.md | 2 + ...-taxonomy-term-multiple-nodes-using-sql.md | 2 + source/_posts/2010-07-12-teleport-module.md | 2 + source/_posts/2010-08-10-adminhover-module.md | 2 + .../2010-08-11-better-photo-gallery-1.md | 2 + .../2010-08-17-better-photo-gallery-2.md | 2 + .../_posts/2010-08-20-image-caption-module.md | 2 + ...010-09-26-south-wales-drupal-user-group.md | 2 + .../_posts/2010-10-10-create-apply-patches.md | 2 + ...d => 2010-10-13-better-photo-gallery-3.md} | 2 + .../2010-10-22-better-photo-gallery-21.md | 2 + .../2010-11-04-regular-expressions-search.md | 2 + source/_posts/2011-02-14-typekit-fonts.md | 2 + .../2011-03-15-number-of-facebook-fans.md | 2 + source/_posts/2011-03-31-proctors.md | 2 + .../2011-05-20-proctors-drupal-meetup.md | 2 + .../2011-05-23-imagefield-import-archive.md | 2 + ...011-08-28-multigroups-field-collections.md | 2 + ...-configure-subversion-svn-server-ubuntu.md | 2 + source/_posts/2012-01-04-upgraded-drupal-7.md | 2 + ...-02-01-authorized-keys-passwordless-ssh.md | 2 + ...-04-16-omega-subtheme-drush-omega-tools.md | 2 + source/_posts/2012-04-17-nagios-centos.md | 2 + .../2012-04-19-custom-theme-templates.md | 2 + source/_posts/2012-05-23-apache-text-files.md | 2 + ...kout-specific-revision-svn-command-line.md | 2 + .../2012-05-23-date-popup-custom-form.md | 2 + .../2012-05-23-forward-domain-mod-rewrite.md | 2 + .../2012-05-23-info-file-drupal-7-theme.md | 2 + ...rupals-process-and-preprocess-functions.md | 2 + .../2012-07-12-my-new-drupal-modules.md | 2 + ...-14-install-nomensa-media-player-drupal.md | 3 + source/_posts/2012-07-27-linux-journal.md | 2 + ...ustom-menu-drupal-7-theme-template-file.md | 2 + ...-09-06-reflections-speaking-unifieddiff.md | 2 + .../2012-10-25-my-sublime-text-2-settings.md | 2 + .../2012-11-15-accessible-bristol-site.md | 2 + ...en-sublime-text-2-mac-os-x-command-line.md | 2 + ...e-sass-and-compass-drupal-7-using-sassy.md | 2 + ...hecking-if-user-logged-drupal-right-way.md | 2 + ...eating-and-using-custom-tokens-drupal-7.md | 2 + ...ckest-way-install-sublime-text-2-ubuntu.md | 2 + ...04-20-leaving-nomensa-joining-precedent.md | 2 + ...it-branch-or-tag-names-your-bash-prompt.md | 2 + ...me-useful-links-using-simpletest-drupal.md | 2 + ...ing-sites-drupals-domain-module-enabled.md | 2 + .../_posts/2013-07-26-going-to-drupalcon.md | 2 + ...-09-06-create-zen-sub-theme-using-drush.md | 2 + ...3-11-19-dont-bootstrap-drupal-use-drush.md | 2 + .../2013-11-27-useful-vagrant-commands.md | 2 + ...pply-patches-using-git-and-curl-or-wget.md | 2 + ...ownload-different-versions-drupal-drush.md | 3 +- .../2014-01-15-some-useful-git-aliases.md | 2 + .../2014-02-09-drupalcamp-london-2014.md | 2 + .../2014-03-03-drupalcamp-london-git-flow.md | 2 + .../_posts/2014-05-03-drupal-association.md | 2 + source/_posts/2014-05-06-thanks.md | 2 + source/_posts/2014-05-21-git-format-patch.md | 2 + .../2014-07-02-drush-make-drupalbristol.md | 2 + ...x-vagrant-loading-wrong-virtual-machine.md | 2 + ...tures-and-adding-components-using-drush.md | 2 + ...-include-css-fonts-using-sass-each-loop.md | 2 + ...eloping-locally-stage-file-proxy-module.md | 2 + .../2014-11-27-pantheon-settings-files.md | 2 + ...environment-configuration-and-overrides.md | 2 + .../_posts/2015-04-03-minimum-core-version.md | 2 + ...2015-06-18-updating-forked-github-repos.md | 2 + ...5-07-21-automating-sculpin-with-jenkins.md | 2 + source/_posts/2015-12-22-entityform.md | 2 + ...2-15-announcing-the-drupal-vm-generator.md | 3 + ...ifying-drupal-migrations-with-xautoload.md | 2 + ...016-07-15-building-gmail-filters-in-php.md | 2 + .../2016-12-30-drupal-vm-generator-updates.md | 2 + ...-commands-with-composer-and-npm-scripts.md | 2 + ...x-redirects-with-query-string-arguments.md | 2 + ...ng-drupal-simpletest-issues-with-docker.md | 2 + source/_talks/dancing-for-drupal.md | 2 + source/_talks/drupal-8-module-development.md | 2 + source/_talks/drupal-8-rejoining-the-herd.md | 2 + source/_talks/drupal-8.md | 2 + .../drupal-development-with-composer.md | 2 + source/_talks/drupal-vm-generator.md | 4 + .../_talks/drupal-vm-meet-symfony-console.md | 2 + source/_talks/drupalorg-2015.md | 5 + source/_talks/drush-make-drupalbristol.md | 2 + .../_talks/getting-your-data-into-drupal-8.md | 3 + source/_talks/git-flow.md | 3 + .../goodbye-drush-make-hello-composer.md | 2 + source/_talks/sculpin.md | 2 + source/_talks/test-drive-twig-with-sculpin.md | 2 + source/_talks/what-is-this-drupal-thing.md | 2 + source/_views/redirect.twig | 9 ++ source/experience.twig | 3 + source/index.md | 3 + source/projects.twig | 2 + source/talks.md | 2 + source/terms.md | 2 + 112 files changed, 288 insertions(+), 128 deletions(-) rename source/_posts/{2010-10-13-better-photo-gallery-2.md => 2010-10-13-better-photo-gallery-3.md} (96%) create mode 100644 source/_views/redirect.twig diff --git a/app.yml b/app.yml index c325d993..f3c1c131 100644 --- a/app.yml +++ b/app.yml @@ -12,132 +12,9 @@ sculpin: composer: install: yes -redirects: - "^/about": { to: "/" } - "^/blog/10-useful-drupal-6-modules": { to: "/blog/2010/06/25/10-useful-drupal-6-modules" } - "^/blog/2012/07/nomensa-accessible-media-player-drupal": { to: "/blog/install-nomensa-media-player-drupal/" } - "^/blog/2017/05/05/fixing-drupal-simpletest-issues-inside-docker-containers": { to: "/blog/2017/05/05/fixing-drupal-simpletest-docker" } - "^/blog/accessible-bristol-site-launched": { to: "/blog/2012/11/15/accessible-bristol-site-launched" } - "^/blog/add-date-popup-calendar-custom-form": { to: "/blog/2012/05/23/add-date-popup-calendar-custom-form" } - "^/blog/add-taxonomy-term-multiple-nodes-using-sql": { to: "/blog/2010/07/07/add-taxonomy-term-multiple-nodes-using-sql" } - "^/blog/adding-custom-theme-templates-drupal-7": { to: "/blog/2012/04/19/adding-custom-theme-templates-drupal-7" } - "^/blog/announcing-the-drupal-vm-config-generator": { to: "/blog/announcing-the-drupal-vm-generator" } - "^/blog/announcing-the-drupal-vm-generator": { to: "/blog/2016/02/15/announcing-the-drupal-vm-generator" } - "^/blog/automating-sculpin-jenkins": { to: "/blog/2015/07/21/automating-sculpin-jenkins" } - "^/blog/building-gmail-filters-with-php": { to: "/blog/2016/07/15/building-gmail-filters-with-php" } - "^/blog/change-content-type-multiple-nodes-using-sql": { to: "/blog/2010/07/01/change-content-type-multiple-nodes-using-sql" } - "^/blog/checking-if-user-logged-drupal-right-way": { to: "/blog/2013/01/09/checking-if-user-logged-drupal-right-way" } - "^/blog/checkout-specific-revision-svn-command-line": { to: "/blog/2012/05/23/checkout-specific-revision-svn-command-line" } - "^/blog/conditional-email-addresses-webform": { to: "/blog/2010/05/06/conditional-email-addresses-webform" } - "^/blog/create-a-zen-sub-theme-using-drush": { to: "/blog/2013/09/06/create-a-zen-sub-theme-using-drush" } - "^/blog/create-and-apply-patches": { to: "/blog/2010/10/10/create-and-apply-patches" } - "^/blog/create-better-photo-gallery-drupal-part-1": { to: "/blog/2010/08/11/create-better-photo-gallery-drupal-part-1" } - "^/blog/create-better-photo-gallery-drupal-part-2": { to: "/blog/2010/08/17/create-better-photo-gallery-drupal-part-2" } - "^/blog/create-better-photo-gallery-drupal-part-21": { to: "/blog/2010/10/22/create-better-photo-gallery-drupal-part-21" } - "^/blog/create-better-photo-gallery-drupal-part-3": { to: "/blog/2010/10/13/create-better-photo-gallery-drupal-part-3" } - "^/blog/create-block-social-media-icons-using-cck-views-and-nodequeue": { to: "/blog/2010/06/23/create-block-social-media-icons-using-cck-views-and-nodequeue" } - "^/blog/create-flickr-photo-gallery-using-feeds-cck-and-views": { to: "/blog/2010/06/28/create-flickr-photo-gallery-using-feeds-cck-and-views" } - "^/blog/create-multigroups-drupal-7-using-field-collections": { to: "/blog/2011/08/28/create-multigroups-drupal-7-using-field-collections" } - "^/blog/create-omega-subtheme-less-css-preprocessor-using-omega-tools-and-drush": { to: "/blog/2012/04/16/create-omega-subtheme-less-css-preprocessor-using-omega-tools-and-drush" } - "^/blog/create-slideshow-multiple-images-using-fancy-slide": { to: "/blog/2010/05/25/create-slideshow-multiple-images-using-fancy-slide" } - "^/blog/create-virtual-hosts-mac-os-x-using-virtualhostx": { to: "/blog/2010/07/02/create-virtual-hosts-mac-os-x-using-virtualhostx" } - "^/blog/creating-and-using-custom-tokens-drupal-7": { to: "/blog/2013/02/16/creating-and-using-custom-tokens-drupal-7" } - "^/blog/creating-local-and-staging-sites-drupals-domain-module-enabled": { to: "/blog/2013/07/17/creating-local-and-staging-sites-drupals-domain-module-enabled" } - "^/blog/display-custom-menu-drupal-7-theme-template-file": { to: "/blog/2012/08/18/display-custom-menu-drupal-7-theme-template-file" } - "^/blog/display-git-branch-or-tag-names-your-bash-prompt": { to: "/blog/2013/04/27/display-git-branch-or-tag-names-your-bash-prompt" } - "^/blog/display-number-facebook-fans-php": { to: "/blog/2011/03/15/display-number-facebook-fans-php" } - "^/blog/dividing-drupals-process-and-preprocess-functions-separate-files": { to: "/blog/2012/05/24/dividing-drupals-process-and-preprocess-functions-separate-files" } - "^/blog/dont-bootstrap-drupal-use-drush": { to: "/blog/2013/11/19/dont-bootstrap-drupal-use-drush" } - "^/blog/download-different-versions-drupal-drush": { to: "/blog/2013/12/31/download-different-versions-drupal-drush" } - "^/blog/drupal-association": { to: "/blog/2014/05/03/drupal-association" } - "^/blog/drupal-vm-generator-291-released": { to: "/blog/2016/12/30/drupal-vm-generator-291-released" } - "^/blog/drupalcamp-london-2014": { to: "/blog/2014/02/09/drupalcamp-london-2014" } - "^/blog/drush-make-drupalbristol": { to: "/blog/2014/07/02/drush-make-drupalbristol" } - "^/blog/easier-sculpin-commands-with-composer-and-npm-scripts": { to: "/blog/2017/01/07/easier-sculpin-commands-with-composer-and-npm-scripts" } - "^/blog/easily-embed-typekit-fonts-your-drupal-website": { to: "/blog/2011/02/14/easily-embed-typekit-fonts-your-drupal-website" } - "^/blog/fix-vagrant-loading-wrong-virtual-machine": { to: "/blog/2014/10/06/fix-vagrant-loading-wrong-virtual-machine" } - "^/blog/forward-one-domain-another-using-modrewrite-and-htaccess": { to: "/blog/2012/05/23/forward-one-domain-another-using-modrewrite-and-htaccess" } - "^/blog/git-format-patch": { to: "/blog/2014/05/21/git-format-patch" } - "^/blog/going-drupalcon": { to: "/blog/2013/07/26/going-drupalcon" } - "^/blog/how-to-define-a-minimum-drupal-core-version": { to: "/blog/2015/04/03/how-to-define-a-minimum-drupal-core-version" } - "^/blog/imagefield-import-archive": { to: "/blog/2011/05/23/imagefield-import-archive" } - "^/blog/improve-jpg-quality-imagecache-and-imageapi": { to: "/blog/2010/06/02/improve-jpg-quality-imagecache-and-imageapi" } - "^/blog/include-css-fonts-using-sass-each-loop": { to: "/blog/2014/11/18/include-css-fonts-using-sass-each-loop" } - "^/blog/include-local-drupal-settings-file-environment-configuration-and-overrides": { to: "/blog/2014/12/20/include-local-drupal-settings-file-environment-configuration-and-overrides" } - "^/blog/install-and-configure-subversion-svn-server-ubuntu": { to: "/blog/2011/10/19/install-and-configure-subversion-svn-server-ubuntu" } - "^/blog/install-nomensa-media-player-drupal": { to: "/blog/2012/07/14/install-nomensa-media-player-drupal" } - "^/blog/installing-nagios-centos": { to: "/blog/2012/04/17/installing-nagios-centos" } - "^/blog/leaving-nomensa-joining-precedent": { to: "/blog/2013/04/20/leaving-nomensa-joining-precedent" } - "^/blog/my-new-drupal-modules": { to: "/blog/2012/07/12/my-new-drupal-modules" } - "^/blog/my-sublime-text-2-settings": { to: "/blog/2012/10/25/my-sublime-text-2-settings" } - "^/blog/nginx-redirects-with-query-string-arguments": { to: "/blog/2017/01/31/nginx-redirects-with-query-string-arguments" } - "^/blog/open-sublime-text-2-mac-os-x-command-line": { to: "/blog/2012/11/17/open-sublime-text-2-mac-os-x-command-line" } - "^/blog/pantheon-settings-files": { to: "/blog/2014/11/27/pantheon-settings-files" } - "^/blog/prevent-apache-displaying-text-files-within-web-browser": { to: "/blog/2012/05/23/prevent-apache-displaying-text-files-within-web-browser" } - "^/blog/proctor-stevenson": { to: "/blog/2011/03/31/proctor-stevenson" } - "^/blog/proctors-hosting-next-drupal-meetup": { to: "/blog/2011/05/20/proctors-hosting-next-drupal-meetup" } - "^/blog/programmatically-load-an-entityform-in-drupal-7": { to: "/blog/2015/12/22/programmatically-load-an-entityform-in-drupal-7" } - "^/blog/quickest-way-install-sublime-text-2-ubuntu": { to: "/blog/2013/03/02/quickest-way-install-sublime-text-2-ubuntu" } - "^/blog/quickly-apply-patches-using-git-and-curl-or-wget": { to: "/blog/2013/12/24/quickly-apply-patches-using-git-and-curl-or-wget" } - "^/blog/quickly-create-zen-subthemes-using-zenophile": { to: "/blog/2010/05/10/quickly-create-zen-subthemes-using-zenophile" } - "^/blog/quickly-import-multiples-images-using-imagefieldimport-module": { to: "/blog/2010/05/29/quickly-import-multiples-images-using-imagefieldimport-module" } - "^/blog/reflections-speaking-unifieddiff": { to: "/blog/2012/09/06/reflections-speaking-unifieddiff" } - "^/blog/review-adminhover-module": { to: "/blog/2010/08/10/review-adminhover-module" } - "^/blog/review-image-caption-module": { to: "/blog/2010/08/20/review-image-caption-module" } - "^/blog/review-teleport-module": { to: "/blog/2010/07/12/review-teleport-module" } - "^/blog/sculpin-twig-resources": { to: "/blog/2015/07/19/sculpin-twig-resources" } - "^/blog/simplifying-drupal-migrations-with-xautoload": { to: "/blog/2016/05/03/simplifying-drupal-migrations-with-xautoload" } - "^/blog/site-upgraded-drupal-7": { to: "/blog/2012/01/04/site-upgraded-drupal-7" } - "^/blog/some-useful-git-aliases": { to: "/blog/2014/01/15/some-useful-git-aliases" } - "^/blog/some-useful-links-using-simpletest-drupal": { to: "/blog/2013/06/13/some-useful-links-using-simpletest-drupal" } - "^/blog/south-wales-drupal-user-group": { to: "/blog/2010/09/26/south-wales-drupal-user-group" } - "^/blog/style-drupal-6s-taxonomy-lists-php-css-and-jquery": { to: "/blog/2010/04/05/style-drupal-6s-taxonomy-lists-php-css-and-jquery" } - "^/blog/thanks": { to: "/blog/2014/05/06/thanks" } - "^/blog/updating-features-and-adding-components-using-drush": { to: "/blog/2014/10/21/updating-features-and-adding-components-using-drush" } - "^/blog/updating-forked-repositories-on-github": { to: "/blog/2015/06/18/updating-forked-repositories-on-github" } - "^/blog/use-authorized-keys-create-passwordless-ssh-connection": { to: "/blog/2012/02/01/use-authorized-keys-create-passwordless-ssh-connection" } - "^/blog/use-regular-expressions-search-and-replace-coda-or-textmate": { to: "/blog/2010/11/04/use-regular-expressions-search-and-replace-coda-or-textmate" } - "^/blog/use-sass-and-compass-drupal-7-using-sassy": { to: "/blog/2012/12/06/use-sass-and-compass-drupal-7-using-sassy" } - "^/blog/useful-vagrant-commands": { to: "/blog/2013/11/27/useful-vagrant-commands" } - "^/blog/using-imagecache-and-imagecrop-my-portfolio": { to: "/blog/2010/04/28/using-imagecache-and-imagecrop-my-portfolio" } - "^/blog/using-remote-files-when-developing-locally-with-stage-file-proxy-module": { to: "/blog/2014/11/20/using-remote-files-when-developing-locally-with-stage-file-proxy-module" } - "^/blog/what-git-flow": { to: "/blog/2014/03/03/what-git-flow" } - "^/blog/writing-article-linux-journal": { to: "/blog/2012/07/27/writing-article-linux-journal" } - "^/blog/writing-info-file-drupal-7-theme": { to: "/blog/2012/05/23/writing-info-file-drupal-7-theme" } - "^/consulting": { to: "/" } - "^/cv": { to: "https://gitprint.com/opdavies/cv/blob/master/README.md" } - "^/drupalgive": { to: "https://www.drupal.org/u/opdavies" } - "^/git-flow": { to: "/talks/git-flow" } - "^/portfolio": { to: "/projects" } - "^/services": { to: "/experience" } - "^/slides/bristol-dug/drupal-vm-generator": { to: "http://opdavies.github.io/slides-drupal-vm-generator" } - "^/slides/phpsw/building-static-websites-with-sculpin": { to: "https://opdavies.github.io/slides-phpsw-sculpin" } - "^/speaking": { to: "/talks" } - "^/talks/2012/09/05/what-is-this-drupal-thing-unified-diff": { to: "/talks/what-is-this-drupal-thing" } - "^/talks/2013/07/10/drupal-ldap-swdug": { to: "/talks/drupal-ldap" } - "^/talks/2014/03/01/git-flow-drupalcamp-london-2014": { to: "/talks/git-flow" } - "^/talks/2014/07/02/drush-make-drupalbristol-drupal-bristol": { to: "/talks/drush-make-drupalbristol" } - "^/talks/2014/08/19/drupal-association-swdug": { to: "/talks/drupal-association" } - "^/talks/2015/01/18/drupalorg-2015-drupalcamp-brighton-2015": { to: "/talks/drupalorg-in-2015-whats-coming-next" } - "^/talks/2015/02/28/drupalorg-2015-drupalcamp-london-2015": { to: "/talks/drupalorg-in-2015-whats-coming-next" } - "^/talks/2015/04/08/drupal-8-phpsw": { to: "/talks/drupal-8" } - "^/talks/2015/07/25/test-drive-twig-with-sculpin-drupalcamp-north-2015": { to: "/talks/test-drive-twig-with-sculpin" } - "^/talks/2015/08/25/dancing-for-drupal-umbristol": { to: "/talks/dancing-for-drupal" } - "^/talks/2015/10/14/sculpin-phpsw": { to: "/talks/sculpin" } - "^/talks/2016/03/05/drupal-8-module-development-drupalcamp-london-2016": { to: "/talks/getting-started-with-drupal-8-module-development" } - "^/talks/2016/03/09/drupal-vm-generator-nwdug": { to: "/talks/drupal-vm-generator" } - "^/talks/2016/04/02/drupal-vm-generator-drupal-bristol": { to: "/talks/drupal-vm-generator" } - "^/talks/2016/06/11/drupal-8-rejoining-the-herd-php-south-coast-2016": { to: "/talks/drupal-8-rejoining-the-herd" } - "^/talks/2016/07/23/drupal-vm-meet-symfony-console-drupalcamp-bristol-2016": { to: "/talks/drupal-vm-meet-symfony-console" } - "^/talks/2016/11/09/drupal-development-with-composer-phpsw": { to: "/talks/drupal-development-with-composer" } - "^/talks/2016/11/17/goodbye-drush-make-hello-composer-drupal-bristol": { to: "/talks/goodbye-drush-make-hello-composer" } - "^/talks/2017/01/18/getting-your-data-into-drupal-8-drupal-bristol": { to: "/talks/getting-your-data-into-drupal-8" } - "^/talks/2017/03/04/getting-your-data-into-drupal-8-drupalcamp-london-2017": { to: "/talks/getting-your-data-into-drupal-8" } - "^/talks/drupal-vm-generator-2": { to: "/talks/drupal-vm-generator" } - "^/talks/drupalorg-2015": { to: "/talks/drupalorg-in-2015-whats-coming-next" } - "^/talks/drupalorg-2015-2": { to: "/talks/drupalorg-in-2015-whats-coming-next" } - "^/terms-and-conditions": { to: "/terms" } - "^/work": { to: "/experience" } +# redirects: +# "^/cv": { to: "https://gitprint.com/opdavies/cv/blob/master/README.md" } +# "^/drupalgive": { to: "https://www.drupal.org/u/opdavies" } deploy: restart_php: false diff --git a/app/SculpinKernel.php b/app/SculpinKernel.php index 6825ff24..b90165d6 100644 --- a/app/SculpinKernel.php +++ b/app/SculpinKernel.php @@ -1,5 +1,6 @@ =5.3.2" + }, + "type": "library", + "autoload": { + "psr-0": { + "Mavimo\\Sculpin\\Bundle\\RedirectBundle": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Vito Moscaritolo", + "email": "marco@mavimo.org", + "homepage": "http://www.mavimo.org" + } + ], + "description": "Sculpin Redirect Bundle", + "homepage": "https://sculpin.io", + "keywords": [ + "blog", + "blogging", + "redirect", + "site", + "static" + ], + "time": "2014-01-04 14:40:02" + }, { "name": "michelf/php-markdown", "version": "1.5.1", @@ -3782,6 +3828,7 @@ "behat/mink-extension": 0, "behat/mink-goutte-driver": 0, "dflydev/embedded-composer": 20, + "mavimo/sculpin-redirect-bundle": 20, "opdavies/sculpin-content-generator-bundle": 0, "sculpin/sculpin": 20 }, diff --git a/source/_posts/2010-04-05-style-drupal-6-lists.md b/source/_posts/2010-04-05-style-drupal-6-lists.md index e80c4724..e225276b 100644 --- a/source/_posts/2010-04-05-style-drupal-6-lists.md +++ b/source/_posts/2010-04-05-style-drupal-6-lists.md @@ -7,6 +7,8 @@ tags: - drupal-theming - taxonomy use: [posts] +redirect: + - blog/style-drupal-6s-taxonomy-lists-php-css-and-jquery/ --- Whilst developing this, and other Drupal websites for clients, I decided that I wanted to categorise content using the taxonomy system. However, I wasn't happy with the way that Drupal displayed the terms lists by default, and I started comparing this to other websites that I look at. diff --git a/source/_posts/2010-04-28-imagecrop.md b/source/_posts/2010-04-28-imagecrop.md index c2ead22a..1f6de9eb 100644 --- a/source/_posts/2010-04-28-imagecrop.md +++ b/source/_posts/2010-04-28-imagecrop.md @@ -9,6 +9,8 @@ tags: - imagecrop - imagefield use: [posts] +redirect: + - blog/using-imagecache-and-imagecrop-my-portfolio/ --- Whilst working on my own portfolio/testimonial website, I decided to have a portfolio page displaying the name of each site and a thumbnail image. For this Blog post, I'll be using a site called [Popcorn Strips](http://popcornstrips.com) which I built for a friend earlier this year as an example. diff --git a/source/_posts/2010-05-06-conditional-email-address-webform.md b/source/_posts/2010-05-06-conditional-email-address-webform.md index 9b1e8cf6..a713bfaf 100644 --- a/source/_posts/2010-05-06-conditional-email-address-webform.md +++ b/source/_posts/2010-05-06-conditional-email-address-webform.md @@ -7,6 +7,8 @@ tags: - conditional-email - webform use: [posts] +redirect: + - blog/conditional-email-addresses-webform/ --- I created a new Webform to serve as a simple Contact form, but left the main configuration until after I created the form components. I added 'Name', 'Email', 'Subject' and 'Message' fields, as well as a 'Category' select list. Below 'Options', I entered each of my desired options in the following format: diff --git a/source/_posts/2010-05-10-zenophile.md b/source/_posts/2010-05-10-zenophile.md index fa13c9e3..0014a3f7 100644 --- a/source/_posts/2010-05-10-zenophile.md +++ b/source/_posts/2010-05-10-zenophile.md @@ -8,6 +8,8 @@ tags: - zen - zenophile use: [posts] +redirect: + - blog/quickly-create-zen-subthemes-using-zenophile/ --- If you use the [Zen](http://drupal.org/project/zen) theme, then you should also be using the [Zenophile](http://drupal.org/project/zenophile) module! diff --git a/source/_posts/2010-05-25-fancy-slide.md b/source/_posts/2010-05-25-fancy-slide.md index db7256cc..fe13834b 100644 --- a/source/_posts/2010-05-25-fancy-slide.md +++ b/source/_posts/2010-05-25-fancy-slide.md @@ -8,6 +8,8 @@ tags: - fancy-slide - slideshow use: [posts] +redirect: + - blog/create-slideshow-multiple-images-using-fancy-slide/ --- Whilst updating my About page, I thought about creating a slideshow of several images instead of just the one static image. When I looking on Drupal.org, the only slideshow modules were to create slideshows of images that were attached to different nodes - not multiple images attached to one node. Then, I found the [Fancy Slide](http://drupal.org/project/fancy_slide) module. It's a jQuery Slideshow module with features that include integration with the [CCK](http://drupal.org/project/cck), [ImageCache](http://drupal.org/project/imagecache) and [Nodequeue](http://drupal.org/project/nodequeue) modules. diff --git a/source/_posts/2010-05-29-imagefield-import-module.md b/source/_posts/2010-05-29-imagefield-import-module.md index ebe4ae51..48611dc0 100644 --- a/source/_posts/2010-05-29-imagefield-import-module.md +++ b/source/_posts/2010-05-29-imagefield-import-module.md @@ -10,6 +10,8 @@ tags: - cck - imagefield use: [posts] +redirect: + - blog/quickly-import-multiples-images-using-imagefieldimport-module/ --- **Thanks to Bob at [Mustardseed Media](http://mustardseedmedia.com) for [tweeting](http://twitter.com/mustardseedinc/status/14713096905) about this module. It's undoubtedly saved me hours of work today alone!** diff --git a/source/_posts/2010-06-02-improve-jpg-quality.md b/source/_posts/2010-06-02-improve-jpg-quality.md index 636992f9..c7cd3d95 100644 --- a/source/_posts/2010-06-02-improve-jpg-quality.md +++ b/source/_posts/2010-06-02-improve-jpg-quality.md @@ -6,6 +6,8 @@ tags: - drupal-6 - imagecache use: [posts] +redirect: + - blog/improve-jpg-quality-imagecache-and-imageapi/ --- Whilst uploading images for my Projects and Testimonials sections, I noticed that the Imagecache-scaled images weren't as high a quality the originals on my Mac. I did some searching online and found out that, by default, Drupal resamples uploaded jpgs to 75% of their original quality. diff --git a/source/_posts/2010-06-23-social-icons-block.md b/source/_posts/2010-06-23-social-icons-block.md index 04ce3c48..43c3dc2f 100644 --- a/source/_posts/2010-06-23-social-icons-block.md +++ b/source/_posts/2010-06-23-social-icons-block.md @@ -9,6 +9,8 @@ tags: - nodequeue - oliverdavies.co.uk use: [posts] +redirect: + - blog/create-block-social-media-icons-using-cck-views-and-nodequeue/ --- I recently decided that I wanted to have a block displayed in a sidebar on my site containing icons and links to my social media profiles - [Twitter](http://twitter.com/opdavies), [Facebook](http://facebook.com/opdavies) etc. I tried the [Follow](http://drupal.org/project/follow) module, but it lacked the option to add extra networks such my [Drupal.org](http://drupal.org/user/381388) account, and my [RSS feed](http://oliverdavies.co.uk/rss.xml). I started to create my own version, and then found [this Blog post](http://www.hankpalan.com/blog/drupal-themes/add-your-social-connections-drupal-icons) by Hank Palan. diff --git a/source/_posts/2010-06-25-useful-drupal-6-modules.md b/source/_posts/2010-06-25-useful-drupal-6-modules.md index 4c22470f..f74e9221 100644 --- a/source/_posts/2010-06-25-useful-drupal-6-modules.md +++ b/source/_posts/2010-06-25-useful-drupal-6-modules.md @@ -6,6 +6,8 @@ tags: - drupal - drupal-modules use: [posts] +redirect: + - blog/10-useful-drupal-6-modules/ --- Aside from the obvious candidates such as Views, CCK etc, here are a list of 10 contributed modules that I currently use on each Drupal project. diff --git a/source/_posts/2010-06-28-flickr-photo-gallery.md b/source/_posts/2010-06-28-flickr-photo-gallery.md index afbfcc0b..6ae29d27 100644 --- a/source/_posts/2010-06-28-flickr-photo-gallery.md +++ b/source/_posts/2010-06-28-flickr-photo-gallery.md @@ -13,6 +13,8 @@ tags: - flickr - imagefield use: [posts] +redirect: + - blog/create-flickr-photo-gallery-using-feeds-cck-and-views/ --- In this tutorial, I'll show you how to create a photo gallery which uses photos imported from [Flickr](http://www.flickr.com). diff --git a/source/_posts/2010-07-01-change-content-type-sql.md b/source/_posts/2010-07-01-change-content-type-sql.md index 94812c65..f9352339 100644 --- a/source/_posts/2010-07-01-change-content-type-sql.md +++ b/source/_posts/2010-07-01-change-content-type-sql.md @@ -10,6 +10,8 @@ tags: - database - content-types use: [posts] +redirect: + - blog/change-content-type-multiple-nodes-using-sql/ --- In this post, I will be changing values within my Drupal 6 site's database to quickly change the content type of multiple nodes. I will be using a test development site with the core Blog module installed, and converting Blog posts to a custom content type called 'News article'. diff --git a/source/_posts/2010-07-02-virtual-hosts-virtualhostx.md b/source/_posts/2010-07-02-virtual-hosts-virtualhostx.md index 64b83734..1e84d1ac 100644 --- a/source/_posts/2010-07-02-virtual-hosts-virtualhostx.md +++ b/source/_posts/2010-07-02-virtual-hosts-virtualhostx.md @@ -8,6 +8,8 @@ tags: - virtual-hosts - virtualhostx use: [posts] +redirect: + - blog/create-virtual-hosts-mac-os-x-using-virtualhostx/ --- This isn't a Drupal related topic per se, but it is a walk-through of one of the applications that I use whilst doing Drupal development work. I assume, like most Mac OS X users, I use [MAMP](http://www.mamp.info/en/index.html) to run Apache, MySQL and PHP locally whilst developing. I also use virtual hosts in Apache to create local .dev domains which are as close as possible to the actual live domains. For example, if I was developing a site called mysite.com, my local development version would be mysite.dev. diff --git a/source/_posts/2010-07-07-add-taxonomy-term-multiple-nodes-using-sql.md b/source/_posts/2010-07-07-add-taxonomy-term-multiple-nodes-using-sql.md index b0e13d34..5cdb464e 100644 --- a/source/_posts/2010-07-07-add-taxonomy-term-multiple-nodes-using-sql.md +++ b/source/_posts/2010-07-07-add-taxonomy-term-multiple-nodes-using-sql.md @@ -9,6 +9,8 @@ tags: - sequal-pro - database use: [posts] +redirect: + - blog/add-taxonomy-term-multiple-nodes-using-sql/ --- **Update:** This can also be done using the [Views Bulk Operations](http://drupal.org/project/views_bulk_operations) module. diff --git a/source/_posts/2010-07-12-teleport-module.md b/source/_posts/2010-07-12-teleport-module.md index a257eda8..8351f104 100644 --- a/source/_posts/2010-07-12-teleport-module.md +++ b/source/_posts/2010-07-12-teleport-module.md @@ -7,6 +7,8 @@ tags: - drupal-modules - teleport use: [posts] +redirect: + - blog/review-teleport-module/ --- As a heavily-reliant [Quicksilver](http://en.wikipedia.org/wiki/Quicksilver_%28software%29) user on my MacBook Pro, I was glad when I found the [Teleport](http://drupal.org/project/teleport) module for [Drupal](http://drupal.org) *(due to Elliott Rothman's [tweet](http://twitter.com/elliotttt/status/18044234238))*. diff --git a/source/_posts/2010-08-10-adminhover-module.md b/source/_posts/2010-08-10-adminhover-module.md index 5adde50f..2f2e9857 100644 --- a/source/_posts/2010-08-10-adminhover-module.md +++ b/source/_posts/2010-08-10-adminhover-module.md @@ -8,6 +8,8 @@ tags: - admin:hover - administration use: [posts] +redirect: + - blog/review-adminhover-module/ --- Sorry for the lack of Blog posts lately, but [my new job](http://horseandcountry.tv) that I started a few weeks ago has certainly been keeping me busy! I've got a few more posts that I'm preparing content for, and I'll hopefully be back into my weekly-post routine before too long! diff --git a/source/_posts/2010-08-11-better-photo-gallery-1.md b/source/_posts/2010-08-11-better-photo-gallery-1.md index ac56ede1..f3d6dee7 100644 --- a/source/_posts/2010-08-11-better-photo-gallery-1.md +++ b/source/_posts/2010-08-11-better-photo-gallery-1.md @@ -12,6 +12,8 @@ tags: - views-attach - drupal use: [posts] +redirect: + - blog/create-better-photo-gallery-drupal-part-1/ --- Recently, I converted a client's static HTML website, along with their Coppermine Photo Gallery, into a Drupal-powered website. diff --git a/source/_posts/2010-08-17-better-photo-gallery-2.md b/source/_posts/2010-08-17-better-photo-gallery-2.md index cbf7c6e3..7bc9ab5a 100644 --- a/source/_posts/2010-08-17-better-photo-gallery-2.md +++ b/source/_posts/2010-08-17-better-photo-gallery-2.md @@ -8,6 +8,8 @@ tags: - sql - sequel-pro use: [posts] +redirect: + - blog/create-better-photo-gallery-drupal-part-2/ --- At the end of my last post, I'd finished creating the first part of the new photo gallery, but I wanted to change the dates of the published photos to reflect the ones on the client's original website. diff --git a/source/_posts/2010-08-20-image-caption-module.md b/source/_posts/2010-08-20-image-caption-module.md index 3e0a7f54..21604987 100644 --- a/source/_posts/2010-08-20-image-caption-module.md +++ b/source/_posts/2010-08-20-image-caption-module.md @@ -8,6 +8,8 @@ tags: - imagefield - image-caption use: [posts] +redirect: + - blog/review-image-caption-module/ --- Up until as recent as last week, whenever I added an image into one of my Blog posts, I was manually adding the caption below each image and styling it accordingly. That was until I installed the [Image Caption](http://drupal.org/project/image_caption) module. diff --git a/source/_posts/2010-09-26-south-wales-drupal-user-group.md b/source/_posts/2010-09-26-south-wales-drupal-user-group.md index b2d8908d..05dbb88e 100644 --- a/source/_posts/2010-09-26-south-wales-drupal-user-group.md +++ b/source/_posts/2010-09-26-south-wales-drupal-user-group.md @@ -7,6 +7,8 @@ tags: - swdug - meetups use: [posts] +redirect: + - blog/south-wales-drupal-user-group/ --- If you do Drupal, and you're in the area, come and join us for the first South Wales Drupal User Group Meetup! diff --git a/source/_posts/2010-10-10-create-apply-patches.md b/source/_posts/2010-10-10-create-apply-patches.md index ee2e7fde..cf42cdb8 100644 --- a/source/_posts/2010-10-10-create-apply-patches.md +++ b/source/_posts/2010-10-10-create-apply-patches.md @@ -7,6 +7,8 @@ tags: - modules - patches use: [posts] +redirect: + - blog/create-and-apply-patches/ --- {% block excerpt %} Earlier this year, I posted a solution to [an issue](http://drupal.org/node/753898) on the Drupal.org issue queue. Originally, I just posted the code back onto the issue, but have now created a patch that can easily be applied to any Drupal 6 installation. Here is a run-through of the process of creating and applying a patch. In this case, I made changes to the `user_pass_validate()` function that's found within `modules/user/user.pages.inc`. diff --git a/source/_posts/2010-10-13-better-photo-gallery-2.md b/source/_posts/2010-10-13-better-photo-gallery-3.md similarity index 96% rename from source/_posts/2010-10-13-better-photo-gallery-2.md rename to source/_posts/2010-10-13-better-photo-gallery-3.md index 588a9db0..a5674695 100644 --- a/source/_posts/2010-10-13-better-photo-gallery-2.md +++ b/source/_posts/2010-10-13-better-photo-gallery-3.md @@ -4,6 +4,8 @@ slug: create-better-photo-gallery-drupal-part-3 tags: - drupal use: [posts] +redirect: + - blog/create-better-photo-gallery-drupal-part-3/ --- The next part of the new gallery that I want to implement is to group the galleries by their respective categories. The first step is to edit my original photo_gallery view and add an additional display. diff --git a/source/_posts/2010-10-22-better-photo-gallery-21.md b/source/_posts/2010-10-22-better-photo-gallery-21.md index 37d65bad..f259e1b7 100644 --- a/source/_posts/2010-10-22-better-photo-gallery-21.md +++ b/source/_posts/2010-10-22-better-photo-gallery-21.md @@ -4,6 +4,8 @@ slug: create-better-photo-gallery-drupal-part-21 tags: - drupal use: [posts] +redirect: + - blog/create-better-photo-gallery-drupal-part-21/ --- Today, I realised that I hadn't published the code that I used to create the total figures of galleries and photos at the top of the gallery (I said at the end of [Part 2](/blog/create-better-photo-gallery-drupal-part-2/ "Create a Better Photo Gallery in Drupal - Part 2") that I'd include it in [Part 3](/blog/create-better-photo-gallery-drupal-part-3/ "Create a Better Photo Gallery in Drupal - Part 3"), but I forgot). So, here it is: diff --git a/source/_posts/2010-11-04-regular-expressions-search.md b/source/_posts/2010-11-04-regular-expressions-search.md index af88fea7..a56ed634 100644 --- a/source/_posts/2010-11-04-regular-expressions-search.md +++ b/source/_posts/2010-11-04-regular-expressions-search.md @@ -9,6 +9,8 @@ tags: - regular-expression - textmate use: [posts] +redirect: + - blog/use-regular-expressions-search-and-replace-coda-or-textmate/ --- As in [the original post](/blog/add-taxonomy-term-multiple-nodes-using-sql/ "Quickly adding a taxonomy term to multiple nodes using SQL"), I'd generated a list of node ID values, and needed to add structure the SQL update statment formatted in a certain way. However, I changed my inital query slightly to out put the same nid value twice. diff --git a/source/_posts/2011-02-14-typekit-fonts.md b/source/_posts/2011-02-14-typekit-fonts.md index da6569f5..5ebbb713 100644 --- a/source/_posts/2011-02-14-typekit-fonts.md +++ b/source/_posts/2011-02-14-typekit-fonts.md @@ -6,6 +6,8 @@ tags: - drupal-6 - typekit use: [posts] +redirect: + - blog/easily-embed-typekit-fonts-your-drupal-website/ --- To begin with, you will need to [register for a TypeKit account](https://typekit.com/plans) - there is a free version if you just want to try it out. diff --git a/source/_posts/2011-03-15-number-of-facebook-fans.md b/source/_posts/2011-03-15-number-of-facebook-fans.md index 093feb3e..77ec0081 100644 --- a/source/_posts/2011-03-15-number-of-facebook-fans.md +++ b/source/_posts/2011-03-15-number-of-facebook-fans.md @@ -5,6 +5,8 @@ slug: display-number-facebook-fans-php tags: - php use: [posts] +redirect: + - blog/display-number-facebook-fans-php/ --- Replace the $page_id value with your Page ID number (unless you want to show the number of fans for this site).You can find your Page ID by logging into your Facebook account, going to 'Adverts and Pages', clicking 'Edit page', and looking at the URL. diff --git a/source/_posts/2011-03-31-proctors.md b/source/_posts/2011-03-31-proctors.md index e28c4479..31d872ea 100644 --- a/source/_posts/2011-03-31-proctors.md +++ b/source/_posts/2011-03-31-proctors.md @@ -4,6 +4,8 @@ slug: proctor-stevenson tags: - personal use: [posts] +redirect: + - blog/proctor-stevenson/ --- 2 weeks ago, I handed in my notice of resignation to [Horse & Country TV](http://horseandcountry.tv)because I've been offered a new role at [Proctor & Stevenson](http://proctors.co.uk) - a Marketing Design and Communications agency in Bristol. diff --git a/source/_posts/2011-05-20-proctors-drupal-meetup.md b/source/_posts/2011-05-20-proctors-drupal-meetup.md index 3574118b..a21bf037 100644 --- a/source/_posts/2011-05-20-proctors-drupal-meetup.md +++ b/source/_posts/2011-05-20-proctors-drupal-meetup.md @@ -5,6 +5,8 @@ tags: - meetups - drupal-bristol use: [posts] +redirect: + - blog/proctors-hosting-next-drupal-meetup/ --- My employer, [Proctor & Stevenson](http://www.proctors.co.uk), are going to be hosting the next Bristol & South West Drupal meetup on the 25th May at our offices. diff --git a/source/_posts/2011-05-23-imagefield-import-archive.md b/source/_posts/2011-05-23-imagefield-import-archive.md index b2e85156..c222fc1f 100644 --- a/source/_posts/2011-05-23-imagefield-import-archive.md +++ b/source/_posts/2011-05-23-imagefield-import-archive.md @@ -4,6 +4,8 @@ tags: - drupal-planet - imagefield-import use: [posts] +redirect: + - blog/imagefield-import-archive/ --- I've finally uploaded my first module onto Drupal.org! diff --git a/source/_posts/2011-08-28-multigroups-field-collections.md b/source/_posts/2011-08-28-multigroups-field-collections.md index 1bdea712..8f2836cf 100644 --- a/source/_posts/2011-08-28-multigroups-field-collections.md +++ b/source/_posts/2011-08-28-multigroups-field-collections.md @@ -10,6 +10,8 @@ tags: - entity-api - multigroup use: [posts] +redirect: + - blog/create-multigroups-drupal-7-using-field-collections/ --- One of my favourite things lately in Drupal 6 has been CCK 3, and more specifically, the Content Multigroups sub-module. Basically this allows you to create a fieldset of various CCK fields, and then repeat that multiple times. For example, I use it on this site whist creating invoices for clients. I have a fieldset called 'Line Item', containing 'Description', 'Quantity' and 'Price' fields. With a standard fieldset, I could only have one instance of each field - however, using a multigroup, I can create multiple groups of line items which I then use within the invoice. diff --git a/source/_posts/2011-10-19-install-and-configure-subversion-svn-server-ubuntu.md b/source/_posts/2011-10-19-install-and-configure-subversion-svn-server-ubuntu.md index 47a14a85..731e5697 100644 --- a/source/_posts/2011-10-19-install-and-configure-subversion-svn-server-ubuntu.md +++ b/source/_posts/2011-10-19-install-and-configure-subversion-svn-server-ubuntu.md @@ -6,6 +6,8 @@ tags: - ubuntu - version-control use: [posts] +redirect: + - blog/install-and-configure-subversion-svn-server-ubuntu/ --- Recently, I needed to set up a Subversion (SVN) server on a Ubuntu Linux server. This post is going to outline the steps taken, and the commands used, to install and configure the service. diff --git a/source/_posts/2012-01-04-upgraded-drupal-7.md b/source/_posts/2012-01-04-upgraded-drupal-7.md index 2ae416b8..ec4d75ae 100644 --- a/source/_posts/2012-01-04-upgraded-drupal-7.md +++ b/source/_posts/2012-01-04-upgraded-drupal-7.md @@ -2,6 +2,8 @@ title: Site Upgraded to Drupal 7 slug: site-upgraded-drupal-7 use: [posts] +redirect: + - blog/site-upgraded-drupal-7/ --- As the vast majority of the Drupal websites that I currently work on are built on Drupal 7, I thought that it was time that I upgraded this site. Following the [core upgrade process](http://drupal.org/node/570162) and the [CCK migration process](http://drupal.org/node/1144136), everything was upgraded smoothly without any issues. diff --git a/source/_posts/2012-02-01-authorized-keys-passwordless-ssh.md b/source/_posts/2012-02-01-authorized-keys-passwordless-ssh.md index 3731f6d7..de9df3b9 100644 --- a/source/_posts/2012-02-01-authorized-keys-passwordless-ssh.md +++ b/source/_posts/2012-02-01-authorized-keys-passwordless-ssh.md @@ -5,6 +5,8 @@ tags: - linux - ssh use: [posts] +redirect: + - blog/use-authorized-keys-create-passwordless-ssh-connection/ --- If you're accessing Linux servers or automating tasks between servers, rather than having to enter your user password every time, you can also use SSH public key authentication. This is a simple process that involves creating a local key and storing it within the *authorized_keys* file on the remote server. diff --git a/source/_posts/2012-04-16-omega-subtheme-drush-omega-tools.md b/source/_posts/2012-04-16-omega-subtheme-drush-omega-tools.md index 4ac7f5f1..414bf6ca 100644 --- a/source/_posts/2012-04-16-omega-subtheme-drush-omega-tools.md +++ b/source/_posts/2012-04-16-omega-subtheme-drush-omega-tools.md @@ -9,6 +9,8 @@ tags: - drupal-planet - drupal use: [posts] +redirect: + - blog/create-omega-subtheme-less-css-preprocessor-using-omega-tools-and-drush/ --- In this tutorial I'll be showing how to create an [Omega](http://drupal.org/project/omega) subtheme using the [Omega Tools](http://drupal.org/project/omega_tools) module, and have it working with the [LESS CSS preprocessor](http://lesscss.org). diff --git a/source/_posts/2012-04-17-nagios-centos.md b/source/_posts/2012-04-17-nagios-centos.md index 0e48e2fa..d1f08740 100644 --- a/source/_posts/2012-04-17-nagios-centos.md +++ b/source/_posts/2012-04-17-nagios-centos.md @@ -6,6 +6,8 @@ tags: - centos - linux use: [posts] +redirect: + - blog/installing-nagios-centos/ --- A great post details that details the steps needed to install [Nagios](http://nagios.org) - a popular open source system and network monitoring software application - on CentOS. diff --git a/source/_posts/2012-04-19-custom-theme-templates.md b/source/_posts/2012-04-19-custom-theme-templates.md index 9d1a7a7f..0a9e21a6 100644 --- a/source/_posts/2012-04-19-custom-theme-templates.md +++ b/source/_posts/2012-04-19-custom-theme-templates.md @@ -7,6 +7,8 @@ tags: - drupal-planet - drupal use: [posts] +redirect: + - blog/adding-custom-theme-templates-drupal-7/ --- {% block excerpt %} Today, I had a situation where I was displaying a list of teasers for news article nodes. The article content type had several different fields assigned to it, including main and thumbnail images. In this case, I wanted to have different output and fields displayed when a teaser was displayed compared to when a complete node was displayed. diff --git a/source/_posts/2012-05-23-apache-text-files.md b/source/_posts/2012-05-23-apache-text-files.md index 38993eca..6b624d81 100644 --- a/source/_posts/2012-05-23-apache-text-files.md +++ b/source/_posts/2012-05-23-apache-text-files.md @@ -6,6 +6,8 @@ tags: - code - drupal use: [posts] +redirect: + - blog/prevent-apache-displaying-text-files-within-web-browser/ --- {% block excerpt %} When you download [Drupal](http://drupal.org/project/drupal), there are several text files that are placed in the root of your installation. You don't want or need these to be visible to anyone attempting to view them in a browser - especially CHANGELOG.txt as that includes the exact version of Drupal you are running and could therefore have security implications. diff --git a/source/_posts/2012-05-23-checkout-specific-revision-svn-command-line.md b/source/_posts/2012-05-23-checkout-specific-revision-svn-command-line.md index 1d69193f..286d130e 100644 --- a/source/_posts/2012-05-23-checkout-specific-revision-svn-command-line.md +++ b/source/_posts/2012-05-23-checkout-specific-revision-svn-command-line.md @@ -5,6 +5,8 @@ tags: - svn - version-control use: [posts] +redirect: + - blog/checkout-specific-revision-svn-command-line/ --- {% block excerpt %} How to checkout a specific revision from a SVN (Subversion) repository. diff --git a/source/_posts/2012-05-23-date-popup-custom-form.md b/source/_posts/2012-05-23-date-popup-custom-form.md index ffef7a3e..ff49ea38 100644 --- a/source/_posts/2012-05-23-date-popup-custom-form.md +++ b/source/_posts/2012-05-23-date-popup-custom-form.md @@ -10,6 +10,8 @@ tags: - drupal-planet - drupal use: [posts] +redirect: + - blog/add-date-popup-calendar-custom-form/ --- {% block excerpt %} How to use a date popup calendar within your custom module. diff --git a/source/_posts/2012-05-23-forward-domain-mod-rewrite.md b/source/_posts/2012-05-23-forward-domain-mod-rewrite.md index 2a578034..f6a8325c 100644 --- a/source/_posts/2012-05-23-forward-domain-mod-rewrite.md +++ b/source/_posts/2012-05-23-forward-domain-mod-rewrite.md @@ -8,6 +8,8 @@ tags: - apache - mod_rewrite use: [posts] +redirect: + - blog/forward-one-domain-another-using-modrewrite-and-htaccess/ --- {% block excerpt %} How to use the .htaccess file to forward to a different domain. diff --git a/source/_posts/2012-05-23-info-file-drupal-7-theme.md b/source/_posts/2012-05-23-info-file-drupal-7-theme.md index 7764cb94..2fc77c71 100644 --- a/source/_posts/2012-05-23-info-file-drupal-7-theme.md +++ b/source/_posts/2012-05-23-info-file-drupal-7-theme.md @@ -7,6 +7,8 @@ tags: - drupal - code use: [posts] +redirect: + - blog/writing-info-file-drupal-7-theme/ --- {% block excerpt %} An example .info file for a Drupal 7 theme. diff --git a/source/_posts/2012-05-24-dividing-drupals-process-and-preprocess-functions.md b/source/_posts/2012-05-24-dividing-drupals-process-and-preprocess-functions.md index ffbf71be..7380f753 100644 --- a/source/_posts/2012-05-24-dividing-drupals-process-and-preprocess-functions.md +++ b/source/_posts/2012-05-24-dividing-drupals-process-and-preprocess-functions.md @@ -8,6 +8,8 @@ tags: - theming - preprocessing use: [posts] +redirect: + - blog/dividing-drupals-process-and-preprocess-functions-separate-files/ --- {% block excerpt %} If you use a lot of process and preprocess functions within your Drupal theme, then your template.php can get very long and it can become difficult to find a certain piece of code. diff --git a/source/_posts/2012-07-12-my-new-drupal-modules.md b/source/_posts/2012-07-12-my-new-drupal-modules.md index 51547445..22ab7280 100644 --- a/source/_posts/2012-07-12-my-new-drupal-modules.md +++ b/source/_posts/2012-07-12-my-new-drupal-modules.md @@ -9,6 +9,8 @@ tags: - drupal-planet - accessibility use: [posts] +redirect: + - blog/my-new-drupal-modules/ --- {% block excerpt %} After a busy few days, I've released two new contrib Drupal modules. diff --git a/source/_posts/2012-07-14-install-nomensa-media-player-drupal.md b/source/_posts/2012-07-14-install-nomensa-media-player-drupal.md index 7ceb3686..d25f9db6 100644 --- a/source/_posts/2012-07-14-install-nomensa-media-player-drupal.md +++ b/source/_posts/2012-07-14-install-nomensa-media-player-drupal.md @@ -7,6 +7,9 @@ tags: - drupal-planet - nomensa use: [posts] +redirect: + - blog/2012/07/nomensa-accessible-media-player-drupal/ + - blog/install-nomensa-media-player-drupal/ --- {% block excerpt %} This week I released the first version of the Nomensa Accessible Media Player module for Drupal 7. Here's some instructions of how to install and configure it. diff --git a/source/_posts/2012-07-27-linux-journal.md b/source/_posts/2012-07-27-linux-journal.md index 714855dc..8761c2e7 100644 --- a/source/_posts/2012-07-27-linux-journal.md +++ b/source/_posts/2012-07-27-linux-journal.md @@ -9,6 +9,8 @@ tags: - writing - linux-journal use: [posts] +redirect: + - blog/writing-article-linux-journal/ --- {% block excerpt %} I'm absolutely delighted to announce that I'm going to be writing an article for [Linux Journal](http://www.linuxjournal.com) magazine's upcoming Drupal special. diff --git a/source/_posts/2012-08-18-display-custom-menu-drupal-7-theme-template-file.md b/source/_posts/2012-08-18-display-custom-menu-drupal-7-theme-template-file.md index 2c751b21..db701644 100644 --- a/source/_posts/2012-08-18-display-custom-menu-drupal-7-theme-template-file.md +++ b/source/_posts/2012-08-18-display-custom-menu-drupal-7-theme-template-file.md @@ -9,6 +9,8 @@ tags: - php - aria use: [posts] +redirect: + - blog/display-custom-menu-drupal-7-theme-template-file/ --- {% block excerpt %} For reference, this is the code needed to display a menu in a Drupal 7 template file, including the navigation ARIA role. diff --git a/source/_posts/2012-09-06-reflections-speaking-unifieddiff.md b/source/_posts/2012-09-06-reflections-speaking-unifieddiff.md index 1fe1911a..535fe831 100644 --- a/source/_posts/2012-09-06-reflections-speaking-unifieddiff.md +++ b/source/_posts/2012-09-06-reflections-speaking-unifieddiff.md @@ -5,6 +5,8 @@ slug: reflections-speaking-unifieddiff tags: - talks use: [posts] +redirect: + - blog/reflections-speaking-unifieddiff/ --- {% block excerpt %} Yesterday evening I went along and spoke at the [UnifiedDiff meetup](http://www.unifieddiff.co.uk) in Cardiff, having offered previously to do a presentation providing an introduction to Drupal. diff --git a/source/_posts/2012-10-25-my-sublime-text-2-settings.md b/source/_posts/2012-10-25-my-sublime-text-2-settings.md index d2954e65..340205bc 100644 --- a/source/_posts/2012-10-25-my-sublime-text-2-settings.md +++ b/source/_posts/2012-10-25-my-sublime-text-2-settings.md @@ -4,6 +4,8 @@ description: Subli tags: - sublime-text use: [posts] +redirect: + - blog/my-sublime-text-2-settings/ --- {% block excerpt %} [Sublime Text 2](http://www.sublimetext.com/2) has been my text editor of choice for the past few months, and I use it at home, in work, and on any virtual machines that I run. So rather than having to manually re-enter my settings each time, I thought that I'd document them here for future reference. diff --git a/source/_posts/2012-11-15-accessible-bristol-site.md b/source/_posts/2012-11-15-accessible-bristol-site.md index 28486327..451b4b8a 100644 --- a/source/_posts/2012-11-15-accessible-bristol-site.md +++ b/source/_posts/2012-11-15-accessible-bristol-site.md @@ -6,6 +6,8 @@ tags: - accessible-bristol - nomensa use: [posts] +redirect: + - blog/accessible-bristol-site-launched/ --- {% block excerpt %} I'm happy to announce that the [Accessible Bristol](http://www.accessiblebristol.org.uk) website was launched this week, on Drupal 7. diff --git a/source/_posts/2012-11-17-open-sublime-text-2-mac-os-x-command-line.md b/source/_posts/2012-11-17-open-sublime-text-2-mac-os-x-command-line.md index 1f417a47..4919bfc9 100644 --- a/source/_posts/2012-11-17-open-sublime-text-2-mac-os-x-command-line.md +++ b/source/_posts/2012-11-17-open-sublime-text-2-mac-os-x-command-line.md @@ -6,6 +6,8 @@ tags: - mac-os-x - terminal use: [posts] +redirect: + - blog/open-sublime-text-2-mac-os-x-command-line/ --- {% block excerpt %} How to open Sublime Text from the command line. diff --git a/source/_posts/2012-12-06-use-sass-and-compass-drupal-7-using-sassy.md b/source/_posts/2012-12-06-use-sass-and-compass-drupal-7-using-sassy.md index 8396dfda..08ab8d1f 100644 --- a/source/_posts/2012-12-06-use-sass-and-compass-drupal-7-using-sassy.md +++ b/source/_posts/2012-12-06-use-sass-and-compass-drupal-7-using-sassy.md @@ -11,6 +11,8 @@ tags: - preprocessing - sass use: [posts] +redirect: + - blog/use-sass-and-compass-drupal-7-using-sassy/ --- {% block excerpt %} I've recently started using [SASS](http://sass-lang.com) rather than LESS to do my CSS preprocessing - namely due to its integration with [Compass](http://compass-style.org) and it's built-in CSS3 mixins. Here are three modules that provide the ability to use SASS within Drupal. diff --git a/source/_posts/2013-01-09-checking-if-user-logged-drupal-right-way.md b/source/_posts/2013-01-09-checking-if-user-logged-drupal-right-way.md index a1c7f042..ce050ec1 100644 --- a/source/_posts/2013-01-09-checking-if-user-logged-drupal-right-way.md +++ b/source/_posts/2013-01-09-checking-if-user-logged-drupal-right-way.md @@ -9,6 +9,8 @@ tags: - drupal-planet - php use: [posts] +redirect: + - blog/checking-if-user-logged-drupal-right-way/ --- {% block excerpt %} I see this regularly when working on Drupal sites when someone wants to check whether the current user is logged in to Drupal (authenticated) or not (anonymous). diff --git a/source/_posts/2013-02-16-creating-and-using-custom-tokens-drupal-7.md b/source/_posts/2013-02-16-creating-and-using-custom-tokens-drupal-7.md index 764751f7..f11b18d7 100644 --- a/source/_posts/2013-02-16-creating-and-using-custom-tokens-drupal-7.md +++ b/source/_posts/2013-02-16-creating-and-using-custom-tokens-drupal-7.md @@ -7,6 +7,8 @@ tags: - drupal-7 - tokens use: [posts] +redirect: + - blog/creating-and-using-custom-tokens-drupal-7/ --- {% block excerpt %} This post outlines the steps required to create your own custom tokens in Drupal. diff --git a/source/_posts/2013-03-02-quickest-way-install-sublime-text-2-ubuntu.md b/source/_posts/2013-03-02-quickest-way-install-sublime-text-2-ubuntu.md index 9581cbab..08d22243 100644 --- a/source/_posts/2013-03-02-quickest-way-install-sublime-text-2-ubuntu.md +++ b/source/_posts/2013-03-02-quickest-way-install-sublime-text-2-ubuntu.md @@ -6,6 +6,8 @@ tags: - sublime-text - ubuntu use: [posts] +redirect: + - blog/quickest-way-install-sublime-text-2-ubuntu/ --- {% block excerpt %} After reading numerous blog posts about how to install [Sublime Text 2](http://www.sublimetext.com/2 "Sublime Text 2") in [Ubuntu](http://www.ubuntu.com/2 "Ubuntu"), this is definitely the quickest way! diff --git a/source/_posts/2013-04-20-leaving-nomensa-joining-precedent.md b/source/_posts/2013-04-20-leaving-nomensa-joining-precedent.md index 320b2e98..c1f29a14 100644 --- a/source/_posts/2013-04-20-leaving-nomensa-joining-precedent.md +++ b/source/_posts/2013-04-20-leaving-nomensa-joining-precedent.md @@ -6,6 +6,8 @@ tags: - precedent - personal use: [posts] +redirect: + - blog/leaving-nomensa-joining-precedent/ --- {% block excerpt %} Yesterday was my last day working at [Nomensa](http://www.nomensa.com "Nomensa"). Next week, I'll be starting as a Senior Developer at [Precedent](http://www.precedent.co.uk "Precedent"). diff --git a/source/_posts/2013-04-27-display-git-branch-or-tag-names-your-bash-prompt.md b/source/_posts/2013-04-27-display-git-branch-or-tag-names-your-bash-prompt.md index 07ac1c22..755e0ad7 100644 --- a/source/_posts/2013-04-27-display-git-branch-or-tag-names-your-bash-prompt.md +++ b/source/_posts/2013-04-27-display-git-branch-or-tag-names-your-bash-prompt.md @@ -8,6 +8,8 @@ tags: - git - terminal use: [posts] +redirect: + - blog/display-git-branch-or-tag-names-your-bash-prompt/ --- {% block excerpt %} Whilst watching [Drupalize.me](http://drupalize.me "Drupalize.me")'s recent [Introduction to Git series](http://drupalize.me/series/introduction-git-series "Introduction to Git on Drupalize.me"), I thought it was useful the way that the current Git branch or tag name was displayed in the bash prompt. Here's how to do it. diff --git a/source/_posts/2013-06-13-some-useful-links-using-simpletest-drupal.md b/source/_posts/2013-06-13-some-useful-links-using-simpletest-drupal.md index bdc314ab..cc85d075 100644 --- a/source/_posts/2013-06-13-some-useful-links-using-simpletest-drupal.md +++ b/source/_posts/2013-06-13-some-useful-links-using-simpletest-drupal.md @@ -8,6 +8,8 @@ tags: - drupal-planet - drupal use: [posts] +redirect: + - blog/some-useful-links-using-simpletest-drupal/ --- {% block excerpt %} Here are some useful links that I've found when researching about unit testing in Drupal using SimpleTest. diff --git a/source/_posts/2013-07-17-creating-local-and-staging-sites-drupals-domain-module-enabled.md b/source/_posts/2013-07-17-creating-local-and-staging-sites-drupals-domain-module-enabled.md index c4c36cd3..e07d88d0 100644 --- a/source/_posts/2013-07-17-creating-local-and-staging-sites-drupals-domain-module-enabled.md +++ b/source/_posts/2013-07-17-creating-local-and-staging-sites-drupals-domain-module-enabled.md @@ -8,6 +8,8 @@ tags: - domain - table-prefixing use: [posts] +redirect: + - blog/creating-local-and-staging-sites-drupals-domain-module-enabled/ --- {% block excerpt %} The [Domain Access project](https://drupal.org/project/domain "The Domain Access project on Drupal.org") is a suite of modules that provide tools for running a group of affiliated sites from one Drupal installation and a single shared database. The issue is that the domains are stored within the database so these are copied across when the data is migrated between environments, whereas the domains are obviously going to change. diff --git a/source/_posts/2013-07-26-going-to-drupalcon.md b/source/_posts/2013-07-26-going-to-drupalcon.md index 7ee932a3..28320582 100644 --- a/source/_posts/2013-07-26-going-to-drupalcon.md +++ b/source/_posts/2013-07-26-going-to-drupalcon.md @@ -5,6 +5,8 @@ tags: - drupalcon - precedent use: [posts] +redirect: + - blog/going-drupalcon/ --- {% block excerpt %} [Precedent](http://www.precedent.co.uk) are sending myself and two of our other Drupal Developers to [Drupalcon Prague](http://prague2013.drupal.org). diff --git a/source/_posts/2013-09-06-create-zen-sub-theme-using-drush.md b/source/_posts/2013-09-06-create-zen-sub-theme-using-drush.md index a0b58108..1b974b67 100644 --- a/source/_posts/2013-09-06-create-zen-sub-theme-using-drush.md +++ b/source/_posts/2013-09-06-create-zen-sub-theme-using-drush.md @@ -8,6 +8,8 @@ tags: - zen - theming use: [posts] +redirect: + - blog/create-a-zen-sub-theme-using-drush/ --- {% block excerpt %} How to use [Drush](https://drupal.org/project/drush) to quickly build a new sub-theme of [Zen](https://drupal.org/project/zen). diff --git a/source/_posts/2013-11-19-dont-bootstrap-drupal-use-drush.md b/source/_posts/2013-11-19-dont-bootstrap-drupal-use-drush.md index c141184b..e849c166 100644 --- a/source/_posts/2013-11-19-dont-bootstrap-drupal-use-drush.md +++ b/source/_posts/2013-11-19-dont-bootstrap-drupal-use-drush.md @@ -5,6 +5,8 @@ tags: - drupal-planet - php use: [posts] +redirect: + - blog/dont-bootstrap-drupal-use-drush/ --- {% block excerpt %} There are times when doing Drupal development when you need to run a custom PHP script, maybe moving data from one field to another, that doesn't warrant the time and effort to create a custom module. In this scenario, it would be quicker to write a .php script and bootstrap Drupal to gain access to functions like `node_load()` and `db_query()`. diff --git a/source/_posts/2013-11-27-useful-vagrant-commands.md b/source/_posts/2013-11-27-useful-vagrant-commands.md index 368eceeb..47726457 100644 --- a/source/_posts/2013-11-27-useful-vagrant-commands.md +++ b/source/_posts/2013-11-27-useful-vagrant-commands.md @@ -4,6 +4,8 @@ description: Here are the basic commands that you need to adminster a virtual ma tags: - vagrant use: [posts] +redirect: + - blog/useful-vagrant-commands/ --- {% block excerpt %} [Vagrant](http://www.vagrantup.com "About Vagrant") is a tool for managing virtual machines within [VirtualBox](https://www.virtualbox.org) from the command line. Here are some useful commands to know when using Vagrant. diff --git a/source/_posts/2013-12-24-quickly-apply-patches-using-git-and-curl-or-wget.md b/source/_posts/2013-12-24-quickly-apply-patches-using-git-and-curl-or-wget.md index 8f7335e0..bfc2902f 100644 --- a/source/_posts/2013-12-24-quickly-apply-patches-using-git-and-curl-or-wget.md +++ b/source/_posts/2013-12-24-quickly-apply-patches-using-git-and-curl-or-wget.md @@ -5,6 +5,8 @@ tags: - git - drupal-planet use: [posts] +redirect: + - blog/quickly-apply-patches-using-git-and-curl-or-wget/ --- {% block excerpt %} Testing a patch file is usually a two-step process. First you download the patch file from the source, and then you run a separate command to apply it. diff --git a/source/_posts/2013-12-31-download-different-versions-drupal-drush.md b/source/_posts/2013-12-31-download-different-versions-drupal-drush.md index ec731ae7..03fee45d 100644 --- a/source/_posts/2013-12-31-download-different-versions-drupal-drush.md +++ b/source/_posts/2013-12-31-download-different-versions-drupal-drush.md @@ -6,8 +6,9 @@ tags: - drupal - drupal-planet - drush - use: [posts] +redirect: + - blog/download-different-versions-drupal-drush/ --- {% block excerpt %} If you use [Drush](https://raw.github.com/drush-ops/drush/master/README.md "About Drush"), it's likely that you've used the `drush pm-download` (or `drush dl` for short) command to start a new project. This command downloads projects from Drupal.org, but if you don't specify a project or type "drush dl drupal", the command will download the current stable version of Drupal core. Currently, this will be Drupal 7 with that being the current stable version of core at the time of writing this post. diff --git a/source/_posts/2014-01-15-some-useful-git-aliases.md b/source/_posts/2014-01-15-some-useful-git-aliases.md index ba2e51ac..27b5006c 100644 --- a/source/_posts/2014-01-15-some-useful-git-aliases.md +++ b/source/_posts/2014-01-15-some-useful-git-aliases.md @@ -3,6 +3,8 @@ title: Some Useful Git Aliases tags: - git use: [posts] +redirect: + - blog/some-useful-git-aliases/ --- {% block excerpt %} Here are some bash aliases that I use and find helpful for quickly writing Git and Git Flow commands. diff --git a/source/_posts/2014-02-09-drupalcamp-london-2014.md b/source/_posts/2014-02-09-drupalcamp-london-2014.md index 12598590..8b27fc0e 100644 --- a/source/_posts/2014-02-09-drupalcamp-london-2014.md +++ b/source/_posts/2014-02-09-drupalcamp-london-2014.md @@ -7,6 +7,8 @@ tags: - git - git-flow use: [posts] +redirect: + - blog/drupalcamp-london-2014/ --- {% block excerpt %} It's all booked, I'm going to be attending [DrupalCamp London](http://2014.drupalcamplondon.co.uk) this year, my first DrupalCamp! diff --git a/source/_posts/2014-03-03-drupalcamp-london-git-flow.md b/source/_posts/2014-03-03-drupalcamp-london-git-flow.md index 9298be0d..10825e87 100644 --- a/source/_posts/2014-03-03-drupalcamp-london-git-flow.md +++ b/source/_posts/2014-03-03-drupalcamp-london-git-flow.md @@ -9,6 +9,8 @@ tags: - talks tweets: true use: [posts] +redirect: + - blog/what-git-flow/ --- {% block excerpt %} Here are my slides from my "What is Git Flow?" session at [DrupalCamp London](http://2014.drupalcamplondon.co.uk). diff --git a/source/_posts/2014-05-03-drupal-association.md b/source/_posts/2014-05-03-drupal-association.md index 1578eb22..9674143e 100644 --- a/source/_posts/2014-05-03-drupal-association.md +++ b/source/_posts/2014-05-03-drupal-association.md @@ -4,6 +4,8 @@ tags: - drupal - personal use: [posts] +redirect: + - blog/drupal-association/ --- {% block excerpt %} Today was my last day working at [Precedent](http://www.precedent.com). Next week, I'll be starting my [new job](https://assoc.drupal.org/node/18923 "Drupal.org Developer") at the [Drupal Association](http://assoc.drupal.org) working on Drupal's home - [Drupal.org](http://www.drupal.org). diff --git a/source/_posts/2014-05-06-thanks.md b/source/_posts/2014-05-06-thanks.md index be6fd85a..29ff7e2f 100644 --- a/source/_posts/2014-05-06-thanks.md +++ b/source/_posts/2014-05-06-thanks.md @@ -5,6 +5,8 @@ tags: - drupal-association - personal use: [posts] +redirect: + - blog/thanks/ --- {% block excerpt %} This is just a quick post to thank everyone for their comments and congratulations after my previous post about [joining the Drupal Association](/blog/drupal-association/). I’m looking forward to my first day in the job tomorrow. diff --git a/source/_posts/2014-05-21-git-format-patch.md b/source/_posts/2014-05-21-git-format-patch.md index 1cc0dde6..e40e71ff 100644 --- a/source/_posts/2014-05-21-git-format-patch.md +++ b/source/_posts/2014-05-21-git-format-patch.md @@ -7,6 +7,8 @@ tags: - drupal-planet - git use: [posts] +redirect: + - blog/git-format-patch/ --- {% block excerpt %} An explanation of the "git format-patch" command, and how it could be used in Drupal's Git workflow. diff --git a/source/_posts/2014-07-02-drush-make-drupalbristol.md b/source/_posts/2014-07-02-drush-make-drupalbristol.md index 80c3b254..caf1fbc5 100644 --- a/source/_posts/2014-07-02-drush-make-drupalbristol.md +++ b/source/_posts/2014-07-02-drush-make-drupalbristol.md @@ -7,6 +7,8 @@ tags: - drupal-bristol - talks use: [posts] +redirect: + - blog/drush-make-drupalbristol/ --- {% block excerpt %} Here are my slides from this month's talk night at the [Drupal Bristol user group](https://groups.drupal.org/bristol-and-west-uk). diff --git a/source/_posts/2014-10-06-fix-vagrant-loading-wrong-virtual-machine.md b/source/_posts/2014-10-06-fix-vagrant-loading-wrong-virtual-machine.md index a44817d9..3425cfa3 100644 --- a/source/_posts/2014-10-06-fix-vagrant-loading-wrong-virtual-machine.md +++ b/source/_posts/2014-10-06-fix-vagrant-loading-wrong-virtual-machine.md @@ -7,6 +7,8 @@ tags: meta: description: How to fix it when Vagrant loads the wrong virtual machine. use: [posts] +redirect: + - blog/fix-vagrant-loading-wrong-virtual-machine/ --- {% block excerpt %} A few times recently, I've had instances where [Vagrant](https://www.vagrantup.com) seems to have forgotten which virtual machine it's supposed to load, probably due to renaming a project directory or the .vagrant directory being moved accidentally. diff --git a/source/_posts/2014-10-21-updating-features-and-adding-components-using-drush.md b/source/_posts/2014-10-21-updating-features-and-adding-components-using-drush.md index 051e1945..ad205cd5 100644 --- a/source/_posts/2014-10-21-updating-features-and-adding-components-using-drush.md +++ b/source/_posts/2014-10-21-updating-features-and-adding-components-using-drush.md @@ -7,6 +7,8 @@ tags: - drush - features use: [posts] +redirect: + - blog/updating-features-and-adding-components-using-drush/ --- {% block excerpt %} If you use the [Features module](http://drupal.org/project/features) to manage your Drupal configuration, it can be time consuming to update features through the UI, especially if you are working on a remote server and need to keep downloading and uploading files. diff --git a/source/_posts/2014-11-18-include-css-fonts-using-sass-each-loop.md b/source/_posts/2014-11-18-include-css-fonts-using-sass-each-loop.md index 0003ab43..fd928024 100644 --- a/source/_posts/2014-11-18-include-css-fonts-using-sass-each-loop.md +++ b/source/_posts/2014-11-18-include-css-fonts-using-sass-each-loop.md @@ -8,6 +8,8 @@ tags: - fonts - sass use: [posts] +redirect: + - blog/include-css-fonts-using-sass-each-loop/ --- {% block excerpt %} How to use an @each loop in SASS to quickly include multiple font files within your stylesheet. diff --git a/source/_posts/2014-11-20-using-remote-files-when-developing-locally-stage-file-proxy-module.md b/source/_posts/2014-11-20-using-remote-files-when-developing-locally-stage-file-proxy-module.md index 0d98dee4..c1caf218 100644 --- a/source/_posts/2014-11-20-using-remote-files-when-developing-locally-stage-file-proxy-module.md +++ b/source/_posts/2014-11-20-using-remote-files-when-developing-locally-stage-file-proxy-module.md @@ -5,6 +5,8 @@ tags: - drupal-planet - servers use: [posts] +redirect: + - blog/using-remote-files-when-developing-locally-with-stage-file-proxy-module/ --- {% block excerpt %} How to install and configure the [Stage File Proxy](https://www.drupal.org/project/stage_file_proxy) module to serve remote images on your local Drupal site. diff --git a/source/_posts/2014-11-27-pantheon-settings-files.md b/source/_posts/2014-11-27-pantheon-settings-files.md index 986f74ca..e050a6f2 100644 --- a/source/_posts/2014-11-27-pantheon-settings-files.md +++ b/source/_posts/2014-11-27-pantheon-settings-files.md @@ -7,6 +7,8 @@ tags: - pantheon - settings.php use: [posts] +redirect: + - blog/pantheon-settings-files/ --- {% block excerpt %} I was recently doing some work on a site hosted on [Pantheon](http://getpantheon.com) and came across an issue, for which part of the suggested fix was to ensure that the `$base_url` variable was explicitly defined within settings.php (this is also best practice on all Drupal sites). diff --git a/source/_posts/2014-12-20-include-local-drupal-settings-file-environment-configuration-and-overrides.md b/source/_posts/2014-12-20-include-local-drupal-settings-file-environment-configuration-and-overrides.md index 119f6bd1..0ff07e14 100644 --- a/source/_posts/2014-12-20-include-local-drupal-settings-file-environment-configuration-and-overrides.md +++ b/source/_posts/2014-12-20-include-local-drupal-settings-file-environment-configuration-and-overrides.md @@ -9,6 +9,8 @@ tags: - drupal-planet - settings.php use: [posts] +redirect: + - blog/include-local-drupal-settings-file-environment-configuration-and-overrides/ --- {% block excerpt %} How to create and include a local settings file to define and override environment-specific variables, and keep sensitive things like your database credentials and API keys safe. diff --git a/source/_posts/2015-04-03-minimum-core-version.md b/source/_posts/2015-04-03-minimum-core-version.md index 08375b08..d43ac4b4 100644 --- a/source/_posts/2015-04-03-minimum-core-version.md +++ b/source/_posts/2015-04-03-minimum-core-version.md @@ -11,6 +11,8 @@ meta: description: 'How to define a minimum Drupal core version for your module or theme.' type: article use: [posts] +redirect: + - blog/how-to-define-a-minimum-drupal-core-version/ --- This week, my first code patch was [committed to Drupal core](https://www.drupal.org/node/2394517#comment-9773143). The patch adds the `user_has_role()` function to the user module, to simplify the way to check whether a user in Drupal has been assigned a specific role. This is something that I normally write a custom function for each project, but it's now available in Drupal core as of [7.36](https://www.drupal.org/drupal-7.36-release-notes). diff --git a/source/_posts/2015-06-18-updating-forked-github-repos.md b/source/_posts/2015-06-18-updating-forked-github-repos.md index bcc08055..62d41d46 100644 --- a/source/_posts/2015-06-18-updating-forked-github-repos.md +++ b/source/_posts/2015-06-18-updating-forked-github-repos.md @@ -9,6 +9,8 @@ tags: - phpstorm - sculpin use: [posts] +redirect: + - blog/updating-forked-repositories-on-github/ --- {% block content %} ## Sculpin diff --git a/source/_posts/2015-07-21-automating-sculpin-with-jenkins.md b/source/_posts/2015-07-21-automating-sculpin-with-jenkins.md index b64dfb0a..ea4a584a 100644 --- a/source/_posts/2015-07-21-automating-sculpin-with-jenkins.md +++ b/source/_posts/2015-07-21-automating-sculpin-with-jenkins.md @@ -6,6 +6,8 @@ tags: - jenkins slug: automating-sculpin-jenkins use: [posts] +redirect: + - blog/automating-sculpin-jenkins/ --- As part of re-building this site with [Sculpin](http://sculpin.io), I wanted to automate the deployments, as in I wouldn't need to run a script like [publish.sh](https://raw.githubusercontent.com/sculpin/sculpin-blog-skeleton/master/publish.sh) locally and have that deploy my code onto my server. Not only did that mean that my local workflow was simpler (update, commit and push, rather than update, commit, push and deploy), but if I wanted to make a quick edit or hotfix, I could log into GitHub or Bitbucket (wherever I decided to host the source code) from any computer or my phone, make the change and have it deployed for me. diff --git a/source/_posts/2015-12-22-entityform.md b/source/_posts/2015-12-22-entityform.md index 004b09e8..e16376a3 100644 --- a/source/_posts/2015-12-22-entityform.md +++ b/source/_posts/2015-12-22-entityform.md @@ -8,6 +8,8 @@ tags: meta: description: How to programmatically load, render and embed an entityform in Drupal 7. use: [posts] +redirect: + - blog/programmatically-load-an-entityform-in-drupal-7/ --- {% block excerpt %} I recently had my first experience using the [Entityform module](https://www.drupal.org/project/entityform) in a project. It was quite easy to configure with different form types, but then I needed to embed the form into an overlay. I was expecting to use the `drupal_get_form()` function and render it, but this didn’t work. diff --git a/source/_posts/2016-02-15-announcing-the-drupal-vm-generator.md b/source/_posts/2016-02-15-announcing-the-drupal-vm-generator.md index 9dd372e2..66fe3d03 100644 --- a/source/_posts/2016-02-15-announcing-the-drupal-vm-generator.md +++ b/source/_posts/2016-02-15-announcing-the-drupal-vm-generator.md @@ -7,6 +7,9 @@ tags: - drupal-vm-generator - symfony use: [posts] +redirect: + - blog/announcing-the-drupal-vm-config-generator/ + - blog/announcing-the-drupal-vm-generator/ --- {% block excerpt %} For the past few weeks I’ve been working on a personal side project, based on Drupal VM. It’s called the [Drupal VM Generator][1], and over the weekend I’ve added the final features and fixed the remaining issues, and tagged the 1.0.0 release. diff --git a/source/_posts/2016-05-03-simplifying-drupal-migrations-with-xautoload.md b/source/_posts/2016-05-03-simplifying-drupal-migrations-with-xautoload.md index 5801401c..b1a05661 100644 --- a/source/_posts/2016-05-03-simplifying-drupal-migrations-with-xautoload.md +++ b/source/_posts/2016-05-03-simplifying-drupal-migrations-with-xautoload.md @@ -7,6 +7,8 @@ tags: - drupal-7 - php use: [posts] +redirect: + - blog/simplifying-drupal-migrations-with-xautoload/ --- {% block excerpt %} How to use the [xautoload][1] module to autoload migration classes within your Drupal 7 migration modules. diff --git a/source/_posts/2016-07-15-building-gmail-filters-in-php.md b/source/_posts/2016-07-15-building-gmail-filters-in-php.md index 922db0f0..77395015 100644 --- a/source/_posts/2016-07-15-building-gmail-filters-in-php.md +++ b/source/_posts/2016-07-15-building-gmail-filters-in-php.md @@ -4,6 +4,8 @@ tags: - php - gmail use: [posts] +redirect: + - blog/building-gmail-filters-with-php/ --- Earlier this week I wrote a small PHP library called [GmailFilterBuilder][0] that allows you to write Gmail filters in PHP and export them to XML. diff --git a/source/_posts/2016-12-30-drupal-vm-generator-updates.md b/source/_posts/2016-12-30-drupal-vm-generator-updates.md index 0e8ff6af..7f15d8a9 100644 --- a/source/_posts/2016-12-30-drupal-vm-generator-updates.md +++ b/source/_posts/2016-12-30-drupal-vm-generator-updates.md @@ -2,6 +2,8 @@ title: Drupal VM Generator 2.9.1 Released tags: ['drupal-vm-generator', releases] use: [posts] +redirect: + - blog/drupal-vm-generator-291-released/ --- {% block excerpt %} I spent some time yesterday working on the [Drupal VM Generator][0], and have released versions 2.8.1, 2.9.0 and 2.9.1. diff --git a/source/_posts/2017-01-07-easier-sculpin-commands-with-composer-and-npm-scripts.md b/source/_posts/2017-01-07-easier-sculpin-commands-with-composer-and-npm-scripts.md index d7fbad32..564e72b0 100644 --- a/source/_posts/2017-01-07-easier-sculpin-commands-with-composer-and-npm-scripts.md +++ b/source/_posts/2017-01-07-easier-sculpin-commands-with-composer-and-npm-scripts.md @@ -2,6 +2,8 @@ title: Easier Sculpin Commands with Composer and NPM Scripts tags: [composer, gulp, sculpin] use: [posts] +redirect: + - blog/easier-sculpin-commands-with-composer-and-npm-scripts/ --- {% block excerpt %} In this video, I show you how I've simplied my Sculpin and Gulp workflow using custom Composer and NPM scripts. diff --git a/source/_posts/2017-01-31-nginx-redirects-with-query-string-arguments.md b/source/_posts/2017-01-31-nginx-redirects-with-query-string-arguments.md index f438378b..52c0c27a 100644 --- a/source/_posts/2017-01-31-nginx-redirects-with-query-string-arguments.md +++ b/source/_posts/2017-01-31-nginx-redirects-with-query-string-arguments.md @@ -2,6 +2,8 @@ title: Nginx Redirects With Query String Arguments tags: [nginx] use: [posts] +redirect: + - blog/nginx-redirects-with-query-string-arguments/ --- {% block excerpt %} This is an example of how my Nginx configuration looked to redirect from an old domain to a new one, and also to redirect from the root `example.com` domain to the canonical `www` subdomain. diff --git a/source/_posts/2017-05-05-fixing-drupal-simpletest-issues-with-docker.md b/source/_posts/2017-05-05-fixing-drupal-simpletest-issues-with-docker.md index 7587a8fc..99c22627 100644 --- a/source/_posts/2017-05-05-fixing-drupal-simpletest-issues-with-docker.md +++ b/source/_posts/2017-05-05-fixing-drupal-simpletest-issues-with-docker.md @@ -10,6 +10,8 @@ slug: fixing-drupal-simpletest-docker meta: og: description: How I managed to get my Drupal SimpleTest tests to run and pass within Docker containers. +redirect: + - blog/2017/05/05/fixing-drupal-simpletest-issues-inside-docker-containers/ --- {% block excerpt %} I’ve been a Drupal VM user for a long time, but lately I’ve been using a combination Drupal VM and Docker for my local development environment. There were a couple of issues preventing me from completely switching to Docker - one of which being that when I tried running of my Simpletest tests, a lot of them would fail where they would pass when run within Drupal VM. diff --git a/source/_talks/dancing-for-drupal.md b/source/_talks/dancing-for-drupal.md index ed6cc26f..02a76603 100644 --- a/source/_talks/dancing-for-drupal.md +++ b/source/_talks/dancing-for-drupal.md @@ -7,6 +7,8 @@ slides: embed: tags: [meetup, umbristol, drupal] tweets: yes +redirect: + - talks/2015/08/25/dancing-for-drupal-umbristol/ --- As part of their [CMS Dance-Off][1], I was selected to speak about Drupal alongside other speakers representing Umbraco, Sitecore and Episerver. diff --git a/source/_talks/drupal-8-module-development.md b/source/_talks/drupal-8-module-development.md index c1e6648c..bcd38eb9 100644 --- a/source/_talks/drupal-8-module-development.md +++ b/source/_talks/drupal-8-module-development.md @@ -19,6 +19,8 @@ meta: type: 'image/png' height: 540 width: 960 +redirect: + - talks/2016/03/05/drupal-8-module-development-drupalcamp-london-2016/ --- New to object-orientated PHP, Symfony or YAML, and want to get started building modules in Drupal 8? This is the session for you! diff --git a/source/_talks/drupal-8-rejoining-the-herd.md b/source/_talks/drupal-8-rejoining-the-herd.md index 574971db..9d4e8c3e 100644 --- a/source/_talks/drupal-8-rejoining-the-herd.md +++ b/source/_talks/drupal-8-rejoining-the-herd.md @@ -6,6 +6,8 @@ tags: [conference, php, drupal, drupal-8] slides: url: https://speakerdeck.com/opdavies/drupal-rejoining-the-herd embed: +redirect: + - talks/2016/06/11/drupal-8-rejoining-the-herd-php-south-coast-2016/ --- [Drupal 8][0] was (finally) released on November 19th 2015, after almost 4 years of work and code commits by over 3,200 different contributors. Whilst it’s pretty much the same as the Drupal that we know and, hopefully, love, a lot has changed behind the scenes and under the hood! diff --git a/source/_talks/drupal-8.md b/source/_talks/drupal-8.md index 58b5442a..3f18f715 100644 --- a/source/_talks/drupal-8.md +++ b/source/_talks/drupal-8.md @@ -10,6 +10,8 @@ video: embed: tags: [meetup, phpsw, drupal, drupal-8] tweets: yes +redirect: + - talks/2015/04/08/drupal-8-phpsw/ --- This was a ten minute lightning talk, designed to highlight the major changes coming in Drupal 8. diff --git a/source/_talks/drupal-development-with-composer.md b/source/_talks/drupal-development-with-composer.md index 41e2590d..b0fb5ee0 100644 --- a/source/_talks/drupal-development-with-composer.md +++ b/source/_talks/drupal-development-with-composer.md @@ -9,6 +9,8 @@ slides: video: url: https://www.youtube.com/watch?v=Yi_FPI3xHwc embed: '' +redirect: + - talks/2016/11/09/drupal-development-with-composer-phpsw/ --- Building a Drupal application? You no longer need to download archives to add new modules or update core, or deal with Drupal specific tools to manage your codebase. diff --git a/source/_talks/drupal-vm-generator.md b/source/_talks/drupal-vm-generator.md index c6e390b1..02e00fc5 100644 --- a/source/_talks/drupal-vm-generator.md +++ b/source/_talks/drupal-vm-generator.md @@ -10,6 +10,10 @@ slides: video: url: https://youtu.be/U1pbKAAO2Wo?t=3696 embed: +redirect: + - talks/2016/03/09/drupal-vm-generator-nwdug/ + - talks/2016/04/02/drupal-vm-generator-drupal-bristol/ + - talks/drupal-vm-generator-2/ --- An short talk about the [Drupal VM Generator][1] project. diff --git a/source/_talks/drupal-vm-meet-symfony-console.md b/source/_talks/drupal-vm-meet-symfony-console.md index 82736900..737543aa 100644 --- a/source/_talks/drupal-vm-meet-symfony-console.md +++ b/source/_talks/drupal-vm-meet-symfony-console.md @@ -7,6 +7,8 @@ slides: url: https://speakerdeck.com/opdavies/drupal-vm-meet-symfony-console embed: image: drupal-vm-meet-symfony-console.png +redirect: + - talks/2016/07/23/drupal-vm-meet-symfony-console-drupalcamp-bristol-2016/ --- _TL;DR - Come and learn about Symfony Console, with examples from a real-world project._ diff --git a/source/_talks/drupalorg-2015.md b/source/_talks/drupalorg-2015.md index 78021977..72ea6fef 100644 --- a/source/_talks/drupalorg-2015.md +++ b/source/_talks/drupalorg-2015.md @@ -6,4 +6,9 @@ tags: [conference, drupalcamp, drupalcamp-london, drupal-association] slides: url: https://speakerdeck.com/opdavies/drupal-dot-org-in-15 embed: +redirect: + - talks/2015/01/18/drupalorg-2015-drupalcamp-brighton-2015/ + - talks/2015/02/28/drupalorg-2015-drupalcamp-london-2015/ + - talks/drupalorg-2015-2/ + - talks/drupalorg-2015/ --- diff --git a/source/_talks/drush-make-drupalbristol.md b/source/_talks/drush-make-drupalbristol.md index 0864b12f..30abc360 100644 --- a/source/_talks/drush-make-drupalbristol.md +++ b/source/_talks/drush-make-drupalbristol.md @@ -6,4 +6,6 @@ slides: url: https://speakerdeck.com/opdavies/drush-make-drupalbristol embed: tags: [meetup, drupal, drupal-bristol, drush, drush-make] +redirect: + - talks/2014/07/02/drush-make-drupalbristol-drupal-bristol/ --- diff --git a/source/_talks/getting-your-data-into-drupal-8.md b/source/_talks/getting-your-data-into-drupal-8.md index 9995975d..5d7147d1 100644 --- a/source/_talks/getting-your-data-into-drupal-8.md +++ b/source/_talks/getting-your-data-into-drupal-8.md @@ -19,6 +19,9 @@ meta: width: 2560 height: 1440 type: image/png +redirect: + - talks/2017/01/18/getting-your-data-into-drupal-8-drupal-bristol/ + - talks/2017/03/04/getting-your-data-into-drupal-8-drupalcamp-london-2017/ --- If you’ve moved a site from Drupal 6 to 7, the chances are that you’ve either used the upgrade path to update your old site in-place, or you built a new site from scratch and used the Migrate module from contrib to migrate your data from the old database. diff --git a/source/_talks/git-flow.md b/source/_talks/git-flow.md index e98a27dc..c7c32159 100644 --- a/source/_talks/git-flow.md +++ b/source/_talks/git-flow.md @@ -11,4 +11,7 @@ video: tags: [conference, drupalcamp, drupalcamp-london, git, git-flow] slug: git-flow tweets: yes +redirect: + - git-flow/ + - talks/2014/03/01/git-flow-drupalcamp-london-2014/ --- diff --git a/source/_talks/goodbye-drush-make-hello-composer.md b/source/_talks/goodbye-drush-make-hello-composer.md index e255ac5c..d5124be3 100644 --- a/source/_talks/goodbye-drush-make-hello-composer.md +++ b/source/_talks/goodbye-drush-make-hello-composer.md @@ -6,6 +6,8 @@ tags: ['meetup', 'drupal', 'composer'] slides: url: http://bit.ly/slides-goodbye-drush-make-hello-composer2 embed: '' +redirect: + - talks/2016/11/17/goodbye-drush-make-hello-composer-drupal-bristol/ --- One of the main outcomes of Drupal 8 was “getting off the island” with third-party code included in core and adopting modern best practices from the wider PHP ecosystem - including [Composer][1], PHP’s dependency manager. diff --git a/source/_talks/sculpin.md b/source/_talks/sculpin.md index 2add92e8..7f380c48 100644 --- a/source/_talks/sculpin.md +++ b/source/_talks/sculpin.md @@ -11,6 +11,8 @@ tweets: yes video: embed: url: https://www.youtube.com/watch?v=aN53arCKZAU +redirect: + - talks/2015/10/14/sculpin-phpsw/ --- [Sculpin][0] is a static site generator written in PHP. It converts Markdown files, Twig templates and standard HTML into a static HTML site that can be easily deployed. diff --git a/source/_talks/test-drive-twig-with-sculpin.md b/source/_talks/test-drive-twig-with-sculpin.md index 4228d99e..b80400d1 100644 --- a/source/_talks/test-drive-twig-with-sculpin.md +++ b/source/_talks/test-drive-twig-with-sculpin.md @@ -8,6 +8,8 @@ slides: code: https://github.com/opdavies/sculpin-demo tags: [conference, drupalcamp, drupalcamp-north, sculpin, twig] tweets: yes +redirect: + - talks/2015/07/25/test-drive-twig-with-sculpin-drupalcamp-north-2015/ --- [Sculpin][1] is a static site generator written in PHP, and based on [Symfony components][2]. It uses [YAML][3] and [Twig][4], which makes it very appealing to Drupal people wanting to learn these in preparation for Drupal 8. diff --git a/source/_talks/what-is-this-drupal-thing.md b/source/_talks/what-is-this-drupal-thing.md index 731d3cfc..a0c7aacb 100644 --- a/source/_talks/what-is-this-drupal-thing.md +++ b/source/_talks/what-is-this-drupal-thing.md @@ -6,4 +6,6 @@ video: url: https://vimeo.com/49827006 embed: tags: [meetup, drupal, unified-diff] +redirect: + - talks/2012/09/05/what-is-this-drupal-thing-unified-diff/ --- diff --git a/source/_views/redirect.twig b/source/_views/redirect.twig new file mode 100644 index 00000000..e5a86c28 --- /dev/null +++ b/source/_views/redirect.twig @@ -0,0 +1,9 @@ + +{% spaceless %} + + + + + + +{% endspaceless %} diff --git a/source/experience.twig b/source/experience.twig index 4f2562b8..bb1f412d 100644 --- a/source/experience.twig +++ b/source/experience.twig @@ -98,6 +98,9 @@ experiences: description: | Maintaining and adding new features to the Horse & Country TV website (Drupal 6). use: [posts] +redirect: + - services/ + - work/ --- {% block content %}

Experience

diff --git a/source/index.md b/source/index.md index d56fd707..4e0acc57 100644 --- a/source/index.md +++ b/source/index.md @@ -17,6 +17,9 @@ tools: - { title: Git, website: http://git-scm.com } - { title: Ansible, website: http://www.ansible.com } use: [posts, testimonials] +redirect: + - about/ + - consulting/ --- {% block content %} # About Me diff --git a/source/projects.twig b/source/projects.twig index 4a134bd1..92928815 100644 --- a/source/projects.twig +++ b/source/projects.twig @@ -2,6 +2,8 @@ layout: page title: Projects use: [projects, posts] +redirect: + - portfolio/ ---