Как писать собственные функцит на PHP?
1. написать функцию
2. она делает то что хотите? если да, профит. Если нет - назад к п.1 
Далее - у каждого CMS есть набор своих инструментов и средств, которые вы можете использовать. Прежде чем писать свои функции, вы должны изучить эти инструменты, чтобы не написать баговелосипед. Применить вашу функцию - то же самое, в каждой CMS свои механизмы применения пользовательских функций.
Далее - как понять что использовать? для начала нужно понять, что вы хотите. 
Выясняете <что я хочу>. Выясняете, <где это должно быть>. Гуглите как сделать <то что я хочу> в <где это должно быть>.
В каждой cms пользовательские функции добавляются по-разному. К примеру, в Wordpress в теме оформления может быть файл functions.php (если его нет, то просто создай его). И в него добавляй свои функции. Потом просто вызывай в нужном месте кода в соответствующих файлах. Но эти функции будут только для текущей темы оформления. Не знаю, как это делается в других cms. Надо гуглить.