329 lines
15 KiB
HTML
329 lines
15 KiB
HTML
<!DOCTYPE html>
|
||
<html class="no-js" lang="en-GB">
|
||
<head>
|
||
<title>Blog | Oliver Davies</title>
|
||
|
||
<meta charset="UTF-8">
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
|
||
|
||
<meta property="og:url" content="https://www.oliverdavies.uk/blog/page/2.html">
|
||
<meta property="og:title" content="Blog"/>
|
||
|
||
|
||
|
||
<meta property="og:image" content="https://www.oliverdavies.uk/assets/images/me-precedent.jpg"/>
|
||
<meta property="og:image:height" content="327"/>
|
||
<meta property="og:image:type" content="image/jpg">
|
||
<meta property="og:image:width" content="327"/>
|
||
|
||
|
||
|
||
<link rel="stylesheet" href="https://www.oliverdavies.uk/assets/css/main.css">
|
||
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=57" sizes="57x57">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=114" sizes="114x114">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=72" sizes="72x72">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=144" sizes="144x144">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=60" sizes="60x60">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=120" sizes="120x120">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=76" sizes="76x76">
|
||
<link rel="apple-touch-icon" href="/assets/images/me-precedent.jpg?s=152" sizes="152x152">
|
||
|
||
<link rel="icon" href="/assets/images/me-precedent.jpg?s=160" sizes="160x160">
|
||
<link rel="icon" href="/assets/images/me-precedent.jpg?s=96" sizes="96x96">
|
||
<link rel="icon" href="/assets/images/me-precedent.jpg?s=32" sizes="32x32">
|
||
<link rel="icon" href="/assets/images/me-precedent.jpg?s=16" sizes="16x16">
|
||
</head>
|
||
<body class="page--blog page--blog__list">
|
||
<nav class="navbar navbar-inverse navbar-fixed-top">
|
||
<div class="container">
|
||
<div class="navbar-header">
|
||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
|
||
<span class="sr-only">Toggle navigation</span>
|
||
<span class="icon-bar"></span>
|
||
<span class="icon-bar"></span>
|
||
<span class="icon-bar"></span>
|
||
</button>
|
||
<a class="navbar-brand" href="https://www.oliverdavies.uk/">Oliver Davies</a>
|
||
</div>
|
||
|
||
<div id="navbar" class="collapse navbar-collapse" role="navigation">
|
||
<ul class="nav navbar-nav">
|
||
<li class="">
|
||
<a href="/">About</a>
|
||
</li>
|
||
|
||
<li class="">
|
||
<a href="/experience">Experience</a>
|
||
</li>
|
||
|
||
<li class="">
|
||
<a href="/testimonials">Testimonials</a>
|
||
</li>
|
||
|
||
<li class="">
|
||
<a href="/talks">Talks</a>
|
||
</li>
|
||
|
||
<li class="active">
|
||
<a href="/blog">Blog</a>
|
||
</li>
|
||
|
||
<li class="">
|
||
<a href="/contact">Contact</a>
|
||
</li>
|
||
</ul>
|
||
</div> </div>
|
||
</nav>
|
||
|
||
<div class="container">
|
||
<div class="row">
|
||
<main class="col-md-9">
|
||
<h1>Blog</h1>
|
||
|
||
<ul class="posts">
|
||
<li class="post">
|
||
<h2>Announcing the Drupal VM Generator</h2>
|
||
|
||
<p class="posted text-light">15th February 2016</p>
|
||
|
||
|
||
<p>For the past few weeks I’ve been working on a personal side project, based on Drupal VM. It’s called the <a href="https://github.com/opdavies/drupal-vm-generator">Drupal VM Generator</a>, and over the weekend I’ve added the final features and fixed the remaining issues, and tagged the 1.0.0 release.</p>
|
||
|
||
|
||
<a href="/blog/2016/02/15/announcing-the-drupal-vm-generator/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Programmatically Load an Entityform in Drupal 7</h2>
|
||
|
||
<p class="posted text-light">22nd December 2015</p>
|
||
|
||
|
||
<p>I recently had my first experience using the <a href="https://www.drupal.org/project/entityform">Entityform module</a> 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 <code>drupal_get_form()</code> function and render it, but this didn’t work.</p>
|
||
|
||
<p>Here are the steps that I took to be able to load, render and embed the form.</p>
|
||
|
||
|
||
<a href="/blog/2015/12/22/programmatically-load-an-entityform-in-drupal-7/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Automating Sculpin Builds with Jenkins CI</h2>
|
||
|
||
<p class="posted text-light">21st July 2015</p>
|
||
|
||
|
||
<p>As part of re-building this site with Sculpin, I wanted to automate the deployments, as in I wouldn't need to run a script like 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, …</p>
|
||
|
||
<a href="/blog/2015/07/21/automating-sculpin-jenkins/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Sculpin and Twig Resources</h2>
|
||
|
||
<p class="posted text-light">19th July 2015</p>
|
||
|
||
|
||
<p>Here’s a list of resources that I compiled whilst preparing for my <a href="http://drupalcampnorth.org/session/test-drive-twig-sculpin">Sculpin and Twig talk</a> at <a href="http://drupalcampnorth.org">DrupalCamp North</a>.</p>
|
||
|
||
|
||
<a href="/blog/2015/07/19/sculpin-twig-resources/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Updating Forked Repositories on GitHub</h2>
|
||
|
||
<p class="posted text-light">18th June 2015</p>
|
||
|
||
|
||
<p>Sculpin
|
||
|
||
People may or may not know, but this site runs on Sculpin, a PHP based static site generator (this may be the first time that I've mentioned it on this site). The source code is hosted on GitHub, and I've listed the site on the Community page on the Sculpin …</p>
|
||
|
||
<a href="/blog/2015/06/18/updating-forked-repositories-on-github/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>How to Define a Minimum Drupal Core Version</h2>
|
||
|
||
<p class="posted text-light">3rd April 2015</p>
|
||
|
||
|
||
<p>This week, my first code patch was committed to Drupal core. 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 …</p>
|
||
|
||
<a href="/blog/2015/04/03/how-to-define-a-minimum-drupal-core-version/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>2014</h2>
|
||
|
||
<p class="posted text-light">20th March 2015</p>
|
||
|
||
|
||
<p>A lot happened in 2014. Here are some of the main things that I'd like to highlight.</p>
|
||
|
||
|
||
<a href="/blog/2015/03/20/2014/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Include a Local Drupal Settings file for Environment Configuration and Overrides</h2>
|
||
|
||
<p class="posted text-light">20th December 2014</p>
|
||
|
||
|
||
<p>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.</p>
|
||
|
||
|
||
<a href="/blog/2014/12/20/include-local-drupal-settings-file-environment-configuration-and-overrides/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Include environment-specific settings files on Pantheon</h2>
|
||
|
||
<p class="posted text-light">27th November 2014</p>
|
||
|
||
|
||
<p>I was recently doing some work on a site hosted on <a href="http://getpantheon.com">Pantheon</a> and came across an issue, for which part of the suggested fix was to ensure that the <code>$base_url</code> variable was explicitly defined within settings.php (this is also best practice on all Drupal sites).</p>
|
||
|
||
<p>The way that was recommended was by using a <code>switch()</code> function based on Pantheon's environment variable. For example:</p>
|
||
|
||
|
||
<a href="/blog/2014/11/27/pantheon-settings-files/">Read more →</a>
|
||
</li>
|
||
<li class="post">
|
||
<h2>Using Remote Files when Developing Locally with Stage File Proxy Module</h2>
|
||
|
||
<p class="posted text-light">20th November 2014</p>
|
||
|
||
|
||
<p>How to install and configure the <a href="https://www.drupal.org/project/stage_file_proxy">Stage File Proxy</a> module to serve remote images on your local Drupal site.</p>
|
||
|
||
|
||
<a href="/blog/2014/11/20/using-remote-files-when-developing-locally-with-stage-file-proxy-module/">Read more →</a>
|
||
</li>
|
||
</ul>
|
||
|
||
<ul class="pager">
|
||
<li class="next"><a href="https://www.oliverdavies.uk/blog">Newer →</a></li>
|
||
<li class="previous"><a href="https://www.oliverdavies.uk/blog/page/3.html">← Older</a></li>
|
||
</ul>
|
||
</main>
|
||
|
||
<div class="col-md-3">
|
||
<div class="panel badges text-center">
|
||
<a href="https://assoc.drupal.org/membership" title="I’m a Drupal Association member." class="is-block">
|
||
<img
|
||
src="//www.oliverdavies.uk/assets/images/badges/da-individual-member.png"
|
||
alt="Drupal Association Individual Member"
|
||
width="200"
|
||
/>
|
||
</a>
|
||
|
||
<div class="is-flex align-items-center">
|
||
<img
|
||
src="//www.oliverdavies.uk/assets/images/badges/acquia-d8-developer.png"
|
||
alt="Acquia Certified Developer - Drupal 8 Exam Badge"
|
||
class="is-2"
|
||
/>
|
||
|
||
<img
|
||
src="//www.oliverdavies.uk/assets/images/badges/acquia-d8-back-end.png"
|
||
alt="Acquia Certified Back End Specialist - Drupal 8 Exam Badge"
|
||
class="is-2"
|
||
/>
|
||
</div>
|
||
|
||
<a href="http://conference.phpnw.org.uk/phpnw17" class="is-block">
|
||
<img src="//www.oliverdavies.uk/assets/images/badges/phpnw17.png" alt="">
|
||
</a>
|
||
</div>
|
||
<div class="availability panel panel-default">
|
||
<div class="panel-heading">Availability</div>
|
||
|
||
<div class="panel-body">
|
||
<p>
|
||
<i class="fa fa-thumbs-o-up text-warning"></i>
|
||
|
||
|
||
Currently have limited part-time capacity
|
||
</p>
|
||
<p>
|
||
<i class="fa fa-thumbs-o-down text-danger"></i>
|
||
|
||
Currently no spare full-time capacity.
|
||
|
||
</p>
|
||
</div>
|
||
</div>
|
||
<div class="latest-posts panel panel-default">
|
||
<div class="latest-posts__heading panel-heading">Latest blog posts</div>
|
||
|
||
<ul class="list-group">
|
||
<li class="post list-group-item">
|
||
<span class="post__title">
|
||
<a href="/blog/2017/07/13/publishing-sculpin-sites-with-github-pages/">
|
||
Publishing Sculpin Sites with GitHub Pages
|
||
</a>
|
||
</span> -
|
||
<span class="post__date">13th July, 2017</span>
|
||
</li>
|
||
<li class="post list-group-item">
|
||
<span class="post__title">
|
||
<a href="/blog/2017/06/09/introducing-the-drupal-meetups-twitterbot/">
|
||
Introducing the Drupal Meetups Twitterbot
|
||
</a>
|
||
</span> -
|
||
<span class="post__date">9th June, 2017</span>
|
||
</li>
|
||
<li class="post list-group-item">
|
||
<span class="post__title">
|
||
<a href="/blog/2017/05/20/turning-drupal-module-into-feature/">
|
||
Turning Your Custom Drupal Module into a Feature
|
||
</a>
|
||
</span> -
|
||
<span class="post__date">20th May, 2017</span>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
|
||
</div> </div>
|
||
<footer class="container">
|
||
<p class="copyright">
|
||
© 2010-2017 Oliver Davies. Built with <a href="https://sculpin.io">Sculpin</a>.
|
||
</p>
|
||
|
||
<div class="meetups">
|
||
<h2>Things that I organise</h2>
|
||
<ul>
|
||
<li class="meetups--drupal-bristol">
|
||
<a href="http://www.drupalbristol.org.uk" title="Drupal Bristol">
|
||
<img
|
||
src="//www.oliverdavies.uk/assets/images/meetups/drupal-bristol.jpeg"
|
||
alt="Drupal Bristol logo"
|
||
>
|
||
</a>
|
||
</li>
|
||
<li class="meetups--drupalcamp-bristol">
|
||
<a href="http://www.drupalcampbristol.co.uk" title="DrupalCamp Bristol">
|
||
<img
|
||
src="//www.oliverdavies.uk/assets/images/meetups/drupalcamp-bristol.png"
|
||
alt="DrupalCamp Bristol logo"
|
||
>
|
||
</a>
|
||
</li>
|
||
<li class="meetups--phpsw">
|
||
<a href="http://phpsw.uk" title="PHPSW">
|
||
<img
|
||
src="//www.oliverdavies.uk/assets/images/meetups/phpsw.jpeg"
|
||
alt="PHPSW logo"
|
||
>
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</footer>
|
||
|
||
<script src="https://www.oliverdavies.uk/assets/js/site.js"></script>
|
||
|
||
<script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-11967257-1', 'auto'); ga('send', 'pageview');</script>
|
||
|
||
</body>
|
||
</html>
|