我相信你必须为此制作一个插件。以下代码基于此答案:Is it possible to define a template for a custom post type within a plugin independent of the active theme?
/*
Plugin Name: Universal Template
Plugin URI: https://wordpress.stackexchange.com/questions/57211
Description: Uses a custom template in the plugin directory accordding to Conditional Tags (http://codex.wordpress.org/Conditional_Tags), maybe even other conditions
Version: 1.0
Author: brasofilo
Author URI: https://wordpress.stackexchange.com/users/12615
*/
class Universal_Template
{
public function __construct()
{
$this->url = plugins_url( \'\', __FILE__ );
$this->path = plugin_dir_path( __FILE__ );
add_action( \'init\', array( $this, \'init\' ) );
}
public function init()
{
add_filter( \'template_include\', array( $this, \'wpse_57211_my_plugin_templates\' ) );
}
public function wpse_57211_my_plugin_templates( $template )
{
$post_types = array( \'post\' );
if ( is_post_type_archive( $post_types ) )
$template = $this->path . \'/single-custom.php\';
if ( is_singular( $post_types ) )
$template = $this->path . \'/single-other-custom.php\';
return $template;
}
}
$wpse_57211 = new Universal_Template();