Given a different type of planning I’d have started with Alan’s Daily Create Theme but that’s now how these particular stars aligned. Instead I had a course site that was mostly built and had been polished in a variety of theme specific ways when the daily create idea came up. I didn’t really want to mess with switching themes etc. as time is getting short. Plus there was probably more than a bit of curiosity if I could stitch 80% of the functionality together via non-programmistan means. I turned to a few of my old standbys to get this done. The theme remains Flat Bootstrap. The plugins pulling the majority of the weight are- Feed WordPress– pulls in the student blogs, Flickr images, and possibly Twitter via this Gravity Forms– lets the site admins create daily create prompts in a structured way without needing to know exactly what they’re doing Display posts shortcode– lets us easily embed the participant submissions with the prompt Simply Exclude– will allow us to include/exclude categories from specific pages. In this case I just wanted to keep the Flickr generated daily create elements from cluttering up the main bloggregate page. I’m ok with showing blog submissions here even if they are daily creates. On the looks side, I’m using Jetpack to do the custom CSS […]
Sometimes it’s the tiny, little bitty things. This is one of those times.1 Issue: Lesley Bullock is an awesome ornithology instructor who has all her students doing field work and they’re aggregating their work to a main mother blog hub. She is even having them record and upload bird songs which is entirely awesome. The problem was that when aggregated, the built in WordPress player wouldn’t show up. Oddly, it’s there in the code. I could see it there taunting me (below). However, the visibility was set to hidden. Once I realized the content was coming in, I tried the least invasive response- that is I just tried to override the CSS using the custom CSS option in Jetpack. No dice. Given that this is hardcoded into the post at the element level that wasn’t a huge surprise but it was worth a shot.2 I considered a few other options- Feed WordPress advanced filters, altering the core WordPress files . . . and they either wouldn’t do what I wanted or they felt too dramatic given the limited use case. I eventually got to the wonderful site for Feed WordPress (far superior to the WP plugin support page). There’s all sorts of good information on creating plugins/filters for Feed WordPress. What I ended up making is incredibly trivial but it […]
I can create basic child themes. I can make some low level plugins. I can take themes and plugins as they’re given and live with the shortfalls. Lately I’ve become (more?) interested with the space between those two options. Can I use one or two plugins to create the equivalent of on-the-fly-child-themes? Can I teach other people who aren’t interested in making child themes how to do it? How replicable are the design/building patterns? To parallel that line walking, I’ve repeatedly tried to deal with the example/tool/tutorial structure in a way that might get people curious. Building lists of tools doesn’t appear to have advantages long term. I’ve done that too many times. Plus it puts the focus on the wrong element from the start. At the same time people need to see the association between tool and possibility.1 For this to ever really work well there has to be a fairly tight entwining of tool, possibility, and example. This site is supposed to show examples by discipline, tell how to make them (tutorial/FAQ), and add in other interesting and useful elements. It may be this matters more to us internally. It’ll help provide a quick way to find examples in the moment of need when talking to instructors and provides enough documentation for most of our internal people to […]
I want to be like Alan Levine someday but as I slowly progressively acquire the necessary coding skills I often make do with various kinds of semi-programistan hackery. Today was an example of that and so worth a bit of blogging. Jesse Goldstein, one of a cadre of most favored sociologists, sent me an email asking how hard it’d be to do a few things with his course site for Understanding Capitalism. He wanted the front page to have – three columns- each from a separate category a way to highlight items of import in the leftmost column a static chunk of text in the leftmost column There are lots of ways to do this. I’m actually confident I could write a child theme to do this . . . but it was fun to do it without that and to do it in about 30 minutes as we sat at the .1 The Theme Jesse course started out with the tried and true Twenty Fourteen theme. It’s a nice theme but not really the one I’d choose for something with three columns. I’ve really been enjoying Flat Bootstrap lately. It’s nice and clean both in the code and in the presentation and it’s, as the name implies, built on the Bootstrap framework which makes all sorts of neat tricks […]
creative commons licensed ( BY-NC-ND ) flickr photo shared by clement127 One of the things we use a lot is what I’ll call templated submissions using Gravity Forms. It’s a solid performer across a variety of activities, disciplines, and instructor technology comfort levels. Costs/Benefits The content is guided/scaffolded so you get consistently constructed products (core elements are there and presented in a consistent manner) in a way that never quite works out with free form entries.1 Want to make sure students apply four lenses of analysis to a website review and end up with consistent titles and formatting? This is the type of construction where forms really help. Often this pattern is used as a way to get the advantage of creating web content without having to give students their own usernames/blogs/etc.2 It does reduce that overhead and makes good sense in situations where a full blog or authoring rights to a common blog may be overkill. One of the main advantages of this type of pattern is ending up with a visible, interactive, and useful aggregation of content. Make that matter. When these assignments have a larger purpose and audience things get far more interesting. A Few Examples These are live classes so please don’t submit entries at these sites. PSY 323< - focused on student submission of video/presentations […]
Image thanks to Armando. In WordPress Multisite, a user can sign up under an email address. They then decide to delete their account for some odd reason. If they try to sign up again under that same email, it’ll say the email address is being used and will become available in a few days. In a situation like ours (all accounts are restricted to VCU email addresses) that’s a problem. You can jump right into phpMyAdmin and delete the row that contains this information in the wp_signups table. That’s no big deal unless you have a giant database and then using phpMyAdmin1 is a very special kind of slow motion misery. The following two piece solution allows me to just go to a website, enter the email address I wish to expunge and presto change-o the email is available to be used again. This isn’t rocket science (but it may be helpful) and there may be alternate paths. Those who know better, feel free to warn and/or educate me. Piece 1 A little tiny HTML form. Piece 2 1 It’s likely someone with more skills would just use the command line to knock all this out but I’m not there yet. I’m working on it.
One of the things I love about my little community of people is the in-process sharing1 of work. Alan is a master of this and he puts in serious work.2 In an attempt to give a little bit of energy back I present you a very rough version of the LPC3 SPLOT Story Brancher. To get at the roots of this idea, go read Alan’s initiating post. Alan’s making little web tools that don’t require logins and are focused on doing one small thing well (smallest possible online learning tools). Alan is capable of doing far more coding than I can so I tend to try to compensate by choosing non-programistan paths. This proof of concept took about 10 minutes this morning and probably shows that but it might inspire some deeper thoughts down the road. This is a quick and dirty example of how Gravity Forms would enable you to- create one form that enables the duplication/forking of whatever post it is in w/o requiring user login/account or creating new forms have the option to do some sort of incremental titling trackback to the parent post automatically for some sort of x begat y begat z etc. etc. navigation Get the Body This is the only code-ish piece. The gist below, added to your theme’s functions.php file, takes the […]
Gravity Forms makes my list of Non-Programistan tools. I haven’t seen quite enough posts celebrating the fact that Gravity Forms can do magic. The key feature at the moment that is kind of blowing my mind is the ability to use modifiers on the submissions fields— the ability to have the label (what the user sees/answers) be one thing and the value be something entirely different. It has the potential to enable some SPLOT like activities without the coding on the tool maker end1 . . . I know that sounds like nonsense but just follow me a bit . . . It’s easy to miss the checkbox that turns on the values. You can see it in the fairly annoying GIF above. The cool thing is you can put virtually anything in the value field- images, HTML chunks etc. This plus the ability to create content templates2 gives you the ability to have user form interactions create some fairly sophisticated content.3 In this example the user selects “Awesome” as the answer to a question and the form would record that AND the following HTML (stored as the value for that answer) The part where this starts to come together is in the construction of a post using the content template option. You get options detailed in the image below. […]
>>>>>You can find an updated version here. As WordPress and Google Drive continue to blend in a variety of ways the desire to embed the contents of Google Drive folders has come up a few times. I found this Stack Overflow post a while back and had been using it myself. But in an attempt to get around iframe issues and make it a little friendlier I wrote a quick and dead simple plugin today. It seems to do the trick . . . Directions Assuming the plugin is installed and activated . . . Go to Google Docs. Get the unique ID for the folder you want to embed- seen in the highlighted portion of the URL in the image below. Then paste it between the shortcodes like so . . . and you get a nice little window that acts as a live interactive portal to the folder.