Los Extraordinariamente Útiles Hacks de WordPress Que Probablemente No Ha Usado Aún

29

Ahora, a pesar de que WordPress se haya vuelto «cotidiano», por el hecho de que cada segundo o tercer sitio web con el que te encuentras funciona con WordPress, siempre está el frecuente «¡cómo diablos hicieron esto!» momentos en los que se desplaza por el reino de WordPress.

A pesar de que WordPress es tan perseguido por la comunidad de desarrollo web, nunca ha dejado de llevar algunos trucos increíbles y sorpresas bajo la manga. Si bien hay un conjunto completo de complementos que nunca fallan en llevar la funcionalidad de un sitio web de WordPress más allá de los valores predeterminados y logran permitir que los webmasters den forma a su sitio web exactamente de la misma manera que ellos quieren, son los WordPress Hacks los que verdaderamente brindan a los webmasters una personalización. capacidad de los gustos que no se puede lograr con ningún complemento en absoluto.

Los hacks de WordPress están estableciendo un punto de apoyo sólido y ganando mucho terreno a medida que los webmasters que no son programadores buscan la ayuda de algunos desarrolladores web para inyectar algunas funciones en su sitio web que realmente los ayudarían a mejorar su funcionalidad y lo llevarían más allá de sus pares. Sin embargo, estamos facilitando su trabajo al ofrecerle algunos fragmentos de código que necesitaría (y desearía) para que su sitio web avance en la dirección que desea.

La siguiente lista trata sobre los trucos que puede implementar en su sitio web para que pueda presumir de capacidades personalizadas excepcionales y características que parecen bastante improbables de otra manera.

1 Habilitación de códigos cortos en widgets

Los widgets nunca dejan de darle a nuestro sitio web esa ventaja que siempre buscamos. Forman una parte indispensable de casi todos los sitios web de WordPress y, por lo tanto, una forma de mejorar su apariencia o sus características siempre es bienvenida, y eso es exactamente lo que deben hacer los códigos cortos. Usa un filtro para lo mismo:

add_filter( 'widget_text', 'do_shortcode' );
2 Hacer más visible la navegación superior

El menú en la barra de navegación superior de su sitio web probablemente se pueda ignorar, simplemente por su posición. Y es por eso que necesita moverlo y aquí es donde moverlo ayudará:

#top-nav {float: right;}
3 Mueve el menú de Navegación al Centro (Código cortesía: GitHub)

Existe la posibilidad de que haya decidido realinear su logotipo para colocarlo en el centro del encabezado, por lo que deberá mover el menú de navegación al centro para que no se vea fuera de lugar. Y así es como lo haces:

#navigation {
     position: relative;
}
 #main-nav {
     clear: left;
     float: left;
     list-style: none;
     margin: 0;
     padding: 0;
     position: relative;
     left: 50%;
     text-align: center;
}
 .nav li {
     display: block;
     float: left;
     list-style: none;
     margin: 0;
     padding: 0;
     position: relative;
     right: 50%;
}
 .nav li.hover, .nav li.hover {
     position: relative;
}
  
.nav li ul li {
     left: 0;
4 Retrasar la publicación de su publicación en las fuentes RSS

No es raro cometer errores al escribir una publicación, pero cuando las publicaciones ya se enviaron a RSS, los errores menores pueden resultar bastante costosos. Y aquí es cuando retrasar el proceso viene al rescate.

Ahora, puede asegurarse de que las publicaciones no vayan a la fuente RSS tan pronto como las publique en su blog. Todo lo que necesita hacer es agregar este fragmento de código al archivo functions.php en el backend de su sitio web:

function publish_later_on_feed($where) {
global $wpdb;
if (is_feed()) {
$time_now = gmdate('Y-m-d H:i:s');
$time_delay = '15'; // integer
$time_span = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
$where = " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$time_now') > $time_delay ";
}
return $where;
}
add_filter('posts_where', 'publish_later_on_feed');
5 ¿Ya no quieres los avatares circulares? Hazlos Cuadrados

El tema que ha elegido para su sitio web de WordPress puede estar modificando automáticamente las imágenes del avatar para presentarlas en forma circular. Pero muchos webmaster prefieren que sus avatares se muestren en forma cuadrada. Por lo mismo, este código de GitHub funciona excepcionalmente bien:

#post-author .profile-image img, #comments .avatar img {
border-radius: 0;
-moz-border-radius: 0;
-webkit-border-radius: 0;
}
6 Deje que su fuente RSS contenga la imagen destacada de la publicación

El uso de imágenes en sus publicaciones siempre le da un empujón adicional entre su audiencia y los convence para leer y compartir más entre sus círculos. Y cuando puede usar la imagen destacada de la publicación en sus fuentes RSS, mejora aún más el alcance de la publicación haciéndola visualmente más atractiva:

add_filter('the_content_feed', 'rss_post_thumbnail');
function rss_post_thumbnail($content) {
global $post;
if( has_post_thumbnail($post->ID)) $content = '
'. get_the_post_thumbnail($post->ID, 'thumbnail'). '

'. $content; return $content; }
7 Eliminar el título de una página en particular

Si bien existen herramientas que facilitan la eliminación de títulos de todas las páginas del sitio, a veces, solo desea eliminarlos de páginas particulares. Y aquí está el código que necesita para eso: simplemente reemplace «abcd» con el número de identificación de la página para cualquier publicación:

.page-id-xxxx .title {
display: none;
}
8 ¿No quieres HTML en los comentarios? Continúe y desactívelo

El HTML en la sección de comentarios puede generar una gran cantidad de spam, lo que eventualmente podría tener serias repercusiones en su sitio web. Y es por eso que deshabilitar el HTML en la sección de comentarios es tan importante para mantener su sitio web libre de spam. Para hacerlo, agregue este fragmento de código en el archivo functions.php:

//As soon as someone comments
function plc_comment_post( $incoming_comment) {
    // convert everything in a comment to display literally
    $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
    // the one exception is single quotes, which cannot be #039; because WordPress marks it as spam
    $incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );
    return( $incoming_comment );
}
// This will occur before a comment is displayed
function plc_comment_display( $comment_to_display) {
    // Put the single quotes back in
    $comment_to_display = str_replace( ''', "'", $comment_to_display );
    return $comment_to_display;
}
add_filter( 'preprocess_comment', 'plc_comment_post', '', 1 );
add_filter( 'comment_text', 'plc_comment_display', '', 1 );
add_filter( 'comment_text_rss', 'plc_comment_display', '', 1 );
add_filter( 'comment_excerpt', 'plc_comment_display', '', 1 );
// This stops WordPress from trying to automatically make hyperlinks on text:
remove_filter( 'comment_text', 'make_clickable', 9 );
9 Cuando un usuario busque una determinada publicación en su sitio, simplemente llévelo directamente a la publicación completa

Es posible que no lo hayas considerado demasiado necesario, pero si los usuarios que buscan publicaciones específicas acceden directamente a la publicación completa en lugar de a una vista en miniatura con un extracto, lo agradecerán. No les obliga a seguir navegando y, por lo tanto, mejora considerablemente la experiencia del usuario.

add_action('template_redirect', 'redirect_single_post');
function redirect_single_post() {
    if (is_search()) {
        global $ks29so_query;
        if ($ks29so_query->post_count == 1 && $ks29so_query->max_num_pages == 1) {
            ks29so_redirect( get_permalink( $ks29so_query->posts['0']->ID) );
            exit;
        }
    }
}
10 Mostrar la fecha de copyright más precisa y actual

Los derechos de autor son una parte indispensable de cualquier sitio web que contenga una gran cantidad de información útil que el webmaster no desea que los otros generadores de aleatorización de la web copien. Esta es la razón por la que es importante mostrar la información de derechos de autor de forma precisa y sincronizada con el año en curso. El siguiente fragmento de código le permite actualizar constantemente la información de derechos de autor automáticamente:

function comicpress_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© ". $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-'. $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}
11 Redirigir a los usuarios después de iniciar sesión

Una vez que cualquier usuario inicia sesión en su sitio, él o ella pueden ser redirigidos fácilmente a otra URL de su elección. Todo lo que necesita es este fragmento de código en el archivo functions.php:

user_level == 0)
{
ks29so_redirect( home_url() ); exit;
}
//If login user role is Contributor
else if ($current_user->user_level > 1)
{
ks29so_redirect( home_url() ); exit;
}
//If login user role is Editor
else if ($current_user->user_level >8)
{
ks29so_redirect( home_url() ); exit;
}
// For other roles
else
{
$redirect_to = 'http://google.com/';
return $redirect_to;
}
}
add_action('admin_init','redirect_user_on_role');
 
?>
12 Deje que el encabezado muestre algunos widgets personalizados

El encabezado de su sitio web es una excelente área publicitaria donde puede mostrar anuncios realmente notables. Sin embargo, una cosa común que se observa es que los administradores del sitio no tienen mucho control sobre cómo desean mostrar los elementos en el encabezado y esto conduce a la falta de flexibilidad.

Lo que el administrador quiere es la capacidad de personalización que le permita agregar lo que quiera a la derecha del logotipo, y las siguientes líneas de código les permiten hacer exactamente eso:

if (function_exists('register_sidebar')) {
register_sidebar(array(
 'name' => 'Header Widget',
 'id' => 'header-widget',
 'description' => 'This is a widgetized area in the right side of the header.',
 'before_widget' => '
', 'after_widget' => '
', 'before_title' => '

', 'after_title' => '

' )); add_action( 'woo_header_inside', 'custom_canvas_header' ); function custom_canvas_header() { ?>

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More