我们可以更改WordPress主题代码以创建自定义的单个页面吗?

时间:2019-01-22 07:33:22

标签: php wordpress wordpress-theming custom-wordpress-pages

我正在使用wordpress主题:Corporate Blue作为标准模板。现在,保持页眉和页脚php文件相同,我试图创建其他自定义页面(包括首页),并且对于如何组合不同文件(如index.php,header.php,页脚)感到困惑。 php,page.php,single.php。另外我还必须在源文件夹中创建任何其他php文件以获取任何其他页面吗?

到目前为止,我只是通过更改style.css来改变了网站的外观和风格,还制作了一个custom-homepage.php,其中包括了使用和的页眉和页脚,并且我正在运行所有内容到目前为止,在本地主机上。

2 个答案:

答案 0 :(得分:0)

是的,我们可以更改wordpress主题的文件,但是如果您不了解wordpress的结构和php,请不要这样做。它可能会破坏您的主题。

如果您只想创建自定义页面而不更改功能,则应遵循以下指南。

https://www.wpbeginner.com/wp-themes/how-to-create-a-custom-page-in-wordpress/

它将帮助您在wordpress中创建自定义页面。

答案 1 :(得分:0)

如果要使用支持远程更新的现有主题自定义模板,则最佳实践是从创建子主题开始,该子主题将现有主题(在本例中为Corporate Blue)作为父主题。

这样,您可以避免在主题更新期间可能发生的覆盖,还可以通过将相同名称的模板文件放在子主题目录中来覆盖父主题中存在的模板文件。

完成此操作的步骤很少:

  1. 创建子主题
  2. 克隆/覆盖或创建子主题页面模板文件
  3. 在子主题中克隆/覆盖或创建模板文件,以用于帖子类型单一视图,帖子类型档案,分类法,首页等。

1。儿童主题

要创建子主题,您至少需要在子主题目录中创建style.css。就您而言,它看起来像这样:

/*
 Theme Name:   Corporate Blue Child
 Theme URI:    http://themeurl.com/your-theme-slug/
 Description:  Corporate Blue Child Theme
 Author:       Your Name
 Author URI:   http://example.com
 Template:     corporate-blue
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         tags, that, describe, your, theme
 Text Domain:  corporate-blue-child
*/

这将告诉WordPress该主题取决于Corporate Blue主题,并在子主题中不存在同名的模板文件时查找父主题中的模板文件。

但是,这不包括父主题样式。 要包括父主题的css,假设主样式表文件为style.css, 创建一个functions.php文件(WordPress自动加载该文件),然后放置以下代码:

这里的关键部分是get_template_directory_uri(),它告诉WordPress在基本目录中查找文件是父主题目录。并且此函数在子主题的style.css中查找Template标签。

有关更多详细信息,请参见: https://developer.wordpress.org/themes/advanced-topics/child-themes/

请记住,应该激活子主题,而不是父主题。

2。子主题中的自定义页面模板文件

之后,您需要弄清楚自定义页面的需求。 创建自定义页面模板的最简单方法是克隆page.php或index.php,并将其重命名。 在克隆文件的顶部,用Template Name放置php注释:

<?php /* Template Name: Example Template */ ?>

这将允许WordPress在添加/编辑页面时列出所有页面模板供全球使用。它将在下拉菜单中显示它们,通常在添加/编辑页面时显示在右侧栏中。

也有特定页面的页面模板。如果知道页面ID或页面标记,则可以在模板名称中添加后缀之一:

page-{slug}.php
page-{ID}.php 

这样,WordPress将识别并加载特定页面的模板。

详细了解自定义页面模板: https://developer.wordpress.org/themes/template-files-section/page-template-files/

3。子主题中的模板文件

帖子类型,档案,类别页面,首页,博客档案页面等的模板

您需要了解有关模板层次结构的更多信息:
https://developer.wordpress.org/themes/basics/template-hierarchy/