使用 My Custom Functions 插件来持久化对 WordPress functions.php 的更改

2020年8月2日 3904点热度 7人点赞 0条评论

该片博文能解决的问题包括

(其实主要是为了能搜到)

  • 如何在 functions.php 中添加自定义代码
  • 更新 WordPress 主题时如何保留 functions.php 的更改
  • 如何在 WordPress 中添加自定义 shortcode (短代码)
  • 如何批量替换 WordPress 正文中的文字
  • ......

安装 My Custom Functions 插件

插件主页:https://wordpress.org/plugins/my-custom-functions/

后台在线安装更方便,国内主机建议学术加速。启用插件后,后台的设置中会出现“PHP插入器”选项。插件页面的提示这里再复述一遍:

如果写错网站崩溃500。请进入wp-content/plugins/my-custom-functions/,将文件START重命名为STOP

请记住上面的急救方案?。添加完后文介绍的自定义代码保存更改,启用开关,即生效了!

My Custom Functions 插件界面

添加自定义 shortcode (短代码)

原理是利用 WordPress API 。

function title_shortcode( $atts, $content = null ) {
	return '<h2>' . $content . '</h2>';
}
add_shortcode( 'title', 'title_shortcode' );

以上代码能将[*title]我是标题[*title]替换成<h2>我是标题</h2>。(忽略*号,防转义用)笔者当时的需求背景是:主题更新去除了该功能,自行添加避免逐篇修改。

更多请参考官方文档:https://codex.wordpress.org/Shortcode_API

批量替换正文中的文字

function to_replace_text($text){
	$replace = array(
		// '替换前的' => '替换后的'
		'hello' => 'hi',
		);
	$text = str_replace(array_keys($replace), $replace, $text);
	return $text;
}
add_filter('the_content', 'to_replace_text'); //正文替换
//add_filter('the_excerpt', 'to_replace_text'); //摘要替换
//add_filter('comment_text', 'to_replace_text'); //评论替换

代码来自:https://www.zhutihome.net/7128.html

因为是代码存储在该插件中,后续主题更新也不会有影响。理论上这样的风险也比较小,但是养成一个良好的备份习惯才是最保险的。

章鱼DS

学生网站代码通吃的草根,但总拼命着长出树根。

文章评论