WordPress vs the JAM stack?

November 11th, 2017

so I watched this video:

I love the JAM stack. I love working with Jekyll (for static HTML sites), JavaScript, and APIs.

BUT.. did you know there would be a but? The but is that I think its unfortunate that this guy (Brian Douglas), who of course is a total JAM evangelist, sees JAM in opposition to WordPress. He spent almost as much time throwing shade on WordPress as he does talking up the beauty of JAM.…

Scaffolding an Angular + Bootstrap App

March 16th, 2017
snohomish river Given the complexity of modern JavaScript web applications, it makes sense to use a scaffolding tool to set up. Fountainjs is a good way to go if you want to have your app built and served with Gulp, Sass and Webpack. This post is about adding Bootstrap the the mix. And how to fix everything that Bootstrap breaks.

About this Blog

March 12th, 2017

This site is a headless, or decoupled Wordpress theme that I coded. Its uses this front-end stack:

It runs on Angular 1.6. node-wapi to pick up data from¬†a WordPress REST API. Bootstrap (3.3.7) for components such as the navbar. Prism.js for code highlighting A responsive flexbox layout. fountain.js boilerplate to get started. Webpack and Gulp tooling. The source is at github/photocurio/topheavy-angular.…

Pretty Permalinks with Angular UI-Router

February 23rd, 2017
Pretty Permalinks with Angular UI-Router Problem: how to get Wordpress-style pretty permalinks into an Angular app? I want my permalinks to have this format: http://domain.com/2017/02/post-slug-here/ I want single posts and category and tag archives to contain slugs, not IDs in the URL. This is not hard to achieve with Angular UI-router. This is how I do it..

A first rate tale, second rate prose

February 22nd, 2017
A first rate tale, second rate prose

The Fall of Giants, by Ken Follet

I love the ambition of this book, and it seems that Follett achieved his goal: the grand tale of the political upheavals of the early 20th Century Europe, and then the unfathomable horror that was the Great War. I really like how meticulously detailed and carefully researched the book is. He spins a fascinating plot, even if it is implausible.…

Pagination with UI-Router and WP-API

February 22nd, 2017
Pagination with UI-Router and WP-API

I added pagination to this site’s headless theme. Its and Angular client for a WordPress API.

The key to this is knowing what Angular’s ui-router can do. This post by Aviv Ben-Yosef was very helpful: Simple pagination and URL params with ui-router. It explains how to set up routes with ‘squashed’ parameters, and make simple pagination functions in your controller.

Another helpful find was in Kadam White’s wpapi utility, which does the actual interaction with my WordPress JSON API.…

Multiple cursor shortcuts

January 22nd, 2017
Multiple cursor shortcuts

My cheat sheet for shortcuts for Atom + Sublime’s multiple cursors

Using text editors these days is so nice! I’m a big fan of Atom. The best part of course is the multiple cursor feature, which Atom shamelessly copied from Sublime Text. My only trouble is not remembering the keyboard shortcuts.

So, I made this little cheat sheet. I printed it, and kept it near my monitor at work.…

An Angular Client for a WordPress site

January 20th, 2017

I coded up an Angular 1.5 app that shows the posts from my WordPress blog. It fetches post data from this site’s Rest API.

A proof-of-concept is here: Cherrytree.

The repo is on my Github: Topheavy-Angular.

It shows a ‘default’ listing of posts on the front page, which is equivalent to the default WordPress loop. I has single post views with the same URL structure as my WordPress permalinks.…

oikos get attachment link filter

March 3rd, 2015
oikos get attachment link filter oikos get attachment link filter This fixes a flaw in the WP gallery shortcode. The problem is that when you make a gallery, and you set link to "file", it links to the original. That might be a 10M jpeg. This function links to the large instead of the original. On every site with galleries, I install lightbox and this nice little filter.