2015-02-11 142 views
2

我正在处理我的第一个孩子的主题,我遇到了很多目录和儿童主题的混乱。WordPress的儿童主题路径

我不会用我的真实的网站,但我已经在我的cPanel目录献给我的主题是在www.wp.example.com工作

让调用模板testTemplate。我制作了一个名为testTemplate-child的子模板,遵循Wordpress codex,意思是我在父主题的子功能中注册了父主题.php

因此,wp.example.com从父主题和子主题期望。它不加载的是我在子主题的functions.php文件中入队的javascript文件。

令人困惑的是,如果我导航到www.wp.example.com/testTemplate-child/我的JavaScript加载和工作。

我想知道是否有人可以为我解决这个问题,为什么我的孩子的function.php只能在wp.example.com/testTemplate-child中工作。

+0

在服务器上,进行公开HTML/testTemplate独生子女目录存在吗?它是否有完整的WordPress安装或类似的东西? – 2015-02-11 21:09:46

+0

你有任何JS错误? – Skatox 2015-02-11 21:14:46

+0

@TaylorCampbell父母和孩子的主题都在:public_html/wp/wp-content/themes/ – 2015-02-11 21:19:10

回答

4

这是因为你的孩子的主题function.php是父母的function.php前加入,这就是为什么你不能覆盖的一些选项,也请记住,你需要调用get_stylesheet_directory()让孩子的主题路线,因为如果你做了另一个功能,它会加载父路径。

例子加载位于/JS文件夹中的JavaScript文件:在

$jsPath = get_stylesheet_directory() . '/js/yourScript.js'; 
wp_enqueue_script('child-js', $jsPath, array(), '1.0', true) 

更多信息:https://codex.wordpress.org/Child_Themes

+0

我明白现在,但我在儿童主题中所做的一切都是添加一个函数来加载一对脚本,然后使用addaction添加它们。我需要把它放在父主题中吗? – 2015-02-11 21:21:00

+0

将它添加到父主题的问题是,在任何更新中,您都会覆盖所有更改。您可以使用depedencie选项(我的答案中的array())控制加载的顺序。我没有使用addaction。 – Skatox 2015-02-11 21:24:44