Algunas explicaciones
Primero debe comprender el propósito de functions.php en un tema. Functions.php es básicamente un archivo de complemento sin ningún nombre que, si está presente, se carga automáticamente con Wordpress. Wordpress carga el function.php de su tema actual para las páginas de aplicaciones para usuario de wordpress y también las páginas de administración (admin).
No hay diferencia entre un complemento y functions.php excepto que los complementos tienen nombre y pueden activarse / desactivarse independientemente de otros complementos y temas. El funtions.php se adjunta con su tema actual y si cambia a otro tema, Wordpress usa las funciones del nuevo tema.php y no sus funciones antiguas.php con modificaciones personalizadas.
Las actualizaciones del tema también sobrescriben functions.php y no hay forma de evitarlo, incluso si coloca sus modificaciones personalizadas en archivos de código separados y lo incluye en su fucntions.php, tendrá que agregar esa línea de inclusión después de cada actualización. .
Generalmente, el tipo de código que debe ir en functions.php:
- funciones que se utilizan en los archivos de plantilla de su tema.
- opciones de tema
- barras laterales
- menús de navegación
- formatos de publicación
- publicar miniaturas
- cualquier código que solo esté relacionado con el tema actual.
Como desea conservar sus modificaciones personalizadas incluso si cambia de tema. Debido a que el tema secundario no funcionará en este caso, ya que cambiará el tema y no se utilizarán las funciones.php del tema secundario.
La solución
La única solución recomendada por @Otto es crear un archivo de complemento. El enfoque que puede tomar para crear su complemento específico para el sitio es crear una carpeta con su nombre de sitio en 'wp-content / plugins' y crear archivos de complemento en ella.
¿Por qué archivos de plugin? y no un solo archivo de complemento.
Agrupe las funcionalidades del sitio relacionadas con el código en archivos de complementos separados y no olvide agregar el encabezado del complemento en todos Sus archivos de complementos para que sean reconocidos por Wordpress como complementos separados. Luego tendrá la capacidad de activar / desactivar diferentes características / funcionalidades de su sitio sin romper todo.