如何向现有主题添加功能(使用子主题)

时间:2013-08-21 作者:Cliff Sun

我问这样一个问题的原因并不是因为我根本不知道怎么做,而是我认为我尝试的方式可能是错误的,我不知道wordpress是如何工作的,不知道向现有主题添加功能和自定义字段的最佳方式是什么。

例如,我为一个网站创建了一个主题(反向拍卖项目投标主题),并创建了一个子主题,这样当然可以在不更改父主题的情况下进行更改(出于更新/升级目的)。现在,如果我想在现有表单中添加验证码框,我知道我必须更改子主题中的文件(或者使用插件,这也需要更改文件)。

现在我有点困惑了,我知道如果子主题中的文件名相同,模板文件就会被覆盖。但如果该文件不是模板文件呢?我在这里读到了一些其他的答案,不幸的是它们没有被覆盖,这与我一直在做的事情是一致的(只有修改父主题中的文件才能更改实际的网站)。这里的问题是,网站上有许多页面使用一个模板,而这些其他页面只是作为普通html/php文件进行编码。

因此,我的问题可以用两种方式提出,但我不知道哪种方式是正确的:1)如果我想向这些文件中添加一些php或html(无法覆盖),我会怎么做。2) 或者更确切地说,如何在子主题中覆盖文件(当它本身不是模板文件时)。

正如你所知,我是wordpress的初学者,所以我想我缺少了一些关于一切工作原理的基本知识。老实说,我甚至不知道这是否是对网站进行更改的最佳方式,我对所有这些都不熟悉,我觉得奇怪的是,人们会使用wordpress创建一个不是博客的网站,而且为了给网站添加功能,你必须更改主题。

很抱歉,我没有提供任何代码片段,一方面,主题是买来的,所以我不知道是否可以显示任何代码片段,其次,问题更多的是关于wordpress的概念和工作方式。

P、 很抱歉发了这么长的帖子。

2 个回复
SO网友:Lucas

您还有一个函数。php文件,它在您的子主题中非常强大。您可以覆盖主主题函数,添加新功能-无论您想要什么。我在我的孩子主题中做的第一件事(通常)是添加我的谷歌验证码。

function lmc_do_meta_tags(){
echo "<meta name=\\"google-site-verification\\" content=\\"YOUR-CODE-HERE\\" />";
}
add_action(\'wp_head\', \'lmc_do_meta_tags\');

SO网友:JMau

首先,您清楚了解儿童主题的目的:easier maintenance, speed up development. 子主题继承自其父主题。

您的子主题可以覆盖父主题中的任何文件,您只需以相同的方式命名它,并且子文件必须位于同一目录中,例如:

parent theme : css/icons/happy.css
child theme : css/icons/happy.css

结束

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register