Computer Programming

Yes, a bit specific, but I need to store some links!

Page Mapping... RIP (When Your Business Case Eliminates a Feature)

So, I had two use cases for this subdomain mapping, and I figured out that one of these use cases isn't relevant, or it is really not relevant in the long term.

As always, business needs determine technical needs, though that can get lost when you're focused on code.

Domain Mapping with Page Mapping

I had one of those mornings and a little bit of the afternoon when I had to dig pretty deep into the code... wrote a lot of code, then trashed most of it.

My goal was to be able to map a subdomain to a page's permalink. This way, I can have foobar.example.com map to example.com/foobar/.

WP's Customizer's weird IFRAME Glitch

I'm not sure if this is a bug, but it's so odd that I'll leave a post here to remind myself about this. The Customizer has an odd behavior if you enter it via the big blue button on the Admin dashboard that reads "Customize Your Site".

Random Rabbitholes about IFRAMES and WP's Script Loader

My script was working, but it wasn't loading correctly the first time. I had to reload to make it run. Unacceptable.

I spent a full day going down a lot of interesting rabbitholes, but ended up finding a really simple, almost obvious, solution. That's a good thing, but the torturous journey is the reward.

filter_var? filter_input? No, Use Filter Input Array.

I've been a real nut for filter_var() for years, and have come up with concise ways to use it, but totally missed this other function, which, at first look, seemed a little too specialized.

filter_input_array()

Well, I was so wrong. This is a great way to filter inputs. I figured this out when I had to fix up some code because it was throwing a zillion "Notice, index foobar not defined." in the error logs.

That's what happens when your legacy code looks like this:

$bar = $_GET['bar'];

all over the place, and it's not defined.

Greasemonkey/ Tampermoney Ebay Seller Script to Filter Active Listings

I wrote another script at Greasyfork. Here's my profile.

This one adds a "filter" feature to the ebay selling list so you can quickly find specific items.

Greasyfork is a repository of scripts for Greasemoney and Tampermoney, web browser extensions that allow you to execute your own Javscript code on any web page.

This means you can create elements, insert them onto the page, and do automate some repetitive tasks.

Using wp.media.view.Modal

There are a lot of demos and tutorials about incorporating the wp.media image uploader and selector, but not much about the other parts of the library.

wp.media.views.Modal is a blank modal view, which the media modal uses as its default container.

This view is demo'd in the Media Guide, but it's not really discussed elsewhere.

Modal displays the large white box that contains the media manager. Within wp.media, it's used only two times.

WordPress Study

I'm studying the wp.media library, and Backbone.js. I never really did anything with except toy programs with Backbone - and I didn't really grok it, so now I can learn it... post Angular and post-React. It's going backwards in time, but, still instructive because the Backbone.js idioms are different from the easier-to-use frameworks.

wp.media Tutorials, and wp.Backbone. Subviews

I'm still working on reading through the WP media code, but found several references that have helped.

WP Media UI: States, StateMachine, and Frame

(It seems like I got the AJAX server working, at least somewhat. So I needed to implement the editors. This is really difficult because it's all in the wp.media hierarchy, and with keywords like "wp" and "media", it's hard to find the documentation. I have been digging around in the code trying to understand it, and came up with notes, which I'll post occasionally. These are mainly for myself, to review when I need to restart the exploration, but they're posted because someone else might find this useful.)

These are incomplete, and probably incorrect notes.

Developing admin-ajax.php Handlers with PHPUnit and Curl (WordPress WP)

The typical way I've made AJAX handlers that hook into admin-ajax.php is with Firebug and little bits of Javascript code to exercise the REST API. The problem with this is that you lose all the development code. This note shows how to use PHPUnit to write your code as tests, and develop the REST API using something like test driven development (TDD).

WordPress: How to use get_shortcode_regex()

get_shortcode_regex() (GSR() from now on) is used to parse shortcodes from a post's text.

I was writing a filter to take the post text, parse the shortcodes, and modify them by adding an "id" parameter.

After I spent some time writing a regex to parse the shortcodes, I discovered GSR(). GSR() was better and more complete.

Now I just had to learn to use it - and there weren't any docs.

Let's Review How to Use Shortcodes

You've basically got five ways to use shortcodes:

[[fe-escape]]
[[fe-escape] ...

Re: Destructured Objects as Parameters

Re: https://css-tricks.com/new-favorite-es6-toy-destructured-objects-parameters/#more-244951

Since the comments were closed, I'm noting here, that Python figured this out a while back.

Function parameters start with required positional parameters, followed by optional positional parameters, followed by named parameters.

def fun(a, b, c=10, **kwargs):

In JS this would be:

function fun(a, b, c, obj) {
    c = (c === undefined ?

Faster Mobile Web Apps with Offline-First

https://nolanlawson.com/2016/10/13/progressive-enhancement-isnt-dead-but-it-smells-funny/

Makes me want to re-revive sf-active-js, which had some caching features to let you flip through headlines quickly.

The trick was to decouple retrieving data from the network, from drawing data to the screen. The screen has to keep polling the local data-sync service rather than the network.

Syndicate content