Tag: wordpress

  • 📂

    Migrating my website to Statamic

    I love Laravel.

    I also really like WordPress, for what it is. So when it came to originally putting my personal site together I just wanted to get a simple WordPress site together.

    I have attempted to build my own website and blog in Laravel from scratch multiple times over the years. I even stuck with a build for a while but ultimately went back to WordPress.

    My issue was only down to the fact that I wanted to write more in my own time and found I spent most my time tinkering.

    But I really love Laravel.

    So imagine my joy when I came across Statamic. Statamic is a CMS package that can be installed into a Laravel site and just works seamlessly alongside you Laravel code.

    I am in the process of rebuilding my personal site and will be getting it live as soon as I can.

    I think I will migrate my current site to a new domain, something like “davidpeach.me”, and then use the 4042302 technique to ensure my old posts are still found as I migrate the posts over.

    I’m really looking forward to getting creative with Statamic and then layering on all of the excellent Laravel features as a way to learn as much, and refresh my mind, about my favourite framework.


  • 📂

    Fixing my local development file / folder permissions

    sudo find . -type d -exec chmod g+rwx {} +
    sudo find . -type f -exec chmod g+rw {} +

  • 📂

    Finally got my site to use the roots wordpress structure. Composer dependency management and deployment with laravel forge. 🤓


  • 📂

    Why do WordPress theme developers have to bloody overcomplicate everything?


  • 📂

    Internal server error fixed from the train on my phone. Boom! Oh WordPress how you test me.


  • 📂

    I finally did it

    Update: I’m now using WordPress again.

    Ever since I can remember having my own website, for the most part, I have used WordPress. I’ve loved using it and will always recommend it to clients as being the best way for them to publish online. Of course, with me being a web developer I’m always wanting to tinker. There isn’t a day that goes by without me messing about with something on my site.A concept that I learned about, about six months ago or so, was that of the indieweb. Now this isn’t some new platform or anything like that. Rather it’s a set of principles, a way to approach publish on the web. In fact it’s the oldest method of publishing on the web: publishing on your own website.WordPress is great for publishing. But as my needs became more complex, and needing to make more fine grained choices when publishling different sorts of posts, I found my self neglecting to post notes/thoughts because the process of ticking the correct meta values and category was a bit combersome. The process adding a quick note or thought, like that of jotting something in a notepad, should be quick and effortless.So what I wanted was a stripped back UI from which to post notes, as well as other kinds of posts. Because of this I decided to go with a framework as opposed to a CMS platform, choosing ultimately to go with Laravel.The process is still on going as I still need to configure 301 redirects from my old site. But at least I am now publishing from my new site, and new domain, and it’s never been easier to do.


  • 📂

    Thoughts again about an indieweb CMS

    Some time ago I wrote an article on planning to build my own CMS. I started to work on it using CodeIgniter as its framework. When I started to get overwhelmed by all of the moving parts I was trying to think about all at once I immediately went over to my current site – which is powered by WordPress – and thought “this’ll do me perfectly”.And to be honest it does.The thing is there’s still this nagging feeling in the back of my mind that says to me: “build your own CMS; it will be lightweight; you’ll know it inside-out; you’ll learn all about the IndieWeb’s moving parts”. But then the critic in me says: “Don’t be stupid – that’s why there is a community of talented people who have solved a lot of these things – so you don’t have to, Dave.”But that thought process of mine is negative and against the true spirit of the IndieWeb – building your own tools for yourself; Building something that is 100% to your own specification and something you will use everyday.Now don’t get me wrong I’m hugely grateful to the WordPress plugins that I rely on every day that have made my getting on to the IndieWeb so easy. But I feel it is time to step up my game which is why I am going to set myself a deadline – in the spirit of Tantek’s IndieWeb commitment for 2015-01-01 – of having my site in place with a home-built CMS by 2015-07-01.And apologies in advance to all the great people at IndieWebCamp, for no doubt I will have countless questions for them in the coming months as I hack away at my new CMS. Thank you.


  • 📂 ,

    My IndieWeb Setup

    Please note: This is now out of date somewhat

    This post is an outline of my IndieWeb setup. I describe some of the key plugins I have installed as well as third party services I use. All of which play nicely together for the IndieWeb.Built with WordPressMy personal site is built using WordPress and is a completely custom-built theme. WordPress?—?with its plethora of plugins and diverse, active community?—?provides one of the best platforms from which to build an IndieWeb site today – outside of rolling your own. When I first heard about the IndieWeb and found myself wanting to implement its principles on my own site, I went ahead and installed a plugin I was recommended?—?the IndieWeb Plugin?—?which links to a collection of other plugins that implement certain functionality to tie into those IndieWeb principles.Plugins I have installedYou don’t have to limit yourself to only the plugins I list here?—?I have just listed the ones that I myself have in use in regards to IndieWeb.IndieWeb PluginThis plugin, once installed, provides links to the recommended IndieWeb plugins?—?some of which I have listed below?—?that will help bring you into the IndieWeb. I have also provided direct links to the plugins themselves, or you can search in your admin area’s new plugin interface. I haven’t described them all yet as I am not 100% on what some of them do. As I gain an understanding of others I use, I will include them below. The ones that I have described below are the ones I actively use and understand what they do for me. Download the IndieWeb PluginNextScripts : Social Networks Auto-PosterThis is a great plugin for easily syndicating content out to many third-party silos. I use a custom fork of it with editsThe plugin creators have very kindly added in my code edits to allow twitter replies that create those tweets as replies within the Twitter timeline. Social Networks Auto-Poster?—?or SNAP for short?—?has a flexible way in which to template how and what to share to each silo when posting your content. For example in a small note you may send the full text content only, however for an article you have written you may want to send the post title and permalink. Download the SNAP PluginRel-Syndication for WordPressThis plugin works beautifully with the Social Networks Auto-Poster plugin. It will grab the SNAP plugin’s syndication data for a post, and append a list of links to that post’s content. It will also include the necessary microformats2 meta data in the links of those syndicated copies. Download Rel-Syndication for WordPressWordPress Webmention PluginThis sets up webmention support on the site. It allows me to receive webmentions and automagically creates them as comments to those posts. It will also parse the post content for posts I write for any links contained within, and send webmentions to those links. Download WordPress Webmention pluginIndieWeb Custom TaxonomyThis plugin adds an extra semantic layer to posts. It allows you to categorize your posts as being one of the following: “Bookmark”, “Favorite”, “Like”, “Reply”, “Repost” and “RSVP”. All of which are actions that are found on social networks. It also allows you to save a URL to which you may be replying to. The plugin will then pull in that URL to give a preview of the link with the post content. This shows the context to which your post content may be replying to. Download the IndieWeb Custom Taxonomy PluginWordPress Semantic LinkbacksWhen you receive webmentions* from a site?—?or from Bridgy if you use that (see below)?—?then those comments are added to the site. What the semantic linkbacks plugin does is generate semantic comments using microformats2. *Please Note: you will need to have the WordPress Webmention plugin installed for this plugin to recognize Webmentions. See above. Download the Semantic Linkbacks pluginOther Tools I useBridgyBridgy is absolutely bloody fantastic. It is a web app built by Ryan Barrett and automatically polls a number of third-party silos?—?whichever ones you choose to connect?—?and pulls in any links to your website and any new responses to posts you have sent. Once it pulls in links and responses, it will send them over to your website as webmentions. The WordPress Webmention Plugin?—?mentioned above?—?knows exactly what to do with them. There are a couple of configurations that you may need to do also?—?at least these are what I needed to do. Firstly when bridgy finds replies to a tweet that originated from your site it will need to know where that original link is on your website. For example if you just sent twitter a note with no links back, bridgy will need to look on your site for that original message. But how does it know where the post is? It looks for the post that has, within it’s h-entry markup, the syndication link to that twitter copy. If you are using the Rel-Syndication Plugin for WordPress, then your content should already have the syndication links appended to them. One thing I had to also do was to add a “feed” meta link into my site’s header, in order to tell bridgy where those links could be found on my site (as they were not on my homepage at the time). And that’s my IndieWeb setup. Like I said before, there are some other plugins that were recommended from the IndieWeb plugin. However I have not included these here as I am not yet confident in describing those just yet. Any questions about this setup or any other IndieWeb queries please ask. I’ll do my best to help.


  • 📂

    WordPress as my IndieWeb Foundation

    From the very beginning of its creation, WordPress has been all about empowering people to publish online.

    It now has a huge user base and a community that is always working to update, improve and extend it.

    That’s not to say that you need WordPress to become Indie, in fact many people use a whole range of CMSs — some even custom-built, but WordPress is a great solid foundation to start from.

    When deciding to move towards the IndieWeb, I was already using WordPress and began in the simplest way I could think of — publishing status updates on my site and then simply pasting them into a Tweet or Facebook update.

    Although the idea was there, I was missing the link between the original and syndicated copies. I had the desire. All I needed now was guidance.

    Indie Web Camp

    The Indie web camp site has been — and continues to be — an invaluable resource for me and many others. All the people I have spoken to in the IRC channel have been super friendly and guided me through certain areas that I found tricky.

    If you need any help whatsoever, just ask in the IRC channel, or ask me and I’ll do my best to help. The first thing I did when I discovered the IndieWebCamp site, was follow the getting started guide.

    I couldn’t do a better job of guiding someone through the process of getting their website indiewebified, so I will simply link to it. Because of the fact that the IndieWebCamp site is the best resource out there, my own posts on the subject will be specific to my own implementations and any gotchas that I found.

    As you level up, you can track your progress on the IndieMark page.

    An IndieMark is a set of metrics that show how ‘IndieWeb’ your site is. At the time of writing this post, I am half-way into level 2. One thing to always keep in mind is that it is okay — and encouraged — to implement each thing one step at a time. Just have fun with it!

    WordPress Indie Web Plugin 2.0

    The WordPress indie web plugin calls itself the IndieWeb version of WordPress’ Jetpack plugin and it really is. Once installed, it provides you with direct links to download and install recommended plugins for getting your website on the IndieWeb path.

    I installed all of them at once without reading what each one did and so got myself into a bit of a muddle. However as I work through each one I shall be writing it up under the tag IndieWeb and share what I learn from them.

    Sharing to Social Networks with SNAP plugin

    SNAP is a WordPress plugin that enables the automatic posting to your chosen social networks when you create new content. I have forked SNAP in order to add extra features that I find I need.

    For example, I have added the ability to post to twitter as a reply to another tweet and have it link the newly created tweet as a direct reply to the targeted tweet.

    I have also made it easier for myself to write quick status updates and post them out to silos as duplications of the content.

    And that concludes my first steps in transitioning to the IndieWeb. As I accomplish more, I will write it up and post it under the tag IndieWeb.


  • 📂

    WordPress “Must Use” Plugins Directory

    The Issue

    I wanted to build a site with some custom post types, taxonomies and the like. But what if somebody who has used my theme decided to try another theme later on? What guarantee do they have that those custom post types will be recognized by a future theme?

    None — that’s what.

    WordPress obviously has its plugin directory, which is designed for adding in pieces of functionality that should span across themes. But what if these are essential to the working of the site due to custom post types, taxonomies or shortcodes?

    Either it can be a plugin — which could be accidentally deactivated, or added to the theme’s functions.php — which would need copying over to any future theme.

    A Hidden Gem of a Solution

    Well it turns out that there is a third option — a way for WordPress to auto load essential plugins irregardless of the theme being used. Simply by creating a directory in the ‘wp-content’ folder called ‘mu-plugins’ — which stands for “must use plugins” — and adding plugins as you would into the regular plugins folder, they will be auto loaded with any theme and just work.

    These ‘must use’ plugins will then be viewable in the plugin admin page, in a new option called ‘must use’ — grouped with the other plugin page navigation items, ‘All’, ‘Active’ and ‘Inactive’.

    ‘Must use’ plugins can’t be deactivated in the admin — creating a nice separation of essential plugins for a particular user.

    Thanks to Justin Tadlock for this piece of info.