2017-04-02 42 views
1

我正在设计一个尚未生效的Wordpress网站。主页头部有一段内联css需要去执行。我不知道它是从哪里生成的,但是我修改了css,并且内联css没有更新以匹配它。如何从Wordpress头只删除一个内嵌<style>

我试过在我的custom.css中使用!important重试它。

我已经尝试添加我的样式表,只是在它最后加载。

<link rel='stylesheet' href='http://mywebsite/wpnew/wp-content/themes/mytheme/custom.css?counter=1491147962' type='text/css' media='all' /> 

我试图加入这个对我的functions.php:

wp_enqueue_style('customcss', get_template_directory_uri() . '/custom.css', array(), time()); 

我已经删除了CSS属于认为这个页面可能使无内联CSS,因为小部件是小部件走了,但它仍然存在。

我不知所措。我不是一个程序员,并不完全熟悉PHP。我发现一个可以去掉所有内联标签的插件,但我只想摆脱这一块CSS。

任何帮助,将不胜感激!

+0

最后你的风格是内联还是外联?如果它是内联的,请在''中找到它。如果它是外部的,找到它被调用的地方,它取决于你的主题,它可能在'script.php'或'scripts.php'或其他地方。你应该挖掘你的主题。 – ata

+0

使您的网页jsfiddle并在您的问题中添加链接。一种选择是使用JavaScript来查找脚本标记并将其消除 – repzero

+0

@ata样式最初在我的custom.css中 - 我不确定为什么Wordpress或主题呈现它内联。如果它来自主题,也许开发人员可以告诉我它是如何生成的。 – Joanne

回答

0

我从来没有使用WordPress,但将其安装在我的本地主机上,并尝试在默认模板上使用class="site-title"修改(例如)h1标签。 只需搜索“网站标题”文件夹,然后根据激活的模板或您的自定义模板找到header.php。

有些代码是由php生成的,然后发送给用户,所以也许试图找到一个在你的php文件中的名字不同于你在html收到的文件中看到的类。尝试在您想要更改的标签附近的某些标签中找到class/id。

我希望它有帮助。

0

wp_enqueue_style需要5参数

$处理 (字符串)(必需)样式表的名称。应该是唯一的。 (字符串)(可选)样式表的完整URL或样式表相对于WordPress根目录的路径。 默认值:''

$ deps (array)(可选)该样式表所依赖的已注册样式表处理的数组。 默认值:array() $ ver (string | bool | null)(可选)指定样式表版本号的字符串(如果它有一个),作为查询字符串添加到URL中以用于缓存清除目的。如果版本设置为false,则会自动添加与当前安装的WordPress版本相同的版本号。如果设置为null,则不会添加任何版本。

默认值:false $ media (字符串)(可选)已为其定义此样式表的介质。接受“全部”,“打印”和“屏幕”等媒体类型或“(orientation:portrait)”和“(max-width:640px)”等媒体查询。 默认值:'all'

您可以在功能中更改您的代码。php文件

wp_enqueue_style('mycustom_css', get_template_directory_uri() . '/custom.css', array(), '1.0.0', true); 

它会工作。检查你的主题根中只有一个custom.css文件。

+0

感谢您花时间给我这些详细的信息。对我来说,玩PHP文件还是有点可怕的。是不是只有一个简单的方法来阻止wordpress在页面上粘贴自定义CSS?我只想关闭该功能。 – Joanne

0

您可以使用wp_dequeue_stylewp_deregister_style

如果你要查看源代码,你可以看到WP_HEAD产生类似下面的链接样式:

<link rel='stylesheet' id='mystyle-css' href='www.your_domain.com/css.style.css' type='text/css' media='all' /> 

现在,如果你要删除这条线,就到你的functions.php和包括代码如下:

function dequeue_unnecessary_styles_vxt() { 
    $styles = array('mystyle'); //store here all the CSS you want to remove 
    foreach ($styles as $key => $value) { 
     wp_dequeue_style($value); 
     wp_deregister_style($value); 
    }  
} 
add_action('wp_print_styles', 'dequeue_unnecessary_styles_vxt'); 

我编辑了上面的代码,以便您可以动态删除所有要删除的CSS样式。请注意,从CSS链接样式中,有一个名为的mystyle-css这是您将如何跟踪自定义functions.php中的CSS的方式。添加ID(不带-css)插入$样式。

希望它有帮助。

+0

我想阻止Wordpress嵌入custom.css而不是访问它。这是否会阻止Wordpress完全链接到custom.css? – Joanne

+0

你在哪里添加了custom.css?它在你的header.php或functions.php里面吗? – smzapp

0

转到你的头文件,很可能在<head>,你会发现

<?php echo get_template_part('customcss'); ?> 

而且也有在你的主题文件夹customcss.php。但是你应该知道这是你在WordPress仪表板中指定的样式并删除它,不会像你想象的那样快乐。您可以删除代码或更改customcss.php。如果不是那样的话,找一下你的CSS文件的那个php的那个echo

+0

有没有一个插件可以阻止Wordpress嵌入(我使用正确的单词?)还是渲染自定义CSS内联?我不喜欢玩PHP。 – Joanne

+0

@Joanne我不知道。如果有的话,可能他们可以使用'wp_equeue_style'和'wp_register_style'。 – ata