【问题标题】:How do I fix these error messages associated with setting up a WordPress child theme?如何修复这些与设置 WordPress 子主题相关的错误消息?
【发布时间】:2011-07-12 12:01:49
【问题描述】:

我执行了以下步骤来设置我的 WordPress 子主题;但是,我收到以下错误消息:

1) 在我的主题目录中创建了一个名为 canvas-child 的文件夹
2) 在这个 canvas-child 目录中创建一个 style.css 文件,并将以下代码放在 .css 文件的顶部:

@import "../canvas/style.css";
/*
Theme Name: Canvas Child Theme
Theme URI: http://www.example.com/
Version: 1.0
Description: Custom Theme based on Canvas
Author: My Name
Author URI: http://www.example.com
Template: canvas
*/

3) 进入我的 WP 管理员并激活这个子主题...但是我收到这些错误:

Warning: fopen(http://www.example.com/wp-content/themes/canvas-child/style.css) [function.fopen]: failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in example.com/html/wp-includes/functions.php on line 4339

Warning: fread(): supplied argument is not a valid stream resource in example.com/html/wp-includes/functions.php on line 4342

Warning: fclose(): supplied argument is not a valid stream resource in example.com/html/wp-includes/functions.php on line 4345

【问题讨论】:

  • 是的,这是有道理的——第一个错误,需要 401 授权,表明您的样式文件不可读。但也要接受@stealthyninja 的建议,将@import 移到评论块下方;这个特殊的注释块应该是任何主题的 style.css 文件中的第一件事。
  • 谢谢马特,我确实听从了@stealthyninja 的建议...

标签: wordpress themes wordpress-theming


【解决方案1】:

将您的@import "../canvas/style.css"; 移至评论块下方:

/*
Theme Name: Canvas Child Theme
Theme URI: http://www.example.com/
Version: 1.0
Description: Custom Theme based on Canvas
Author: My Name
Author URI: http://www.example.com
Template: canvas
*/
@import "../canvas/style.css";

【讨论】:

  • get_file_data 函数失败,因为您在评论块之前不能有任何其他数据。供进一步参考——codex.wordpress.org/File_Header#File_Header_Specification
  • 确实如此。虽然它是一个“评论”,但 WordPress 确实会挖掘此标头以从中获取信息以用于主题管理页面等,因此它必须是文件中的第一个内容并采用指定的格式。
  • 另一方面,我并不完全相信这是问题所在,因为错误似乎表明实际上无法读取样式文件,这有点奇怪......跨度>
  • 所有,我想通了...我的网站使用用户名和密码进行了密码保护。我删除了身份验证,现在可以正常工作了:)谢谢您的帮助
【解决方案2】:

所有,我想通了...我的网站受用户名和密码的密码保护。我删除了身份验证,现在可以正常工作了:)谢谢您的帮助

【讨论】:

    【解决方案3】:

    你不需要使用 import,WP 会自动完成。

    【讨论】:

    • 我不相信它。来自the Codex:“它替换父级的 style.css。”在该页面上,您还可以看到使用@import 导入父主题的子主题,特别是它会根据自己的样式选择父主题的规则。
    • 我想通了...我的网站受用户名和密码的密码保护。我删除了身份验证,现在可以正常工作了:)谢谢您的帮助
    猜你喜欢
    • 2021-03-29
    • 1970-01-01
    • 2022-10-24
    • 2019-10-20
    • 1970-01-01
    • 2016-08-14
    • 2020-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多