Skip to content
Rob Knight edited this page Jul 7, 2022 · 47 revisions

Contributors meet twice weekly. Meeting notes are below. Goals & milestones are here.

Week of 2022-07-05

  • CampusPress to update the network to WP 6.0 on 7/5.
  • We can remove the Gutenberg plugin as an installed dependency in our dev environments.
  • Rob working on a nomenclature for theme classes.
  • Specification for a theme setting for site subtitle:
    • An admin dashboard form with two fields: text to input the subtitle and a boolean control to show or hide the subtitle.
    • Logic in the filter we used in the site-title block to show the subtitle if the boolean switch is true.

Week of 2022-06-20

  • Whistleblower site, migrated by students.
    • Used theme editor to modify front page template. YIKES
    • We need to configure template site to have a front page already (with Reading settings set for static front page)

Week of 2022-06-13

  • Jason setup a default feedback form.
    • We should set this up in the site template so every site has it by default at /feedback/.
  • Jason created a starter plugin that integrates with our block theme.
  • CampusPress will update to WP 6.0 in June.
  • We will disable Gutenberg network-wide and adopt 6.0 core.
    • Need to disable Gutenberg on all sites manually?
  • Gutenberg 13.4.0 and WP 5.8.4 break navigation in the site editor.
    • Can't save menu changes
    • All navigation blocks get reset

Week of 2022-04-26

  • Doing a walkthrough on Monday May 2 with Program Leadership and Jason.
  • This week and next should be about stabilization and cleaning up template files.
  • Need to lock blocks we don't want site managers to edit.
  • Need to give site managers the edit_theme_options capability so they can manage menus.
  • Need to fix the SVG logos situation. Rob maybe has a solution.

Week of 2022-04-18

  • Next theme release is a release candidate? We think so because the big breaking change this week is the last one we foresee.
  • Core functionality plugin is ready for CampusPress (sent to them on 2022-04-20)
    • Adds a "UCSC Site Manager" role that cannot administer themes.
    • Moves shortcodes into the plugin and out of the theme.
  • Block styles work well for creating packaged button configurations. What other blocks should we make styles for?
  • Beta.6 or RC.1 of the theme released this week.
  • Need to configure a template site in CP that can be cloned to create new sites.

Week of 2022-04-11

  • News front page structure: remove layout in the theme files

  • Styles for blocks allow for a one-click


  • Add subtitle field

  • Release beta.5 on Friday.

  • Looking at ways to limit the customization of buttons:

    • Border radius
    • Color themes: need to limit what is possible or have preconfigured styles
  • Released 1.0.0-beta.5. Beta 4 had a bug that we missed. Rather than undo what we did, we opted to release beta 5.

  • Beta 5 adds a subtitle field to posts and adds Advanced Custom Fields Pro as a dependency.

  • We are now in need of some testing. We might need to create a formal sprint to get testing setup.

  • We need automated testing to make sure the theme can be activated and that the front page returns HTML.

  • Local testing setup will be important too.

  • We feel ready for pilot partners. There will be plenty of feedback and changes to come. Now is the time to get people in there and using the theme.

  • Customization of block settings seems to be possible with a similar mechanism to block content filtering.


  • Pagination link styles

  • Advanced Custom Fields (available on CampusPress) to add meta data field for news articles

  • FIX: breadcrumbs show up in any loop of posts.

  • Advanced Custom Fields for news article metadata: ACF Pro is a minimum requirement because you can create blocks from ACF fields with the pro version. The user experience is better.

  • Still thinking about version bumping in various files when we do a release.

  • Pilot partners get their sites next week.


  • Theme is on WordPress-DEV CP network. On prod next week.
  • So far, it looks good with UCSC custom plugin for directory.
  • We cannot give site owners access to modify the theme within the theme editor
  • Modifying the output of Gutenberg blocks to match our semantic HTML structure requires filtering the block
  • Still seeing pokey performance on CP WordPress sites.
  • We've found a nice, clean, scripted way to reliably generate the folder required to make the theme portable using wp-scripts plugin-zip
  • Block Gap setup is seemingly fixed for now.


  • Pagination links

Custom fields for news articles

  1. subtitle
  2. campus_message_to
  3. campus_message_from


  • Individual story sharing to social: use a plugin that modifies the core social links block. We'll table this for now and come back to it.
  • Breadcrumbs: using another plugin, Hybrid Breadcrumbs. Test to see if it will work with Truss.
  • Questions for the coming week:
    • NO: Should we cement multi-column layouts into the theme on listing pages like news front?


  • Reusable blocks are freaking crazy. They can be exported and imported (as json). Can we include them in the theme?
    • Great for footers and headers and other repeated content.


  • Rob: PR for setting site title and page titles
  • .alignfull class is shifted too far left


  • Further reduce the redundant template parts files since they aren't necessary for content areas
  • CampusPress has our account info for the theme and plugins repo
  • CampusPress is still on WP 5.8.3. We need them to upgrade to 5.9 to support our theme.
  • Initial performance test on CP network is disappointing. We're going to need a huge improvement or news and the homepage will have to live elsewhere.


  • Name the two stylesheets properly for their contexts (we were able to use just one sheet for both)
  • Test the 'one sass partial per core block' setup (this should work just fine)


  • We made sure the editor enqueues the same sass partials as the front end.
  • We will go forward assuming that we will have an individual sass partial file for each core block only when we need to change it.
  • We learned that theme.json has the final say in the style cascade, in both the front and the back end of the site.


  • Home page templates wrap the site title in an <h1> tag. All other page templates wrap the site title in a <p> tag. Why? Because the home page typically doesn't have a discrete h1. All other pages do. Also, you are on the home page, so the site title is a logical h1 when no other h1 is on the page.
  • In WCMS, we have the same problem. We opted for site titles always being in <p> tags. That means only home pages don't have a proper h1 tag, and all sub pages do.


  • We've entered a re-factoring stage. Important to clean up in prep for the next phase.
  • Focus on sass files, templates, and linting sass, PHP, and HTML files.


  • The other header template parts can also be refactored to remove redundant parts

  • Need a build script to create the installable theme folder

  • Release betas with standard-version: standard-version --release-as 1.0.0-beta.V where 'V' is the beta number.

  • Refactored the header files to pull out the campus page top region into a separate template part.

  • Jason found an official way™ 😆 for modifying block output in PHP before it is rendered.


  • Jason organizing and abstracting templates and parts according to the latest block theme standards:
    • Abstract parts out and create sub-templates only when need is obvious (logo display differences between campus home and subsites)
    • Name template abstractions for widest use case
      • header-subsite.html rather than
      • 🛑 header-department.html
  • First release on 2022-02-04
  • Theme release process:
    • standard-version locally to bump version and create/update the CHANGELOG
    • Create a zipped folder of the built theme files for WordPress users to download
    • Push to Github and include tags
    • Create a pre-release (title is the tag) and attach working build
    • Save the release (Slack will be notified 🎉)


  • Pull content creation functions from theme
    • Include a wordpress.xml file along with the theme that creates a couple of pages, posts, and menus, and puts them in the correct spots in the theme.
    • Treat this as a first-run experience for new theme users who may or may not be in CampusPress.


  • Automatic page "About this theme" (We're changing this)
  • Shove footer to bottom
  • Remove title from home page template
  • Gap in some flexed objects (menus in global header)
  • Walk through the front versus back end CSS.


  • Deployment strategy
  • Sample content (in a WordPress.xml file)
  • Individual block theming workflow
  • Add a folder for blocks
  • One CSS/SCSS file for each block
  • Enqueue block styles in functions.php once for each block, so WP knows which custom styles to load on a page.


  • Development workflow added to README:
    1. Have Docker running and wp-env installed.
    2. In your themes subfolder, gh repo clone ucsc/theme-ucsc ucsc
    3. In the ucsc folder, npm install && npm run build to compile theme file
    4. cd to root folder and run wp-env start
    5. Login (admin:password) and navigate to http://localhost:8888/wp-admin/import.php


  • Whether or not to have specific home page template? Not yet, but can do if it seems necessary