📜  在 wordpress 中创建子主题 - PHP (1)

📅  最后修改于: 2023-12-03 15:07:51.483000             🧑  作者: Mango

在 WordPress 中创建子主题 - PHP

WordPress 是一个功能强大的 CMS(内容管理系统),它允许开发人员在其核心之上创建自己的主题和插件。在 WordPress 中开发主题是一件非常有趣的事情,因为你可以为你的网站创建完全独特的设计。为了创建您自己的 WordPress 主题,您可以使用现有的主题或从头开始创建一个全新的主题。但是,为了更好的灵活性和可维护性,我们可以先根据一个现有的主题进行修改,创建一个子主题。

本文将为您介绍如何在 WordPress 中创建一个子主题,并对其进行自定义开发。

创建子主题

要创建子主题,首先需要找到一个您喜欢的现有 WordPress 主题。在这个主题的目录中创建一个新的目录并命名为您的子主题。例如,如果您的父主题名为twentytwentyone,则您的子主题目录名称应该是twentytwentyone-child。

接下来,您需要在您的子主题目录中创建两个必需的文件:style.css 和 functions.php。

style.css

这个文件包含了主题名称、作者、描述、版本等信息。以下是一个示例文件:

/*
 Theme Name:   Twenty Twenty One Child
 Theme URI:    http://example.com/twenty-twenty-one-child/
 Description:  Twenty Twenty One Child Theme
 Author:       Your Name
 Author URI:   http://example.com
 Template:     twentytwentyone
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  twentytwentyone-child
*/

请注意' Template '属性值必须设置为父主题的名称,以便 WordPress 能够识别这是一个子主题。

functions.php

这个文件是子主题的主要功能文件。它可以用于添加新的功能、调整现有的功能等。以下是一个示例文件:

<?php
function twentytwentyone_child_scripts() {
    wp_enqueue_style( 'twentytwentyone-child-style', get_stylesheet_uri() );
}
add_action( 'wp_enqueue_scripts', 'twentytwentyone_child_scripts' );

此示例文件使用 wp_enqueue_style 函数来添加子主题样式表。子主题的样式表的名称即为 twentytwentyone-child-style。此外,我们还使用了 get_stylesheet_uri 函数来获取子主题的样式表路径。

在此文件中,您可以添加您的自定义功能。例如,您可以添加新的小部件、自定义菜单、自定义脚本等。

启用子主题

现在,当您的子主题目录和相关文件都已准备就绪时,您可以在 WordPress 的后台中启用子主题。要启用子主题,请转到外观 > 主题。找到您的子主题并单击“启用”按钮即可。

修改子主题

现在您已经成功创建了一个子主题,您可以开始对其进行自定义。可以使用 CSS、JavaScript、HTML 或 PHP 来定制您的子主题。

修改样式表

要编辑子主题的样式表,请在子主题目录中创建一个新的 CSS 文件。使用 wp_enqueue_style 函数将其添加到 WordPress 中。例如:

<?php
function twentytwentyone_child_scripts() {
    wp_enqueue_style( 'twentytwentyone-child-style', get_stylesheet_uri(), array('twenty-twenty-one-style'), '1.0.0' );
}
add_action( 'wp_enqueue_scripts', 'twentytwentyone_child_scripts' );

此示例中,我们将子主题的样式表链接到父主题的样式表并命名为 twentytwentyone-child-style。这将确保在应用子主题样式之前,父主题样式被正确加载。

修改模板文件

要修改子主题的模板文件,您可以从父主题中复制一个文件并将其放入子主题目录中。例如,在子主题目录中创建一个 ' page.php ' 文件,然后编辑它。您可以使用PHP来编辑模板文件,以添加您自己的 HTML 标记。

添加新功能

您可以通过 functions.php 文件来扩展您的子主题。例如,您可以添加一个新的小部件、自定义菜单或自定义脚本等。您可以使用 add_action 或 add_filter 等功能来添加自定义功能。例如:

function twentytwentyone_child_widgets_init() {

    register_sidebar( array(
        'name'          => __( 'New Sidebar', 'twentytwentyone-child' ),
        'id'            => 'new-sidebar',
        'description'   => __( 'Add widgets here to appear in your new sidebar.', 'twentytwentyone-child' ),
        'before_widget' => '<div class="widget %2$s">',
        'after_widget'  => '</div>',
        'before_title'  => '<h2 class="widget-title">',
        'after_title'   => '</h2>',
    ) );

}
add_action( 'widgets_init', 'twentytwentyone_child_widgets_init' );

此示例使用 register_sidebar 函数来添加一个新的小部件区域。

结论

创建一个子主题是一个非常有用的技能,因为它允许您以灵活的方式为自己的 WordPress 网站设计定制。要创建自己的子主题,请遵循本文中的步骤,然后添加自己的自定义代码来创建完整的自定义 WordPress 网站。