Pergunta

Is there a plugin or a hack such that I can make short updates similar to twitter's on my own wordpress blog?

Perhaps making use of a custom post type or something on those lines?

What i'm trying to achieve is to create short (150 character limit) posts different to the regular posts on the blog. Once these short updates are published, i'd like them to appear in a custom div tags on the home page.

In short, same functionality as twitter but just on your blog.

Thanks

Foi útil?

Solução

If you just want to add a character counter for your excerpt, use this function and js.

The Php for your functions.php

// This goes in your functions.php file inside your themes folder

// Add theme support for post formats
add_theme_support( 'post-formats', array( 'aside', 'status' ) );

// Add the character counter to the admin UI
function wpse16854_char_count_script( $page ) 
{
  $post = get_post( $_GET['post'] );
  $post_type = $post->post_type;
  if ( 'page' !== $post_type )
    if ( 'post.php' === $page OR 'post-new.php' === $page )
      wp_enqueue_script( 'excerpt-counter', get_template_directory_uri().'/excerpt-counter.js', array('jquery') );
}
add_action( 'admin_enqueue_scripts', 'wpse16854_char_count_script' );

The JavaScript

// This should be saved inside a file named 'excerpt-counter.js' inside your themes folder
jQuery( document ).ready( function($)
{
    $( "#excerpt" ).after( "<p style=\"text-align:center;\"><small>Excerpt length: </small><input type=\"text\" value=\"0\" maxlength=\"3\" size=\"3\" id=\"excerpt_counter\" readonly=\"\"> <small>character(s).</small></p>" );
    $( "#ilc_excerpt_counter" ).val( $("#excerpt").val().length );
    $( "#excerpt" ).keyup( function() 
    {
        $( "#ilc_excerpt_counter" ).val( $("#excerpt").val().length );
    } );
} );

The Loop

Then just use the post format "status" (or aside or whatever) when publishing a "twitter like" post and place the following inside your loop:

// place the following inside your loop
if ( has_post_format( 'status' ) OR 'status' == get_post_format( $GLOBALS['post']->ID ) OR is_object_in_term( $GLOBALS['post']->ID, 'post_format', 'status' ) )
{
    the_excerpt();
}
else 
{
    the_content(); // or however you want to treat normal posts
}

Outras dicas

WordPress now has a post format called status which is meant to be used for short status updates.

You can see a lot of information about how to use these standard post formats in the Codex page on Post Formats

Licenciado em: CC-BY-SA com atribuição
Não afiliado a wordpress.stackexchange
scroll top