March 2024
Notes
- Created implementation of Shadow Taxonomies — Allows us to connect shows and actors back to characters, as a custom taxonomy, which is much faster than the old query. In addition, it creates the base for a ‘relationship chart’ feature.
- Characters (SHADOW) –
shadow_tax_characters
- Post Meta
lezchars_relationship_chart – Connect characters to characters for the web of relationships
Key
Custom Post Types
There are four custom post types in use:
- Characters –
post_type_characters
- Shows –
post_type_shows
- Actors –
post_type_actors
- TVMaze –
post_type_tvmaze
Characters
| Data | Type | Name | Notes |
| Cliche | custom taxonomy | lez_cliches | Select2 (via CMB2) |
| Cliche (2) | post meta | lezchars_cliches | auto populated on post save via CMB2 |
| Gender | custom taxonomy | lez_gender | dropdown – single select |
| Sexuality | custom taxonomy | lez_sexuality | dropdown – single select |
| Romantic Orientation | custom taxonomy | lez_romantic | dropdown – single select |
| Romantic Partners | post meta | lezchars_relationship_chart | Select2 (via CMB2) |
| Actor | post meta | lezchars_actor | Repeatable dropdown (single select) of Actor CPTs |
| Shows Group | post meta | lezchars_show_group | Array: Repeatable array of show data (see below) |
| Death | post meta | lezchars_death | Array: Repeatable Date (MM-DD-YYYY) |
| Shadow Taxonomy | custom taxonomy | shadow_tax_characters | auto created on publish via CMB2 |
Shows Group
| Data | Type | Name | Notes |
| Shows | post meta | lezchars_shows | array of shows generated from shows CPT |
| Roles | post meta | lezchars_roles | options hardcoded in file |
| Years Added | post meta | lezchars_years | Years (1961 to Now +1) |
Shows
| Data | Type | Name | Notes |
| Formats | custom taxonomy | lez_formats | dropdown – single select |
| Genres | custom taxonomy | lez_genres | Select2 (via CMB2) |
| Nations | custom taxonomy | lez_nations | normal taxonomy |
| Show Stars | custom taxonomy | lez_stars | dropdown – single select |
| Stations | custom taxonomy | lez_stations | normal taxonomy |
| Tagged | custom taxonomy | lez_show_tags | normal taxonomy |
| Tropes | custom taxonomy | lez_tropes | Select2 (via CMB2) |
| Warnings | custom taxonomy | lez_triggers | dropdown – single select |
| Formats (2) | post meta | lezshows_tvtype | auto populated on post save via cmb2 |
| Genres (2) | post meta | lezshows_genres | auto populated on post save via cmb2 |
| Nations (2) | post meta | lezshows_nations | auto populated on post save via cmb2 |
| Stations (2) | post meta | lezshows_stations | auto populated on post save via cmb2 |
| Tropes (2) | post meta | lezshows_tropes | auto populated on post save via cmb2 |
| Affiliate Links | post meta | lezshows_affiliate | array of URLs to where you can watch |
| Airdates | post meta | lezshows_airdates | array: dropdown years for start/end |
| Character Count | post meta | lezshows_char_count | auto populated on post save |
| Character Count (Dead) | post meta | lezshows_dead_count | auto populated on post save |
| Character Gender | post meta | lezshows_char_gender | array – auto populated on post save |
| Character List | post meta | lezshows_char_list | array – auto populated on post save |
| Character Sexuality | post meta | lezshows_char_sexuality | array – auto populated on post save |
| Character Romantic | post meta | lezshows_char_romantic | array – auto populated on post save |
| IMDB ID | post meta | lezshows_imdb | text area |
| Notable Episodes | post meta | lezshows_episodes | text area |
| On Air | post meta | lezshows_on_air | yes/no auto-populated on post save |
| Plots and Relationship Details | post meta | lezshows_plots | text area |
| Primary Genres | post meta | lezshows_genres_primary | dropdown of genres – auto populated via cmb2 |
| Quality? (rating) | post meta | lezshows_quality_rating | number (0-5) hardcoded in file |
| Quality? (details) | post meta | lezshows_quality_details | text area |
| Realness? (rating) | post meta | lezshows_realness_rating | number (0-5) hardcoded in file |
| Realness? (details) | post meta | lezshows_realness_details | text area |
| Screentime? (rating) | post meta | lezshows_screentime_rating | number (0-5) hardcoded in file |
| Screentime? (details) | post meta | lezshows_screentime_details | text area |
| Seasons | post meta | lezshows_seasons | number (forced by CMB2) |
| Ships | post meta | lezshows_ships | text area |
| Similar Shows | post meta | lezshows_similar_shows | attached posts |
| Show Score | post meta | lezshows_the_score | auto populated on post save |
| Show Scores (3rd Party) | post meta | lezshows_3rd_scores | show scores from internal and 3rd party APIs, auto-populated on post save |
| TV Maze | post meta | lezshows_tvmaze | array of next episode to air information, auto-populated on post save |
| Worth It? (rating) | post meta | lezshows_worthit_rating | [Yes|Meh|No|TBD] hardcoded in file |
| Worth It? (details) | post meta | lezshows_worthit_details | text area |
| Worth It? (Show We Love) | post meta | lezshows_worthit_show_we_love | checkbox |
Actors
| Data | Type | Name | Notes |
| Gender | custom taxonomy | lez_actor_gender | dropdown – single select |
| Pronouns | custom taxonomy | lez_actor_pronouns | checkbox – multi select |
| Romantic Orientation | custom taxonomy | lez_actor_romantic | dropdown – single select |
| Sexuality | custom taxonomy | lez_actor_sexuality | dropdown – single select |
| Date of Birth | post meta | lezactors_birth | Date (forced by CMB2) |
| Date of Death | post meta | lezactors_death | Date (forced by CMB2) |
| Homepage | post meta | lezactors_homepage | text area |
| Facebook | post meta | lezactors_facebook | text area |
| IMDB ID | post meta | lezactors_imdb | text area |
| Instagram User ID | post meta | lezactors_instagram | text area |
| Mastodon | post meta | lezactors_mastodon | text area |
| TikTok | post meta | lezactors_tiktok | text area |
| Tumblr | post meta | lezactors_tumblr | text area |
| Twitter User ID (no @) | post meta | lezactors_twitter | text area |
| WikiData ID | post meta | lezactors_wikidata_qid | text area – used to override an internal search |
| Wikipedia | post meta | lezactors_wikipedia | URL (forced by CMB2) |
| Character List | post meta | lezactors_char_list | auto populated on post save |
| Character Count | post meta | lezactors_char_count | auto populated on post save |
| Dead Character Count | post meta | lezactors_dead_count | auto populated on post save |
| Show List | post meta | lezactors_show_list | auto populated on post save |
| WikiData Saved | post meta | lezactors_saved_wikidata | auto populated on post save |
| Is Actor Queer | post meta | lezactors_is_queer | auto populated on post save |
TVMaze
| Data | Type | Name | Notes |
| Our Show | post meta | leztvmaze_our_show | attached post |
Cross CPT Data
There is some data shared between post types.
| Data | Type | Used By | Name | Notes |
| Internal Notes | post meta | All | | For private data |
| Shadow Characters | shadow taxonomy | Actors, Characters, Shows | shadow_tax_characters | Cross connecting data |
Taxonomies
| Data | Name | Custom Icons | Used By… |
| Cliche | lez_cliches | Yes | post_type_characters |
| Gender | lez_gender | No | post_type_characters |
| Sexuality | lez_sexuality | No | post_type_characters |
| Romantic | lez_romantic | No | post_type_characters |
| Formats | lez_formats | Yes | post_type_shows |
| Genres | lez_genres | Yes | post_type_shows |
| Intersectionality | lez_intersections | Yes | post_type_shows |
| Nations | lez_nations | No | post_type_shows |
| Show Stars | lez_stars | No | post_type_shows |
| Stations | lez_stations | No | post_type_shows |
| Tropes | lez_tropes | Yes | post_type_shows |
| Warnings | lez_triggers | No | post_type_shows |
| Gender | lez_actor_gender | No | post_type_actors |
| Romantic | lez_actor_romantic | No | post_type_actors |
| Pronouns | lez_actor_pronouns | No | post_type_actors |
| Sexuality | lez_actor_sexuality | No | post_type_actors |