WordPress and More

WordPress and other Content Management Systems (CMS)

My WordPress and CMS Skills

Icons for various content management systems

I've worked in all the major Content Management Systems (CMS) for general website development, as well as specialized Learning Management Systems (LMS). As recently as 10 years ago, it made sense to "build from scratch." Now, with WordPress and other CMSes vastly improved, for many projects they are the best choice.

CMS Work

I'm highly experienced in working with the back-end, PHP/MySQL of WordPress sites to get the best front-end effect. I've created themes and plugins for various clients, and mapped visual UI to WP templates.

Plyo Schema Extender - a Schema Plugin

Structured data or Schema, as defined on the Schema.org website, are becoming more important for websites which define products, services, or creative works like video games. For those who haven't seen schema, here is an example for the Game type from the Schema.org website:

Adding Schema is an invisible way to describe to website better to search engines like Google, which may apply additional formats in search results. For example, an article with a Question and Answer schema attached may appear like the image below, termed "Rich Results" by Google.

Plyo Schema Extender JSON example

Schema can be incorporated directly in HTML markup, but best practice increasingly puts them into a JSON+LD script. The actual code for schema is in JSON format. While multiple JSON+LD scripts may be read by search engines, in the interest of efficiency it is better to put all the schema into one script.

Plyo Schema Extender JSON example

Many websites use Yoast SEO, which is great for basic SEO but short on Schema definitions. While Yoast does have some common schema defined (e.g. Article, WebSite) it is missing many of the more specialized schema. A client, Novy Unlimited, needed to add the Service Schema, as well as the Game and Event Schema. Yoast provides for this via hooks into its plugin, allowing additional schema data to be incorporated into its big JSON-based schema output. I developed a plugin that would work with Yoast SEO, and allow application of additional schema using either Custom Post Types (CPTs) or Categories assigned to a post. The goal was flexible application of additional schema to the Yoast default on existing websites.

The Plyo Schema Extender Plugin

The goal for this project to add schema data to the basic Yoast SEO JSON+LD, which is in the >head< region of the web page. The schema data is used by Google and other search engines to better classify and index the website's content. The plugin is available on GitHub. Since it is used for specific clients of mine, it wasn't added to the WordPress plugins directory.

Coding was done using Visual Studio Code, in a test server. The test server used standard XAMPP wordpress installation. I also added support for secure communication using https/SSL. Plugin development followed guides provided by Yoast for adding to their schema. The resulting interface adds several schema, and allows assignment by CPT or Category. There are also some global fields that fill in default information.

Plyo Schema Extender plugin admin screen
Some Features of Plugin Administraton
  1. Required fields are labeled. The labeling following descriptions from Google and Schema.org
  2. Plugin options allow dynamic URL testing. This means that the plugin will 'flag' links that don't work, and report them in the post, and in the plugin admin area.
  3. Default Yoast schema (e.g. Organization) are automatically used in the construction of new schema.
  4. If Yoast Local SEO (business) is present, its values can be copied into the added schema
  5. Plugin is encoded according to standards, which a clean uninstall.

When a schema is added to a post, metabox fields are added after the Yoast SEO area. The user can type in values, which are stored in the meta-data associated with pages or posts. The user can also toggle schemas on and off on a per-post basis. Multiple schemas may be assigned to a single page or post.

Plyo Schema Extender plugin admin screen

While there are other plugins (e.g. Schema Pro) which provide some of the same functions, Plyo Schema Extender can be extended and adjusted to handle individual schema. For clients who need a less-used schema (e.g. Game) this is an important option. Other solutions generally don't allow all the fields defined by Schema.or to appear in the final code. I can add necessary fields as needed to adjust the plugin to best represent the site to Google.

Crayon Collection

I worked with this nonprofit via Taproot. They had a static website dating from the mid-2000s which needed to be converted to a WordPress theme. On examining the site, I realized their information about their service (providing used crayons to schools) needed an overhaul. So, the first step was to design an information architecture which handled all the players in crayon distribution, and organize it for the Custom Post features of WordPress.

WordPress Information Architecture diagram for crayon collection

After validating the information architecture, I redesigned their menu system.

WordPress menu redesign, Information Architecture for crayon collection

Finally, I built out a custom theme which perfectly reproduced the original site's look and feel, which improving its organization and SEO. This required building a WP theme completely from scratch, and designing templates, partials, and custom code for post types.

custom wordpress theme, showing files, and resulting wireframe for crayon collection
Novy Unlimited

I've provided coding and maintenance for this GamePR site for several years, including plugins, theme coding, UI development and security.

For Novy clients, I've developed UX deliverables into WordPress templates. Here is an example for XPOTulsa, and e-sports convention. I created new wireframes, then reworked the existing (custom) XPOTulsa WordPress theme to match by HTML, CSS, JavaScript, and PHP/MySQL coding.

xpo tulsa wireframes for revised wordpress theme

(Click for enlarged version)

Other UX and Web Dev projects: UX Deliverables | VR UX and Design | More