Ya están bastante avanzadas las líneas generales de las novedades confirmadas, y algunas propuestas para WordPress 4.7, que saldrá a la luz el 6 de diciembre de 2016 así que vamos a ir tomando nota.
Índice de contenidos
Nuevo tema: Twenty Seventeen
Ya hemos hablado algo de Twenty Seventeen, el nuevo tema para 2017 que vendrá incluido en WordPress 4.7. Sus principales características serán…
- Mejoras en el diseño de portada cuando uses una página estática
- Nuevos iconos de edición en el personalizador
- Imágenes de cabecera e incluso vídeo
- Contenido demo para las vistas previas, mucho mejor que el soso actual
- CSS en vez de pre-procesadores
Diferente idioma de administración
A partir de esta versión los usuarios podrán elegir desde su perfil un idioma distinto para la administración del del sitio.
Acciones en lote personalizadas
Hasta ahora en cualquier ventana de listado de contenidos de WordPress disponemos de una serie de acciones en lote que vienen por defecto, pero a partir de WordPress 4.7 se podrán añadir nuevas acciones en masa, o por lotes.
En la publicación del blog de Make Core “Using Custom Bulk Actions”. se muestran varios ejemplos de lo fácil que será registrar acciones por lotes personalizadas para cualquier tipo de contenido:
add_filter( 'bulk_actions-edit-post', 'register_my_bulk_actions' ); function register_my_bulk_actions( $bulk_actions ) { $bulk_actions['export_multiple'] = __( 'Export', 'acme'); return $bulk_actions; }
Con este nuevo filtro con la función «register_my_bulk_actions» del ejemplo, al seleccionar varias filas de la pantalla, lanzamos la acción, con un gancho (hook) en el proceso:
add_filter( 'handle_bulk_actions-edit-post', 'my_bulk_action_handler', 10, 3 ); function my_bulk_action_handler( $redirect_to, $action, $post_ids ) { if ( $action !== 'export_multiple' ) { return $redirect_to; } foreach ( $post_ids as $post_id ) { // Perform action for each post. } // after doing so allow a notice via URL-Query $redirect_to = add_query_arg( 'bulk_export_multiple', count( $post_ids ), $redirect_to ); return $redirect_to; }
Para finalizar, generamos la reacción al parámetro “bulk_export_multiple” y mostramos un aviso al usuario:
add_action( 'admin_notices', 'my_bulk_export_multiple_notice' ); function my_bulk_export_multiple_notice() { if ( empty( $_REQUEST['bulk_export_multiple'] ) ) { // none of our business => early exit return; } // inform the user how many have been exported $count = intval( $_REQUEST['bulk_export_multiple'] ); printf( '<div id="message" class="updated fade">' . __( '%s exported.', 'acme' ) . '</div>', $emailed_count ); }
Y esto es solo un avance. Mucho me temo (espero) que pronto habrá un montón de plugins que mejorarán aún más esta nueva funcionalidad de acciones en masa personalizadas.
Mejoras en la seguridad de entradas y páginas protegidas
A partir de WordPress 4.7 las entradas y páginas protegidas podrán tener contraseñas de hasta 255 caracteres, una importante mejora de seguridad, pues hasta ahora solo admitían contraseñas de hasta 20 caracteres, por ejemplo, en la de la captura que ilustra esta sección del artículo.
Acceso automático al escritorio tras la instalación de WordPress
Hasta ahora cuando terminas de instalar WordPress el asistente te anima a acceder a la administración de tu sitio, pero desde WordPress 4.7 te saltas ese paso inútil, y tras terminar de instalar WordPress te lleva directamente y automáticamente al escritorio de WordPress donde, como siempre, encontrarás la pantalla de bienvenida, animándote a realizar algunas acciones.
Ya iba haciendo falta este cambio tan lógico y necesario.
Abreviaturas para mostrar logos, textos, emoticonos o lo que quieras
Imagina que quieres ofrecer que cuando alguien escriba :logo: aparezca el logo de tu empresa, o que al escribir se muestre el icono del cachondo verde, o incluso que al escribir AWP se sustituya automáticamente por Ayuda WordPress. ¡Mola! ¿eh?
Pues desde WordPress 4.7 ya es posible. Aquí un ejemplo:
add_filter( 'smilies', function ( $wpsmiliestrans ) { $wpsmiliestrans[':logo:'] = 'logo.png' } );
Sustitución de shortcodes
¡La leche, la hostia y viva la madre que los parió a todos! 🙂
Pues sí, a partir de WordPress 4.7 hay una nueva función que va a permitir el cambio automático de un shortcode por lo que quieras, otro shortcode por ejemplo.
Con esto las migraciones, cambios de plugins o temas, y no digamos las funcionalidades avanzadas que pueden incorporar ambos, acabarán con el secuestro a que nos vemos sometidos cuando queremos cambiar de plugin o tema y tenemos la horrible y tediosa tarea de cambiar shortcodes.
El nuevo filtro “pre_do_shortcode_tag” es lo que permite esta sustitución por tu propia función:
// cambiamos el shortcode imaginario [loquesea] add_filter( 'pre_do_shortcode_tag', function ( $short_circuit, $tag, $attr ) { if ( 'marquee' != $tag ) { // si no es el shorcode loquesea => ignore return $short_circuit; } // si es el shortcode loquesea => mostramos otra cosa return 'esto es otra cosa distinta a loquesea'; }, 10, 3 );
Con lo que conseguimos sustituir el shortcode con nuestra propia función.
Algo realmente útil, como he comentado, cuando cambiamos de tema y queremos que un shortcode del anterior pase a comportarse de otro modo, o simplemente desactivarlos y cambiarlos por otra cosa.
WP REST API 2.0
Está previsto que en WordPress 4.7 se incorpore la versión 2.0 final de la WP REST API, con importantes mejoras.
Buscar medios por nombre del archivo
Algo que también va tardando en incorporarse en WordPress es poder buscar medios también por el nombre del archivo en la biblioteca multimedia y el cargador de medios, algo que hasta ahora teníamos que incluir mediante plugins.
Mejoras en el personalizador
También se quieren incorporar mejoras en el personalizador, como que se pueda añadir la autoría de los elementos de los menús o poder instalar temas directamente desde el personalizador, algo que tendría todo el sentido.
Mejoras en temas heredados
Los temas heredados, o la herencia de temas es algo disponible ya hace tiempo mediante la función locate_template
.
Con la llegada de 4.7 se incorporan nuevas funciones a esta herramienta:
- get_theme_file_uri
- get_parent_theme_file_uri
- get_theme_file_path (almost like locate_template)
- get_parent_theme_file_path
Los nombres de las funciones se explican por sí mismas, así por ejemplo, una llamada a get_theme_file_uri('inc/foo.php' )
buscará en el archivo “inc/foo.php” del tema hijo, y a continuación en el tema padre. Una vez lo encuentre devolverá la URL al archivo o la ruta con la función get_theme_file_path
.
Por si no fuese suficiente, luego puedes ampliar las posibilidades con filtros como theme_file_path
.
Por ejemplo, imagina que un plugin tiene sus propios archivos de plantilla, que podría añadirlos de este modo:
add_filter( 'theme_file_path', function ( $path, $file ) { if ( $path ) { // ya está en el tema hijo-padre => lo dejamos así return $path; } // busca en mi plugin if ( file_exists ( WP_PLUGIN_DIR . '/' . $file ) ) { return WP_PLUGIN_DIR . '/' . $file; } } ); // dentro del plugin hacemos algo así: if ( $path = get_theme_file_path( 'my-plugin-slug/a-template.php' ) ) { require_once $path; }
La principal ventaja es que WordPress busca el archivo “my-plugin-slug/a-template.php” así:
- wp-content/themes/child-theme/my-plugin-slug/a-template.php
- wp-content/themes/parent-theme/my-plugin-slug/a-template.php
- wp-content/plugins/my-plugin-slug/a-template.php
Toca esperar
Aún no está decidido con seguridad o no lo que entrará o no, de hecho quedan dos meses aún, pero todo apunta a que WordPress 4.7 va a ser una actualización con una gran importancia en el futuro de WordPress, sobre todo por la mejora e incorporación de funciones que ampliarán y mejorarán el comportamiento de WordPress.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!