在子主题中放置自定义PHP文件的位置?

时间:2012-04-15 作者:Tony Gilbert

我正在定制一个高级WP主题以更好地适应我的网站,但我不太清楚如何处理我定制的PHP文件。它们只是进入子主题文件夹的根目录吗?或者它们是否被放入与原始主题类似的文件夹层次结构中?如何确保使用子主题PHP文件而不是父主题PHP文件(例如header.PHP)?

3 个回复
SO网友:Sisir

Couple of things to add

<如果在子主题上添加模板文件,则返回ol>
  • 。它们将替换父主题模板文件@import, 可能看起来像这样@import url("../twentyeleven/style.css");
  • functions.php 文件未被替换,所以父主题中的所有函数仍被定义,您可以在子主题上添加新的php函数functions.php 文件require_once(TEMPLATEPATH.\'/includes/a_php_file.php\'); 记住这一点TEMPLATEPATH 常量仍然指向父主题目录。如果需要更改文件a_php_file.php 然后将该文件复制到子主题中,并使用主题样式表路径进入子主题。所以你必须这样做include( get_stylesheet_directory() . \'/includes/a_php_file.php\');
  • So How do I make Sure Child theme file is used:好吧,如果你一切都做对了,子主题模板已经被使用了。但是,如果您想检查,您可以在模板文件上添加html注释并检查源代码。有时当事情对我不起作用时,我会这样做。我还会在html注释中添加php文件名,以便知道哪个文件包含/需要来自何处。

    Codex:

    http://codex.wordpress.org/Function_Reference/get_stylesheet_directory

    SO网友:sabreuse

    不按特定顺序回答您的问题:

    将自动使用包含在子主题中的任何模板文件,而不是同名的父版本。(这不适用于style.css或functions.php,但涵盖了header.php等。)

    WP将使用template hierarchy 要根据所讨论的查询确定需要哪些模板,如果主题构造得很好,则可以将它们放在文件夹的根目录中,而不必复制原始目录结构。

    但是,如果父主题是以非标准方式编码的,尤其是如果它试图直接包含文件而不是使用wp函数(如get\\u header()、get\\u footer()、get\\u template\\u part()等),那么您可能需要将手弄脏一点。优秀的高级主题通常会有关于如何为自己的系统构建子主题的文档,特别是当它们非常依赖非wp挂钩来完成任务时。。。但是,当然,在您开始研究文档在您的文档中的作用之前,您可能不知道。祝你好运

    SO网友:dev

    wp函数“get\\u bloginfo”对我有效

    <?php echo get_bloginfo(\'template_url\').\'/db.php\';?>
    
    它可以在js代码中使用

    url:"<?php echo get_bloginfo(\'template_url\').\'/db.php\';?>",
    
    使用子主题

    结束

    相关推荐