Git Product home page Git Product logo

foxhound's Introduction

Foxhound CircleCI

A react-based theme for WordPress.

screenshot

Setup

Since this is a more "experimental" theme, you'll need to have a few things set up before it'll work.

  1. WordPress 4.7 or higher, which includes the REST API content endpoints.
  2. You'll also need this WP-API Menus plugin. The REST API doesn't provide an endpoint for menus, so another plugin is necessary.
  3. Your permalinks will need to be set to /%year%/%monthnum%/%postname%/. Single-post/page views will not work without permalinks set. Category & tag archives bases should be set to category and tag, respectively.
  4. To edit posts/pages in the Customizer via the Customize Posts plugin, you'll also need to install the Customize Preview Fetch API plugin (until #42163 lands in core).

Display & Features

This theme supports your average blogging site. It looks best with "Front page displays" set to latest posts (in Settings > Reading), however it does support a static page & blog posts on another page. This theme works best for very text-focused sites. It will display featured images on single posts & pages, but not on archive/list views. There is currently no special handling for post formats.

Restrictions

This theme does have a few "restrictions", things that don't work like they do in other WordPress themes.

The theme does not display anything if javascript is disabled. This should not affect your SEO, as google will crawl your page with JS & CSS enabled. This should not affect accessibility (99% of screen reader users have javascript enabled, in 2012). However, if your site needs to be usable without javascript, a javascript theme is not your best choice πŸ˜‰

The API cannot be blocked by a security plugin. Some plugins recommend blocking the users endpoint, but that is required to show the author archive. If you need to block the user endpoint, the rest of the theme should work, but might be unstable if anyone tries to visit an author archive.

Permalinks for pages and archives are changed by this theme. They'll be reset if/when you deactivate the theme. You might want to set up redirects using something like Safe Redirect Manager.

This theme does not support hierarchical category archives - only parent category archive pages can be displayed. This may be fixed in a later version of the theme (see #30).

Plugins might not work as expected, especially if they add content to the front end of your site. Most Jetpack features do still work.

If you're logged in to your site, the admin bar will currently not update when you navigate pages, so the "Edit X" link will only reflect the page you initially loaded. You can force-reload the page to update the admin bar, as a work-around.

Thanks to…

These are a few of the packages/plugins that made this theme possible.

Development

You can also install Foxhound yourself from this repo, by building it yourself. Download or clone this repo into your /themes folder, then run npm to install and build the javascript & CSS files. The process will look like this

git clone https://github.com/ryelle/Foxhound foxhound
cd foxhound
npm install
npm run build

Now you'll see a build/app.js file in the theme, and it will be available for you to switch to in wp-admin. If you're having trouble getting the theme active, please file an issue & I'll help you out.

If you don't have npm installed, you can find instructions on the npm website.

There are a few other NPM scripts you can run:

npm run dev runs webpack, with configuration enabling source maps. Eventually build will also compress/uglify built files, so this would skip that too (but that's currently disabled).

npm run watch runs webpack --watch, everything the previous command but it will also watch the source files for changes and recompile automatically. Best to run while developing. This does not live reload.

npm run lint runs eslint over all the javascript files. Webpack does this as well, before compiling, but only notifies you of errors. This command will catch warnings too.

On the PHP side, we're also adding in some prefixes for permalinks (also called routes).

Support

If you notice anything broken (that isn't mentioned in the "restrictions" section), let me know by creating an issue.

Thanks for checking out Foxhound!

foxhound's People

Contributors

greenkeeper[bot] avatar mattonomics avatar melchoyce avatar ryelle avatar westonruter avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.