I am trying to set up a few local multisite installs that will share the same themes folder, but have separate upload and plugin folders that will be in the usual places in wp-content
.
UPDATED:
WordPress is installed at /Users/josh/Documents/Websites/themedev.dev/
and I’ve create the new theme directory at Users/josh/Documents/jp-content/jp-themes
and put twenty twelve into it for testing purposes.
Per Otto’s suggestion below I created and activated a plugin that is just this:
$directory = '/Users/josh/Documents/Websites/jp-content/jp-themes';
register_theme_directory( $directory );
That showed twenty twelve in the theme admin page, but on the front-end I got a blank page, and the page source was totally empty.
When I changed the first line to $directory = '/Users/josh/Documents/Websites/jp-content/jp-themes/' (note the trailing slash,) I got the theme, but not the style. When I echoed the value of
get_template_directory_uri()I got
Users/josh/Documents/Websites/jp-content/jp-themes//twentytwelvewhich would explain it. I tried using
trailingslashit` instead of adding the slash like this:
$string = '/Users/josh/Documents/Websites/jp-content/jp-themes';
$directory = trailingslashit( $string );
register_theme_directory( $directory );
and got the same results.
I still can’t figure out what I’m doing wrong here…
http://codex.wordpress.org/Function_Reference/register_theme_directory
You should be able to call
register_theme_directory('/full/path/to/directory')
and thus add a new path full of themes. This eliminates the need to use any defines as you’re attempting to do. You could do this in a mu-plugin on each installation, to force the whole install to have those themes available.I would leave the default themes in the wp-content/themes directory on each install, and just add your custom themes in your new theme path.