Como un WordPress desarrollador utilizo muy a menudo los mismos fragmentos para evitar perder tiempo al crear un nuevo complemento. Y hoy es un gran día solo porque voy a compartir algunos de ellos con ustedes. Los fragmentos a continuación no están relacionados y puede usarlos en sus propios complementos y temas personalizados.
Codificar correos electrónicos y evitar el spam
Para comenzar, me gustaría que le presentara un fragmento simple y excelente usando una función nativa de WordPress llamada: antispambot (). Es muy fácil de usar pero muy útil. El objetivo es cifrar los correos electrónicos que se muestran en la interfaz para evitar que los robots de spam los atrapen y envíen spam a usted o a los clientes del tour. Simplemente coloque el correo electrónico como un parámetro de función y WordPress hará el trabajo:
echo antispambot("johndoe@mysite.com");
Cambiar el marcador de posición «Ingrese el título aquí»
A continuación, cuando agrega una nueva publicación, una nueva página o un nuevo tipo de publicación personalizada, el campo de título tiene un marcador de posición que dice «Ingrese el título aquí». Realmente me gusta cuando el texto del marcador de posición tiene en cuenta el tipo de publicación que estás agregando. Por ejemplo, si se trata de un libro, el marcador de posición debería mostrar «Introduzca aquí el título del libro». Para hacerlo, use este código:
function change_default_title( $title ){
$screen = get_current_screen();
if ( '_your_custom_post_type_' == $screen->post_type ) {
$title = 'The new title';
}
return $title;
}
add_filter( 'enter_title_here', 'change_default_title' );
Simplemente defina el tipo de publicación.
Compruebe si un complemento está activo
Creé algunos complementos dependientes de BBpress. Como no quería que mis complementos se cargaran si faltaba BBpress, uso este código. ¡Tan simple, pero tan útil!
// Include if use on the frontend, not needed in the admin
include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
if (is_plugin_active('plugin-directory/plugin-file.php')) {
//plugin is activated
}
Visualización de la fecha usando el formato predeterminado de WordPress
En casi todos los complementos o temas, esto no se hace correctamente. Sí, me refiero a la forma en que se muestran las fechas. Como muchos desarrolladores hacen temas o complementos en inglés, usan el formato de fecha de EE. UU., Cuando los europeos usan estos elementos, la fecha no está formateada correctamente. Por lo tanto, una forma sencilla de mostrar todas las fechas con el mismo formato es utilizar la tienda de formato en sus propias opciones de instalación de WordPress utilizando el fragmento a continuación. Que quiere decir:
date( get_option('date_format'), strtotime( $date ) )
Obtenga una identificación de usuario por su inicio de sesión
El otro día me pidieron que creara un complemento de referencia para WordPress. Mi cliente quería que las URL estuvieran más o menos formateadas así: http://mysite.com/referrer/remi (donde, obviamente, “remi” es la referencia). Para hacerlo, utilicé las reglas de reescritura (ver mi publicación anterior), y también una pequeña función para recuperar el ID de usuario de su inicio de sesión:
$my_user = ''; // can be $_GET['user'] or query_vars
$user = get_user_by('login', $my_user );
$user_id = $user->ID;
Obtener una URL de medios (por su ID)
Básico pero agradable, aquí hay una forma sencilla de obtener la URL de un archivo adjunto:
wp_get_attachment_url( $id );
Agrega contenido automáticamente a cada publicación
Este es un ejemplo de cómo agregar cualquier tipo de contenido a cada publicación de su instalación de WordPress. Por ejemplo, puede usar este método para agregar contenido solo al feed, en publicaciones que coincidan con algunos criterios, etc.
function add_post_content($content) {
if(!is_feed() && !is_home()) {
$content .= '<p>copyright '.date('Y').'</p>';
}
return $content;
}
add_filter('the_content', 'add_post_content');
Hacer eco de un código corto fuera del bucle
Este es uno de los mejores sin fragmentos, sin embargo, como me preguntan casi todos los días cómo hacerlo, aquí se muestra cómo mostrar el contenido de un código corto fuera del ciclo:
echo do_shortcode('[shortcode option1="value1" option2="value2"]');
Mostrar «tiempo humano»
Y para terminar la lista de fragmentos, una función rápida que te permite mostrar el tiempo como lo hace Twitter de Facebook: “hace 11 minutos”, “hace 1 hora”, “ayer”, etc.
echo human_time_diff(get_the_time('U'), current_time('timestamp')).' ago';