functions 添加自定义代码方法

本文仅面向新手,以帮助新手正确使用functions添加自己的代码片段。

认识functions.php

functions.php文件是您向WordPress主题添加独特功能的地方。它可以用于连接WordPress的核心功能,使您的主题更具模块化,可扩展性和功能性。

当您在WordPress网站上安装并激活主题时,当前主题的functions.php文件会被自动启用。并在加载网页(或管理后台)时由WordPress自动加载的。

  • 如果您的代码没有被执行,需要检查是否位于当前激活的主题的functions.php中
  • 如果更改了主题,将无法再使用这些功能

每个主题都有其自己的functions.php,如果您的主题已经具有functions.php,则可以向其添加代码。如果没有,则可以创建一个纯文本文件,名为functions.php添加到主题目录中。

  • 子主题可以具有自己的functions.php文件,该文件可以与父主题结合使用或替换其父主题的functions.php
  • 将功能添加到子功能文件是修改父主题的一种无风险方法。这样,当父主题更新时,您不必担心新添加的功能会消失
  • 尽管子主题的functions.php是在父主题主题之前由WordPress加载的functions.php,但它不会覆盖 它
  • 子主题functions.php 可以用于增强或替换父主题的功能
  • functions.php在加载任何插件文件后加载
  • 如果WordPress插件调用的功能或过滤器与您在functions.php中调用的功能或过滤器名称相同,则结果可能是意外的,或者发生错误,甚至导致您的网站无法正常访问。
  • 如果子主题functions.php调用的功能或过滤器与父主题functions.php调用的过滤器名称相同,则会发生错误,甚至导致您的网站无法正常访问。

Functions.php文件在哪里

functions.php文件的位置位于主题文件夹中。一般路径为:/wp-content/themes/your_theme_name/functions.php

Functions.php文件通常有两种访问方式。最可靠的方法,是访问wordpress网站的主题文件夹。最便捷的方法,是登录WordPress管理后台,在管理界面的主题编辑器中进行访问。

在文件系统中直接访问Functions.php

如下图所示,在我的Test网站下,我当前启用的主题twentyseventeen,那么我当前使用和编辑的functions.php路径就是下面这样。

注意:一定是当前激活的主题文件夹下的functions.php

functions.php文件所在路径示例
functions.php文件所在路径示例

那么怎么知道你现在用的主题文件夹名称?在wordpress 后台点击“外观”>”主题”,点击你当前激活的主题,然后观察地址栏,如下图所示:http://localhost/test/wp-admin/themes.php?theme=twentyseventeen,theme=后面跟着的,就是你的主题的目录。

通过wordpress网址获取主题名称
通过wordpress网址获取主题名称

使用WordPress编辑器访问functions.php

如下图所示:

  • ①② 是主题编辑器所在的位置和进入方法。
  • ③④ 选择需要编辑的主题,默认就是你当前激活的主题,如果要编辑其他主题,先在下拉列表中选择,然后点击“选择”。
  • 要编辑主题中的什么文件。此处我们编辑functions.php,所以点击一下这个文件,则编辑区内容会刷新为functions.php中现在的内容
  • 文件内容结尾处,我们一般会把自定义代码添加到文件结尾处。
  • 如果知道要修改的函数的名称,可以从这里进行选择,快速直达。
  • 操作完成之后,记得更新。如果有普通语法错误,会提示错误,并拒绝保存。
主题编辑器基本使用介绍
通过wordpress网址获取主题名称

怎么使用functions.php

如果您决定编辑functions.php文件,请格外小心。请谨记以下原则:

  • 更新主题后,对functions.php的编辑将丢失。
  • 如果您更换WordPress主题,编辑将丢失。
  • 在functions.php文件中犯一个编码错误也可能导致其他WordPress错误。
  • 如果您有子主题,则仅应编辑functions.php文件,并且代码片段仅与活动子主题一起使用。例如,您可能要包括自定义字体,样式表的代码片段,或添加专门用于该特定子主题的语言翻译文件。

functions.php使用方法

  • 将需要使用的代码保存到当前主题functions.php(如果使用了子主题,需要放在子主题functions.php,推荐使用子主题)最后位置。
  • 注意:
    • 如果functions.php最后一行结尾处没有?>,请确保你的代码片段开始也没有<?php
    • 如果functions.php最后一行结尾处有?>,并确保您复制的代码前面有<?php,结尾有?>
    • 新的<?php // 您的代码 ?>代码段落和前面一个?>之间只可以换行,不能有任何空行。
    • 任何时候,<?php // 您的代码 ?>需要成对出现,不能存在<?php <?php,或者?> ?>
  • 修改完成后刷新后台页面或者前台,即可预览效果。
functions.php中代码使用实例
这些代码功能全部都是php代码,可以不添加<?php //代码 ?>作为开始和结束标记。
functions.php中个人使用代码举例和说明
functions.php中个人使用代码举例和说明

如上图所示:

  • 每个代码段落,我以<?php //代码 ?>作为开头和结束。例如代码段落A和代码段落B。
  • 保证每个?>后面换行后紧跟<?php,绝不出现任何空行。例如A2和B1之间。
  • 可以在<?php //代码 ?>的php段落内部添加空行,以方便维护和直观的区分功能。例如图中的蓝色空行
  • 可以在<?php //代码 ?>的php段落内部添加注释,以方便进行解释或者说明。例如A3和B3
  • functions.php结尾处,可以留空,不写?>,例如途中的C

1人评论了“functions 添加自定义代码方法”

  1. Pingback: wordpress Gravatar 头像及用户自定义头像二次开发(集合帖) – 迷路轮回

评论区已关闭

Scroll to Top