The functions.php file is a file on your WordPress web server that is part of a group of files that define your theme. Each theme has its own functions.php file. Normally you don’t want to change this file at all. If you want to add code to this file it is recommended to create a child theme and create a new file under that child theme and add your code to that file.
You can use a Child Theme to make edits to your theme without having to worry about those edits disappearing when you update the parent theme. You can make additions to your functions.php file by cereating a new functions.php file in the directory of your child theme.
You can use a plugin called Orbisius to create the child theme and if you specify that you wish to have a new functions.php file created, which I recommend, you will see the following in functions.php file:
<?php /* * Generated By Orbisius Child Theme Creator - your favorite plugin for Child Theme creation 🙂 * https://wordpress.org/plugins/orbisius-child-theme-creator/ * * Unlike style.css, the functions.php of a child theme does not override its counterpart from the parent. * Instead, it is loaded in addition to the parent’s functions.php. (Specifically, it is loaded right before the parent theme's functions.php). * Source: http://codex.wordpress.org/Child_Themes#Using_functions.php * * Be sure not to define functions, that already exist in the parent theme! * A common pattern is to prefix function names with the (child) theme name. * Also if the parent theme supports pluggable functions you can use function_exists( 'put_the_function_name_here' ) checks. */
Here is a website with some tweaks that look interesting.