Si no te quedó claro si es mejor usar un plugin o el fichero functions.php
¿que te parecería crear tu propio plugin para incorporar tus funciones favoritas?.
Es lo que hice hace tiempo y tengo que decir que estoy encantado. Simplemente monté un pequeño plugin a mi medida en el que incorporé las funciones que uso más a menudo y así cuando monto un sitio nuevo solo tengo que instalarlo, personalizar alguna URL absoluta – que la tiene – y activarlo para que todo funcione.
La ventaja, si te lo preguntas, sobre usar el fichero functions.php
de tu tema es principalmente que puedes actualizar tu tema sin temor a perder tus personalizaciones, pues tus funciones están en tu plugin, no en el tema.
Hacerlo es muy sencillo …
Crear fichero del plugin
Lo primero es hacer el plugin. Para eso creas un archivo PHP nuevo con tu editor de código favorito y le añades la cabecera estándar para que WordPress lo reconozca como plugin, algo así:
<?php /* Plugin Name: Funciones Plugin URI: https://ayudawp.com/ Description: Plugin para liberar de funciones el fichero <code>functions.php</code> y activarlo a placer (o no) . Version: 1.0 Author: Fernando Tellado Author URI: https://tellado.es License: GPLv2 o posterior */
Añadir funciones
A partir de ahí simplemente vas añadiendo tus funciones y cuando estés contento guardas los cambios. Este sería un ejemplo con un par de funciones típicas que ya he publicado anteriormente:
<?php /* Plugin Name: Funciones Plugin URI: https://ayudawp.com/ Description: Plugin para liberar de funciones el fichero <code>functions.php</code> y activarlo a placer (o no) . Version: 1.0 Author: Fernando Tellado Author URI: http://tellado.es License: GPLv2 o posterior */ // Logo personalizado en login add_action("login_head", "my_login_head"); function my_login_head() { echo " <style> body.login #login h1 a { background: url('".get_bloginfo('template_url')."/images/awloginlogo.png') no-repeat scroll center top transparent; height: 135px; width: 135px; } </style> "; } // personalizar url logo acceso add_action( 'login_headerurl', 'my_custom_login_url' ); function my_custom_login_url() { return 'https://ayudawp.com'; } //Cambiar texto alt del logo de login add_action("login_headertitle","my_custom_login_title"); function my_custom_login_title() { return 'Otro sitio creado por Fernando Tellado'; }
Instalar y activar el plugin
Luego lo subes a la carpeta ‘/plugins/
‘ de tu instalación de WordPress y ya podrás activarlo como cualquier otro plugin, solo que este hace funciones específicas para ti.
Duda Nº1: ¿Tengo que seguir usando el fichero functions.php
para algo o ya no?.
Respuesta Nº1: Seguro que si. Lo que tienes que tener en cuenta es lo siguiente:
- Si la función afecta o está relacionada con el tema (o temas) entonces irá mejor en el fichero
functions.php
- Si la función está relacionada con funcionalidades generales de WordPress entonces irá mejor en tu plugin de funciones
- Hacerlo así (plugin por un lado y ‘functions.php’ por otro) es un modo mucho más lógico y ordenado de hacer las cosas
Nota: Por supuesto, una vez actives el plugin ya puedes eliminar (de hecho debes hacerlo) las funciones que incorpore del archivo ‘functions.php’ de tu tema y ya estén en el plugin.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Muy curioso, lo voy a probar.
Gracias por la aportación.
Muy bueno! Y Útil!!
Pingback: Mostrar imágenes destacadas en el feed | Ayuda WordPress
Pingback: Cambiar enlaces de tu RSS a Feedburner | Ayuda WordPress
Muchas gracias por la aportación, funciona perfecto.
buena entrada, aficionado a este blog, gracias,
Para mí es fijo también eliminar Yahoo, IM, AIM y Jabber. Todavía no sé como WordPress lo sigue manteniendo.
Y utilizo el archivo functions.php en mu-plugins para que no haga falta activarlo y tampoco se desactive por error.
Pingback: Más iconos de formato al editor visual de WordPress | Ayuda WordPress
Excelente… esta buscado algo asi para solucinar un problema con mi tema
Pingback: Mostrar miniaturas de vídeos YouTube en WordPress | Ayuda WordPress
Pingback: Cambia el texto “Read more” con una simple función | Ayuda WordPress
Nada a mi no me funciona ni incluso el creado por Fernando, supongo estare haciendo algo mal pero no se qué.
Pingback: Eliminar los apuntes de novedades de WordPress | Ayuda WordPress
Pingback: Excluir categorías del RSS feed de WordPress | Ayuda WordPress
Pingback: Mostrar publicidad solo en entradas antiguas de WordPress | Ayuda WordPress
Pingback: Avisos personalizados en WordPress | Ayuda WordPress
Pingback: Mensajes de error personalizados en WordPress | Ayuda WordPress
Pingback: Limitar búsquedas solo a los títulos en WordPress | Ayuda WordPress
Pingback: Excluir artículos del feed de WordPress | Ayuda WordPress
Pingback: Numeración autoincremental en los títulos de las entradas | Ayuda WordPress
Pingback: Evita que WordPress comprima los JPG | Ayuda WordPress
Pingback: Añade cualquier cosa al final de las entradas | Ayuda WordPress
Pingback: Mostrar RSS feed en una entrada de WordPress | Ayuda WordPress
Muchas gracias me ha sido muyyyyy util.
Pingback: Tu propio widget de noticias en el escritorio en WordPress | Ayuda WordPress
Muy interesante, es una buena forma de dejar el functions limpio, e incluso se podría hacer una administración que te permitiría activar o no las distintas funciones.
Exacto. Eso es justo lo que yo quiero implementar. 🙂
Pingback: Desactivar la comprobación de actualizaciones de plugins | Ayuda WordPress
Pingback: Redirección para accesos fallidos en WordPress | Ayuda WordPress
Pingback: Añadir target=”_blank” a todos los enlaces | Ayuda WordPress
Existe nueva versión del plugin?
Hola, recién estoy empezando a aprender wordpress y me ha quedado un duda, por que al final del archivo, no se cierra " <?php "
< ? p h p
}
add_action ( ' admin_footer ' , ' posts_status_color ' ) ;
la sentencia < ? p h p
Gracias.
Pingback: Mensajes aleatorios de aviso en el editor de WordPress | Ayuda WordPress
Pingback: Comentarios anidados por defecto en WordPress | Ayuda WordPress
Pingback: Añadir una columna para ver el ID de una entrada WordPress | Ayuda WordPress
Pingback: Contador de caracteres en el extracto | Ayuda WordPress
Pingback: Copyright oculto para los que te copian | Ayuda WordPress
Uff vaya informacion que compartiste en este post, ya cree mi plugin y funciona al 100% me diste mas de lo que buscaba en este sitio Fernando. Muchas gracias y te seguire leyendo 😉
Gracias de nuevo Fer por tu explicación, voy a bajar tu plugin y quiero crearme uno mío, si funciona después lo comparto para el que quiera usarlo. Está tan fácil y clara tu explicación que me parece facilísimo crear plugins, yo creía que era muy difícil, saludos
Gracias por el aporte ,aunque me cuesta estoy aprendiendo a usarlo.
Pingback: Cambiar comillas tipográficas por comillas normales en WordPress | Ayuda WordPress
Pingback: Mejora en la página de búsquedas del blog | La Bitácora del Tigre
Pingback: Marcas de agua automáticas en WordPress | Ayuda WordPress
¡Necesitaba algo así! ¡Gracias!
Estimados,
Copie el codigo en un nuevo archivo PHP y lo descargue y de las dos formas me arrojo error al activarlo.
Error:
El plugin ha provocado una salida inesperada de 3
caracteres durante la activación. Si ves mensajes de “cabeceras ya
enviadas”, problemas con los feeds de sindicación u otros problemas,
trata desactivar y eliminar el plugin.
Quien me podria ayudar…cualquier ayuda serviria bastante
Si te muestra ese error, prueba a cerrar la sentencia php al final del documento con «?>» (sin las comillas).
Sería correcto para crear un plugin de shortcodes?
Pues correcto no se pero posible si, claro
OK Gracias!
Pingback: Crea tu plugin de funciones desde el escritorio de WordPress | Ayuda WordPress
Pingback: Como permitir a los usuarios editar sus comentarios en WordPress | Blog de Alessandro Degiusti
Pingback: Prueba de presentación con shortcodes | Blog de aula para la exportación
Pingback: Ejecutar PHP en widgets de texto | Ayuda WordPress
Pingback: Autoenlazar URLs | Ayuda WordPress
Muchas gracias por la información. Lo he hecho en mi blog y de momento funciona perfectamente.
Pingback: Plugins que no deberías instalar | Ayuda WordPress
en que carpeta se ponen las imagenes para el logo personalizado de incio de sección en wp
Buenisimo muchas gracias por todos tus grandes aportes
Pingback: Optimiza el uso de Jetpack en tu web WordPress | antoniohg.com
Pingback: Evitar acceso al escritorio a los suscriptores | Ayuda WordPress
Pingback: Mostrar la cantidad de archivos subidos a WordPress | Ayuda WordPress
Pingback: Desactivar módulos de JetPack por defecto | Ayuda WordPress
Tienes puesto que la descarga no se encuentra 😉
Pingback: Cookies, WordPress y legislación | Ayuda WordPress
ya subi el pluging, como compruebo si esta funionando?¿?
Activándolo como cualquier otro plugin
Excelente pero no me muestra el link de descarga.
Pingback: Tu propio plugin de funciones – HBRAVO
Pingback: Cómo personalizar las entradas relacionadas de JetPack | Ayuda WordPress
Pingback: Qué son los shortcodes y cómo crearlos | Ayuda WordPress
Pingback: Qué es y cómo se usa el fichero functions.php | Ayuda WordPress
Pingback: Mostrar completo el editor de WordPress | Ayuda WordPress
No tengo ni idea donde está la página de utilidades.Solo aparece una gran página de publicidad de mi hosting,pero explican poco el funcionamiento.Mis url no parece estar activas,y se han producido miles de errores al importar.¿?
No debería aparecer siquiera publicidad. Un plugin de utilidades lo c creas tu misma
Gracias Fernando, tengo la publicidad con plugins de Google Adsense¿Se ha de ¿Ha de colocar los códigos en algún sitio? Lo digo porque me los rechaza el plugin, al parecer al ser dinámicos no se han de colocar,no obstante hay 75 anuncios para mis cinco blogs, que los han elegido ellos,solo secolocan 3, pero que ellos van variando,supongo según la dinamica.
Si no te deja el plugin entonces te tocará meterlos manualmente en los archivos PHP del tema
Hola Fernando, desde hace tiempo que el botón (enlace) de «responder» en los comentarios anidados dejó de funcionarme y no supe nunca el porqué. Estoy cansado de buscar y leer y no encuentro nada que me oriente a solucionarlo.
Desde el panel de admin de wordpress si que puedo responder, pero luego los usuarios no pueden seguir la conversación y se me ensucia todos los temas.
Si me pudieras ayudar te estaría eternamente agradecido. Un saludo y gracias por tus artículos, que para los que estamos empezando nos vienen como anillo al dedo!
Puede que sea algún plugin que interfiere con el sistema de comentarios. Deberías desactivarlos, probar si funciona, y luego ir activando uno a uno hasta detectar el que interfiere para no usarlo y usar uno compatible
Gracias por la respuesta, al final detecté que se trataba de una configuración de SEO BY YOAST. No me había fijado que en la descripción de una de sus funciones indicaba que podía causar ese problema.
Pingback: Desactivar la actualización de plugins concretos | Ayuda WordPress
Eres muy bueno!!! Muchas gracias!!
Pingback: Cómo cambiar la URL de autor en WordPress | Ayuda WordPress
Pingback: Cómo eliminar los restos que dejan los shortcodes
Pingback: Establecer todos los ajustes de inserción de imágenes por defecto | Ayuda WordPress
Pingback: Tu propio plugin de funciones – Profe Herman
Pingback: Forzar la desconexión de usuarios | Ayuda WordPress
Pingback: Retrasar la desconexión de usuarios | Ayuda WordPress
Pingback: Cambiar textos de WordPress sin modificar la traducción | Ayuda WordPress
Pingback: Subir archivos por defecto en el cargador de imágenes de WordPress | Ayuda WordPress
Supongo que hay que cerrar las etiquetas php, ¿no?
Me respondo a mí mismo: ¡NO!
Pingback: Disqus solo donde lo necesites | Ayuda WordPress
Pingback: Como desactivar la REST API | Ayuda WordPress
Pingback: Renombrar los menús de administración de WooCommerce | Ayuda WordPress
Pingback: Crea tus propios widgets para el escritorio de WordPress | Ayuda WordPress
Pingback: Heartbeat API ¿la necesito?
Pingback: Cómo cambiar el texto “Añadir al carrito” en WooCommerce
Pingback: ¿Qué son los mu-plugins de WordPress?
Pingback: Cómo quitar las migas de pan en WooCommerce
Aun funciona con las nuevas versiones de WP ?
Si claro
Saludos Fernando,
He intentado aplicar esto como un plug-in o en el archivo functions pero no me funciona nada, la orden sigue sin completarse.
Que más debo hacer?
Pues a mi me sigue funcionado, creo que hasta me he vuelto adicto a su uso
Pingback: Cómo añadir el CIF/NIF en WooCommerce
Pingback: Tu propio plugin de funciones | Herman Bravo Blog
Pingback: Mostrar miniaturas de vídeos YouTube en WordPress
Pingback: Añade texto a la pantalla de registro de WordPress
Pingback: Cómo ocultar o personalizar los productos relacionados en WooCommerce
Pingback: Qué es y cómo solucionar el aviso “Defer Parsing JavaScript”
Pingback: Forzar HTTPS SSL en WordPress
Pingback: Cómo ocultar métodos de pago por producto o categoría en WooCommerce
Pingback: Cómo solucionar el error HTTP 403 de conexión con Jetpack
Pingback: Cómo reparar un WordPress roto tras cambiar la URL
Pingback: Cómo ocultar el título de las páginas
Pingback: Cómo incluir el IRPF en WooCommerce como impuesto negativo
Pingback: Cómo quitar los dashicons de portada para acelerar WordPress
Pingback: Cómo quitar devicepx-jetpack.js para acelerar tu web
Pingback: Cómo ocultar el SKU en WooCommerce
Pingback: Tutorial Divi: Cómo quitar el tipo de contenido Proyectos
Funciona con multisite ??
Sí claro
Gracias, Excelente artículo.
Pingback: Cómo quitar el desplegable de "Ordenar por" en WooCommerce
Pingback: La vulnerabilidad target="_blank" y la solución rel="noopener noreferrer" de WordPress
Pingback: Insertar anuncio después de un párrafo concreto en WordPress
Pingback: Cómo cambiar el orden de las pestañas de producto en WooCommerce
Pingback: ¿Cómo evito que WordPress almacene las IPs de los comentarios?
Pingback: Cómo quitar o modificar el texto de producto añadido al carrito en WooCommerce
Pingback: Permalinks por defecto sin intervención del usuario
Pingback: Añadir elementos al título automáticamente
Pingback: Cómo quitar los menús de administración de WordPress
Pingback: Cómo añadir más fuentes a tu WordPress - Pablo Moratinos
Pingback: Recargo de equivalencia en WooCommerce, tienda online WordPress
Pingback: Cómo cambiar el nombre del SKU de WooCommerce a lo que quieras
Muchísimas gracias Fernando!! Acabo de hacer un plugin para un cliente y no veas de la que me has salvado. Ahora tengo las funciones que todo el año hacía a pelo en un simple plugin. Desarrollaré uno para cada cliente y voilá!! 😀
En pleno 2021 este hack sigue siendo de utilidad. Muchas gracias por currártelo y compartirlo. ¡Bravo Fernando!