多站点设置、子主题、获取样式表目录

时间:2013-04-10 作者:noway

正如标题所说,我有一个多站点设置,外观是用子主题定制的。

主要站点:themainsite.com

辅助站点foo.com

当您查看foo的源代码时。com,您会看到一些URL引用主站点。例如:

<link rel="stylesheet" 
href="http://www.themainsite.com/wp-content/themes/sometheme/css/some.css" 
type="text/css" media="screen" />
我查看了wordpress文档get_stylesheet_directory_uri, 但找不到答案。是否可以删除对主站点的此类引用?

UPDATE:所有CSS/JS引用都在header.php 父模板的,如下所示。我已经有一个标题了。php oin我的子主题,它覆盖父主题的标题。php。

<link rel="stylesheet" 
href="<?php echo get_template_directory_uri()  ?>/css/some.css" 
type="text/css" media="screen" />

2 个回复
最合适的回答,由SO网友:noway 整理而成

我通过将多站点设置从子文件夹更改为子域来修复它。

SO网友:tfrommen

Note: 我想要一个答案,因为对于评论来说,这是太多的文本了。在您的回答中,我将尝试编辑和阐述,并为您提供问题的实际答案。

是否可以删除对主站点的此类引用?

这取决于主题的设计程度,在哪里/为什么some.css 已排队/硬编码,以及要如何删除该行。

您找到样式表的处理位置了吗?它是用来做什么的?是要调整父主题,还是只调整子主题?

»我不喜欢这种方式,但假设样式表是在父主题中硬编码的(您不想调整),您可以通过jQuery删除样式表(如果确实不需要的话):

$(\'link[rel="stylesheet"][href^="http://www.themainsite.com/"]\').remove();
// EDIT, 关于您的编辑:)

您已经自己给出了答案:使用get_stylesheet_directory_uri 而不是get_template_directory_uri. 后者指向基本主题(即父主题),而实际上您希望从子主题(样式表所在的位置)加载内容style.css 位于,因此得名)。

结束

相关推荐

WP MultiSite:默认添加关于博客创建的页面

我希望在使用WP Multisite创建新站点时,在默认情况下添加一个页面。因此,我有一个创建两个页面的函数:function my_default_pages() { $default_pages = array(\'Impress\', \'Contact\'); $existing_pages = get_pages(); foreach($existing_pages as $page) { $temp[] = $p