Jump to content
Macrura

Elliott Carter, composer

Recommended Posts

COMPOSER ELLIOTT CARTER (December 11, 1908 - November 5, 2012) is internationally recognized as one of the most influential American voices in classical music, and a leading figure of modernism in the 20th and 21st centuries.

https://www.elliottcarter.com/

This site was launched some months ago, and was one of the larger projects I completed so far. It took about 4 month to build. (PW 2.7.3)

This was the first project I used the wireRenderFile() pattern on, and it consequently allowed me to reuse a lot of output code, as well as do a lot of markup/object caching with wirecache. The site uses DataTables for all of the major listing pages, Works, Discography and Events, allowing users to filter and search with no page reload.

This probably has the most advanced caching setup that I've done so far, and one example of how it works is on the discography page: https://www.elliottcarter.com/discography/

That page has to hold all 264 albums (json object which is rendered by dataTables), and each album takes a bit of processing to render (formatting of works, artists etc.).

The json for each album's list view is wirecached individually and is generated on visits to the individual album pages, so that they never get generated all at once when visiting the discography page. The complete json object containing all of the albums is also wirecached, then the final page is pro-cached. The album covers are lazy loaded so as to not affect page size or load speed. The selects on the left are also all wirecached as page or regular arrays.

This results in a 1.6s page load time and a page size of 1.12 MB. Without the data being wirecached the load time is around 9 seconds to generate the page, probably longer if it had to regenerate all 264 albums, but the album info never changes, so they are permanently cached unless someone edits one.

Also should note that since there is so much use of wirecache, @Soma's Clear Cache Admin was pretty much indispensable for managing all of the caches.

Other features of the site include extensive use of Schema.org microdata, an events submission system, and a lot of custom stuff in the admin for managing the content, such as automated fetching of album covers from Amazon, converting formbuilder submissions into events, a custom admin dashboard etc..

There are probably 60 modules in use overall, but these in particular saved the day:

  • MenuBuilder
  • AdminCustomFiles
  • AdminPageFieldEditLinks
  • All the Selectize modules
  • URL checker
  • PrevNextTabs
  • WireMailMailgun
  • SetupPageName
  • Changelog
  • AdminCustomPages
  • Twitter Feed
  • Social Share Buttons
  • RSS Enhanced
  • Chosen Select
  • Runtime Markup
  • Batch Child Editor
  • Tracy Debugger

As well as all of the pro modules (ProFields, FormBuilder, ListerPro, and ProCache).

More info, screen shots etc will be gradually posted here...

  • Like 20

Share this post


Link to post
Share on other sites

Nice and clean! Thanks for the insights.

2 hours ago, Macrura said:

The json for each album's list view is wirecached individually and is generated on visits to the individual album pages

I've used a same approach on my very first PW site with the difference that I saved the json on saving the page (and it was for filenames for a JS slider with many images).

  • Like 1

Share this post


Link to post
Share on other sites
41 minutes ago, tpr said:

I've used a same approach on my very first PW site with the difference that I saved the json on saving the page (and it was for filenames for a JS slider with many images).

right, i will probably switch to that way, since it's definitely more efficient.

Share this post


Link to post
Share on other sites

Very nice indeed, and very quick. I admit, I have a very fast internet connection, but it even loads nice and quick from the US to here in SA and overall it feels quite snappy. Well done!

  • Like 1

Share this post


Link to post
Share on other sites

wow thanks guys for SOTW (news 128)  :rolleyes:, had completely missed that somehow! 

Also forgot to mention the credits page https://www.elliottcarter.com/credits/ where thanks to all forum members, and a few folks who really made this project possible during it's development and helped me on the forum, and also just by their modules and/or advice, @ryan, @LostKobrakai, @Martijn Geerts, @adrian, @teppo, @netcarver, @horst, @kongondo, @Soma

(and at some point i still have to figure out how you make those cool images with the screenshots/devices, always have trouble with that...)

  • Like 7

Share this post


Link to post
Share on other sites

wow thanks, though i tried it just now and it doesn't work for me...

Share this post


Link to post
Share on other sites

I just used it on one site I made and it worked, but for some reason a lot of the big name sites I input it fails. I wonder if it relies on a server being permissive.  Weird I found one site that works and it just happens to be one of mine https://www.davidsongalleries.com maybe the site is just slow

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...