Monthly Archives: August 2012

Getting a rhythm down

I’m starting to get the hang of setting up structured content in Cascade! It’s a PITA, but can be routinized.

Experiment in oXygen to get the gist of what I want.

Figure out which things should be in the data definition and which things should be in the metadata. (It irritates me greatly that these two pieces are separate from one another.)

Set up the data definition.

Set up the metadata set.

Set up the configuration set. Have discovered that I really like the “calling-page” index block that I learned in training for the DEFAULT area. FWIW, have also discovered that I can’t get the XML configuration working in Global. ๐Ÿ™ So I have a testing “Site” set up on the dev server for doing the initial version of all of this. Which has the added benefit of keeping separate from all the existing site cruft.

Set up the content type.

Set up the folder & create the first item.

Copy the XML into oXygen, edit the XSLT to match the final product. Copy the XSLT into a format, edit the configuration set to apply the format. Tweak as needed.

If I need a list of items, which so far is always, create an index block of one sort or another, grab the XML, do XSLT in oXygen, etc. Create a page to hold the list, add block to “generated content” area, apply format.

Copy data definition XML and final XSLT files back to local drive.

Go into Global of dev server and do all that setup again, this time, copying and editing the relevant existing configuration set (to get the right template & all that). Tweak everything again as needed until it looks right. Save files locally again.

Once more, with enthusiasm…this time in the correct location on the live server. (Or if I need to show something before creating it in someone else’s folder, set up a folder & pages inside webresources.) Send for review, tweak, etc.

When everything is final, create the asset factory. Make sure to make the base item inside whatever _internal folder applies AND to set that item to not be indexed (in case you’ve got a content type index block). Asking aloud: if the base item isn’t set to be indexed or published, does that mean that new items created from it aren’t either? Hm.

Wondering also about adding index block pages to a publish set. Should that be part of the process, or should I leave it to content creators to publish the index when they publish the item? (Alternatively, any way to trigger publishing?)

I should probably just copy all of that into the team wiki and clean it up a bit. Pretty decent documentation, if I do say so. It’s convoluted, for sure, but not totally horrible. So far I’ve managed to avoid Velocity, which I found actually more annoying than XSLT. I didn’t think that was possible, but there it is. Mainly, I’ve worked out converting dates via an external XSLT that’s bundled in the common folder. (It doesn’t work at all locally, and I can’t for the life of me figure out why.) We’ll see what happens when I try to actually create a calendar.

decrufting

I’m thinking that’s actually what I need to focus on inside Cascade. There’s a lot of cruft, a lot of built-up weirdness. I’m not quite sure how to start with that, except maybe by using the Sites feature and rebuilding the main site entirely from scratch. (Eeeep.) Which involves some planning: what pieces of content are native to Cascade? Which ones “live” elsewhere? Should the elsewhere bits be imported as actual Cascade assets, or just displayed & linked? What kinds of content are being created? How can they be made easier? Etc., etc.

Analytics help (some), although partially by pointing to the need for some content that doesn’t yet exist. Really, that clear explanation of who we are, what we do, what the (current/prospective) student might do (either while here or afterwards).

The catalog; the “academics” page; the “studies” page. Those are the core of what’s used on the site. (The main site, anyway. My.e.e, admissions.e.e, library.e.e, and blogs.e.e — those have their own issues. The most important bit in blogs is academic computing’s site; admissions needs to come back into the main site (IMHO) and my.e.e is a whole other thing.)

Speaking of which, I really need to get better data on the admissions site.

Cascade “Bootcamp” Tidbits

To upload a bunch of images (or other files) at once, go into the folder, select Tools > Zip Archive. etc. etc. Works quite nicely!

Inside CSS, can have Cascade manage locations of referenced images: url(‘[system-asset]/_files/images/bg01.jpg[/system-asset]’) and so on. (But in “Edit > System” must check “Rewrite links in file”)

I really wish there was a tooltip next to “system name” when uploading a file that actually SAID that it’ll take the file’s name if you don’t fill it in.

Thinking that the switch to Sites should NOT be done automatically, at least not for the main site. So many things we could be doing so much better.

Is there any way to make the text editor window automatically just a bit bigger w/out going fullscreen?

So in Sites (vs Global) a Content Type is required?

I would really like it if the Data Definition builder forced the no spaces in identifiers. Because seriously that’s the third time I’ve created a data definition with a space in a field ID, and I don’t realize it’s broken until I go to actually create some content & get a damn error.

I really wish this was three (?) half-days that started at a reasonable (PDT) hour and ended at a reasonable (EDT) hour. Getting up at 5:15 is catching up with me.

Really thinking about how to generate a dynamic side navigation rather than having people edit XHTML blocks for navigation.

Still don’t quite get when you’d want to set blocks in the template vs configuration set. Template: that block will ALWAYS be in the same spot in the template. Config set: you might want to change what goes in the various system-regions of the template.

Configuration set can include multiple outputs for individual pages. (That PDF etc that Susan was on about.) And on a page that’s a listing of things, that could theoretically include an RSS feed of those things. No need for two separate files.

When do you use Velocity vs XSLT?

Day 2

Dynamic Fields in the metadata sets – why these vs data definition fields? He explained how they’re different, but not why.

Metadata fields, Visibility “inline” = on the actual content creation page.

We’re not using the “link” content type often enough, as far as I can tell. (My.e.e probly being the prime example.)

Most of today’s stuff was either a repeat of yesterday or things I’d already worked out. I would like to take a look at the other kind of index block, though. And I’m definitely thinking about how to create a non-manual navigation.

Workflow still doesn’t make any sense.

Something I tweeted today: What [redacted] does well, from I can tell: speedy for visitors, easy to see what content is in your site, fine-grained access control.

A related tweet from @eaton: Drupal = rich content modeling, WordPress = great OOB workflow for river of news, Rails = better for pure RESTful apps/APIs?

And the rich content modeling is what I’m trying to get out of Cascade. I would push for Drupal instead, but I don’t know how to get it to do the things that Cascade does really well, which I think are all really important.

Hm.

Yak shaving, of a kind

I need to set up an experiment in Google Analytics…which as it turns out is super-easy. (Much better than the old version!) Except I need to have a goal set up to be able to launch the experiment. And for this particular project, I need to have automatic event tracking set up. Which I just started testing yesterday. So I have to wait for people to visit the pages with the test and either download files or visit external sites. Sigh.

I guess if I get to the middle of next week and it’s pretty clear that the test isn’t working, I can set up the tracking manually on the specific links that I need tracked. Which isn’t a great option, but whatever works?

On the other hand, it’s not entirely ready to launch for other, unrelated, reasons. So I can be patient.

(FWIW: Yak Shaving. I don’t know why I was thinking that post was by Tim Bray, when it’s actually by Seth Godin. Maybe I got to it from Tim Bray, waaaaay back in 2005?)