编辑 WordPress 子主题 functions.php 注意事项

/ 2,978 阅读 / 0

functions.php 是 WordPress 预留的功能函数文件,专门用于添加各种自定义函数代码。在子主题里更方便,可以在不改动父主题的前提下添加修改你所需要的功能,而且父主题版本升级后也不影响在子主题内添加的功能。

修改 Lingonberry 主题子主题的 functions.php
为 WordPress 编辑器添加自定义按钮
去掉 WordPress 继续阅读链接中的 #more-postid

那么,我们在修改 functions.php 的时候需要注意以下的一些内容。


php 中的注释

注释,就是专门用来对代码进行补充说明的文本,一般分为 单行注释多行注释 ,单行注释使用两个斜杠 // ,多行注释使用/* */,示例:

<?php
/**
 * 这是多行注释
 * 注释 2 行
 */
function hello_world() {
    // 单行注释
    // 再注释一行
    echo "<p>Hello World!</p>";
}
?>

php 代码应该添加到 <?php?> 之间

打开 functions.php 文件,你会发现,文件开头一般都是 <?php,表明这个文件是遵循 PHP 代码规范的,你需要将函数代码添加到它的里面,比如:

<?php
//开始 php 语法

function hello_world() {
    echo "<p>Hello World!</p>";
}

//结束 php 语法
?>

避免 <?php?> 多重嵌套

<?php?> 之间,不要再添加 <?php?>,如下面的错误示例:

<?php
//开始 php 语法

<?php //错误:嵌套啦

function hello_world() {
    echo "<p>Hello World!</p>";
}

?>

可以看到,第一个 <?php 没有结束,又嵌套了一个 <?php ,这样的后果就是导致部分 PHP 代码失效,严重的可能会导致网站崩溃。


不要在 <?php?> 之间直接添加其他语种代码

<?php?> 之间的代码应该符合 PHP 语言规范,你不可以直接在他们之间直接添加其他语种代码,比如以下几种错误类型:

<?php

//错误 1: 直接添加文本
Hello World!

//错误 2: 直接添加 html 代码
<div><p>Hello World!</p></div>

//错误 3: 直接添加 js 代码
<script type="text/javascript">
    $(document).ready(function() {
        $("a.anchorLink").anchorAnimate()
    });
</script>

//错误 4:直接添加 css 代码
<style type="text/css" media="screen">
    .textComment{
        display: inline;
    }
</style>

?>

可能有些朋友会说,为什么我看到有些人可以添加 Html 代码?比如下面代码的第 5 行:

<?php
function hello_world() {
    echo "<p>Hello World!</p>";
?>
    <div><p>Hello World!</p></div>
<?php
}
?>

其实这是 PHP 和 Html 混排,Html 代码并没有直接添加在 <?php?> 之间,你可以看到 第 4 行结束 PHP 语法,第 6 行重新开始 PHP 语法,这种写法是合法的。


注意字符转义

网络上很多代码由于没有使用代码高亮插件,可能会导致代码中的某些字符发生转义,或其他错误。

例如:

半角符号变成全角符号:引号、逗号、句号、冒号、括号、分号等

常见的转义:< 变成 &lt; ,> 变成 &gt; ,&变成 &amp; 等。


注意 php 文件的编码

WordPress 是使用 Utf-8 格式编码的 PHP 程序,Utf-8 编码又分为 含 BOM无 BOM 两种,由于我们很可能在 PHP 文件中添加了中文,所以建议保存 functions.php 等 PHP 文件为 Utf-8 无 BOM 格式。否则,很可能会出现网站空白、布局错乱、出现异常文字等问题。