Se pueden deshabilitar la API XML-RPC de WordPress añadiendo la siguiente línea al archivo functions.php del theme activo o vía plugin:
add_filter('xmlrpc_enabled', '__return_false');
Visto en este artículo de wpbeginner.com.
Se pueden deshabilitar la API XML-RPC de WordPress añadiendo la siguiente línea al archivo functions.php del theme activo o vía plugin:
add_filter('xmlrpc_enabled', '__return_false');
Visto en este artículo de wpbeginner.com.
El nombre de usuario en WordPress está protegido por diseño, de manera que no se puede cambiar desde el panel de administración ni usando las funciones PHP para actualizar los datos de un usuario. La orden wp user update de WP-CLI tampoco permite cambiar el username. Esta protección tiene su lógica, pero hay veces que necesitamos cambiar algún username. Una manera de hacerlo es modificándolo directamente en base de datos.
Con WP-CLI podemos lanzar una query a la base de datos para cambiar el username:
wp db query "UPDATE wp_users u, ( SELECT COUNT(*) as number_of_same_login_users FROM wp_users u WHERE user_login = 'mary_new' ) tmp SET u.user_login = 'mary_new' WHERE u.user_login = 'mary_old' AND tmp.number_of_same_login_users = 0"
En una línea:
wp db query "UPDATE wp_users u, ( SELECT COUNT(*) as number_of_same_login_users FROM wp_users WHERE user_login = 'mary_new' ) tmp SET u.user_login = 'mary_new' WHERE u.user_login = 'mary_old' AND tmp.number_of_same_login_users = 0"
Recientemente he sufrido ataques en algunas webs gestionadas con WordPress. Una de las consecuencias es que cientos de artículos sobre casinos en línea y juegos de azar son creados. Borrar estos contenidos desde el panel de administración puede llevar un buen rato. Con wp-cli se puede hacer con un comando.
Normalmente estas infecciones crean los contenidos automáticamente y de una vez, así que la fecha es la misma para todos los contenidos. Podemos por tanto obtener un listado de entradas filtrado por fecha y luego borrarlas. Algo así:
wp post delete $(wp post list --year=2022 --month=06 --day=01 --format=ids) --force
wp-cli es una interfaz de línea de comandos para WordPress. Permite hacer multitud de operaciones de administración y mantenimiento de una instalación de WordPress. Por un lado agiliza estas operaciones y por otro permite automatizarlas, ejecutándolas en modo no interactivo usando cron y un script de bash por ejemplo.
Aquí recojo cómo llevar a cabo tareas básicas con WordPress usando wp-cli. Para cualquier otro uso se puede consultar la documentación oficial de wp-cli.
La mayor parte de los sitios web que funcionan con WordPress pueden hacerlo eligiendo un theme del repositorio oficial o de cualquier otro y personalizándolo con las opciones disponibles en el panel de control. Incluso si se necesita desarrollar un theme hoy día es buena idea no empezar de cero, sino usando una estructura básica, genérica ya desarrollada. Por otro lado es recomendable usar ciertas herramientas que produzcan un theme optimizado, que cargue lo más rápido posible, que se adapte a todo tipo de dispositivos. Esto pasa, además de por estructurar bien la información para minimizar las consultas a base de datos, por producir archivos CSS, JS minimizados e imágenes comprimidas y optimizadas que agilicen la carga. Un buen starter theme para WordPress facilita ambas cosas: una estructura genérica sobre la que empezar a construir rápidamente, y un entorno de desarrollo que permita automatizar las tareas de optimización e ir probando los avances ágilmente.
En este post comparto mi manera de trabajar: qué starter theme utilizo últimamente y cuál es el flujo de trabajo con él.
Si se quiere redirigir a otra página en WordPress usando wp_redirect() suele ocurrir que no hay efecto alguno, que no se produce la redirección al incluir esta función en una función del archivo functions.php
o en una plantilla de un tema.
WordPress devuelve un error del tipo "Cannot modify header information - headers already sent".
Por omisión en el feed principal de un sitio que funciona con WordPress se muestran las entradas del tipo de contenido post. Para incluir otros tipos de contenidos se puede usar el siguiente código, añadiéndolo al archivo functions.php
:
add_filter( 'pre_get_posts', 'prefix_custom_feed' ); function prefix_modify_feed( $query ) { if ( $query->is_feed() ) $query->set( 'post_type', array( 'post', 'link' ) ); return $query; }
También se puede obtener un feed combinado modificando los parámetros de la URL del feed, de la siguiente manera:
https://voragine.net/feed?post_type[]=post&post_type[]=link