{"id":16173311,"url":"https://github.com/richardcoffee/fluidity-theme","last_synced_at":"2026-04-20T05:33:53.951Z","repository":{"id":68769335,"uuid":"126392740","full_name":"RichardCoffee/fluidity-theme","owner":"RichardCoffee","description":"WordPress parent theme","archived":false,"fork":false,"pushed_at":"2021-03-12T01:18:26.000Z","size":35206,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-13T12:32:16.790Z","etag":null,"topics":["bootstrap3","javascript","parent-theme","php","responsive-theme","wordpress","wordpress-theme"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RichardCoffee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-22T20:42:22.000Z","updated_at":"2021-03-12T01:18:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"73804efa-98d7-4994-a380-45ed2810c7c1","html_url":"https://github.com/RichardCoffee/fluidity-theme","commit_stats":{"total_commits":4247,"total_committers":5,"mean_commits":849.4,"dds":"0.036731810689898725","last_synced_commit":"d61660ea04986a846ecf51b2f0dcc80881357fd5"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardCoffee%2Ffluidity-theme","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardCoffee%2Ffluidity-theme/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardCoffee%2Ffluidity-theme/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RichardCoffee%2Ffluidity-theme/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RichardCoffee","download_url":"https://codeload.github.com/RichardCoffee/fluidity-theme/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247623010,"owners_count":20968574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bootstrap3","javascript","parent-theme","php","responsive-theme","wordpress","wordpress-theme"],"created_at":"2024-10-10T04:08:12.862Z","updated_at":"2026-04-20T05:33:48.930Z","avatar_url":"https://github.com/RichardCoffee.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fluidity-theme\n\nA WordPress theme I use as a parent theme for my sites.\n\n## Theme files - root directory\n\nThis section covers all theme root directory files.  If you are at all familiar with how a WordPress theme works, then what the majority of these files are,\nand how they work, should already be known to you.  You should skip to the section on classes.\n\n### Pages\n\nThese are the files used for specific or general pages.\n\n#### 404.php\n\nHandles all 404 occurrences.\n\n#### index.php\n\nDefault template for displaying a post or page.\n\n#### page.php\n\nDefault template for displaying a page.\n\n#### printer.php\n\nNot currently used.  This was originally written to utilize [the TCPDF library](https://tcpdf.org/), but that project is no longer being developed or\nsupported.  It's replacement, [tc-lib-pdf](https://github.com/tecnickcom/tc-lib-pdf), is, at the time of this writing, not yet ready for primetime.\nIn the end I decided not to use the library at all, but have kept this file around for when I change my mind.\n\n#### stock.php\n\nMain template I use for pages.  In fact, index.php and page.php are just dups of\nthis file.\n\n### WordPress specialty files\n\nThese are those files required by WordPress to handle specific tasks.  Again, if you know WordPress, you'll know about these.\n\n#### comments.php\n\nHandles the comment area on a post page.\n\n#### footer.php\n\nDisplays the footer area.\n\n#### functions.php\n\nThis makes the theme work. :)\n\n#### header.php\n\nDisplays the header area.\n\n#### searchform.php\n\nDisplays the searchform.\n\n#### sidebar.php\n\nDisplays the sidebar widget areas.\n\n#### style.css\n\nMain css file.\n\n### Miscellaneous\n\n#### favicon.ico\n\nThe image that shows up in the tab of the browser.\n\n\n## Classes\n\nThe theme uses a variety of classes, all residing in the classes/ directory, and organized mainly via sub-directories.  Wordpress frowns on this type of\norganization, which is okay.  I'll do it how I want, and they can do it the way they want, and never the twain shall meet.\n\nMost, not quite all, classes are loaded via the includes/loader.php file.  Take a look at that file to see which classes can be replaced/extended by a child theme.  All class\nnames use the same format, i.e.: the class TCC_Form_Admin is located in the file classes/Form/Admin.php, which means if you know the class name, then you should not\nhave any trouble finding the file that contains the class.\n\n\n### Forms\n\nThe form classes deal with admin page forms, customizer controls, comment forms, and the login form.\n\n\n#### Admin Forms\n\nThe class 'TCC_Form_Admin' is an abstract class used a basis for all admin forms, and uses the WordPress Settings API.  Currently, the only class the theme uses\nthis for is the TCC_Options_Fluidity class, which is a tabbed form.  I have used it in some plugins, although only the\n[Privacy My Way plugin](https://github.com/RichardCoffee/privacy-my-way) is available to be viewed by the general public.  I still consider this class\nto be a work in progress in many ways.  I kept hoping WordPress will make it easier to create Admin screens, but with the advent of the Customizer, they\nactually went in the opposite direction.\n\n#### Customizer Controls\n\nTCC_Customizer_Customizer handles adding each individual control to the WordPress customizer.  The TCC_Customizer_Control_Control class extends the\nWP_Customize_Control class, and serves as the parent class of all other theme customizer controls.\n\n##### Customizer Checkbox control\n\nI wrote the TCC_Customizer_Control_Checkbox class because the WordPress control wouldn't allow a title for the checkbox.\n\n##### Customizer Content control\n\nTCC_Customizer_Control_Content simply displays a title and some text on the screen, no inputs at all.\n\n##### Customizer HTMLRadio control\n\nTCC_Customizer_Control_HTMLRadio evolved because I wanted to be able to display some font awesome icons in the radio choices, which required using HTML, something\nWordPress doesn't play nice with.\n\n##### Customizer MultipleCB control\n\nTCC_Customizer_Control_MultipleCB will display a title, followed by multiple checkboxes.\n\n##### Customizer MultipleSel control\n\nTCC_Customizer_Control_MultipleSel will display a select field that allows multiple choices.\n\n\n#### Comments\n\nI wrote the TCC_Form_Comment class to give myself somewhat better control over how the comment form is displayed.  It makes heavy use of my [TCC_Trait_Attributes\ntrait](https://github.com/RichardCoffee/fluidity-theme/blob/master/classes/Trait/Attributes.php).\n\n##### Comments - Paging\n\nTCC_Theme_CommentNav, child class of TCC_Theme_Navigation, handles showing the user the comment navigation buttons.\n\n\n#### Login form\n\nThe theme's login form, suitable for use in a navbar or a widget.  Can also be used in a modal.\n\n\n### Metaboxes\n\nThe theme includes an abstract class, TCC_Metabox_Metabox, which I use for admin metaboxes, although it gets used mainly in plugins.  Testing has indicated\nthese work with the new block editor, although I do intend to convert them.\n\n#### FontType\n\nTCC_MetaBox_FontType allows a post editor to control what font the post is displayed with.  Still needs some work though...\n\n#### PostDate\n\nTCC_MetaBox_PostDate works with the post edit page, controlling how the date/author is displayed with each individual post.\n\n#### Sidebar\n\nTCC_MetaBox_Sidebar is also for the post edit page.  It allows the author to control whether the sidebar is displayed with the post.\n\n\n### Modals\n\nModals are a Bootstrap feature.  The theme has an abstract class TCC_Modal_Bootstrap, used as a basis for all modal classes.  I have used this class in\nother projects, but...\n\n#### Login modal\n\nTCC_Modal_Login will display the login form in a modal form.\n\n\n### NavWalker\n\nThe theme currently uses TCC_NavWalker_Bootstrap, loosely based on [this one on github](https://github.com/wp-bootstrap/wp-bootstrap-navwalker).\n\n#### Taxonomy\n\nTCC_NavWalker_Taxonomy is used to dynamically add taxonomy terms to a menu.\n\n\n### Options\n\nIn addition to the customizer options, the theme provides a tabbed option screen, using TCC_Form_Admin as the parent class.  I have shifted many options to the\ncustomizer where possible.  Take a look at the files in the classes/Options directory for an idea of what's going on there.\n\n\n## CSS\n\nI use Bootstrap as the basis for my CSS.  Currently stuck on an old 3.3.7 version...\n\n### Sass\n\nI use Sass instead of Less, although I understand the new version 4 has moved to Sass now.\n\n### Color Schemes\n\nThe theme has a variety of pre-set color schemes available, although I seem to be having a problem getting the Customizer to properly display the chosen color\ninside of the Customizer.  I'm sure I am the issue, it certainly can't be the Customizer.\n\n\n## includes\n\nHere I intend to cover the files in the includes/ directory...someday...\n\n## Javascript\n\nJavascript files will be described here.\n\n## Languages\n\nEnglish only at the moment.\n\n## Page Templates\n\nWill cover files contained in the page-template directory.\n\n## Template Parts\n\n## Vendors\n\nRecently removed a gallery plugin.  It was no longer being maintained.\n\n### External Source Libraries\n\n#### Bootstrap\n\nCurrently uses Bootstrap 3.3.7, with plans to upgrade to version 4 as time permits.\n\n#### Font Awesome\n\nCurrently uses Font Awesome 4.7.0, with no plans to upgrade to version 5 at this time.\n\n#### PUC\n\nRelease updates are handled using [Plugin Update Checker](https://github.com/YahnisElsts/plugin-update-checker), so everything should work the WordPress way.\nI know it says Plugin, but it works just fine for themes as well.\n\n### External Source Files\n\n#### custom_menu_items.php\n\nComes from [this gist](https://gist.github.com/daggerhart/c17bdc51662be5a588c9).  Used by TCC_NavWalker_Taxonomy to add\ntaxonomy terms to a menu.\n\n\n## Pull Requests\n\nAny pull request made within the spirit of the theme may be accepted.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frichardcoffee%2Ffluidity-theme","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frichardcoffee%2Ffluidity-theme","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frichardcoffee%2Ffluidity-theme/lists"}