Vinculando uma entrada do menu WordPress à última postagem

Suponhamos que você tenha um menu gerado pelo WordPress e deseja vincular uma das entradas à última postagem do seu blog.

insira este código no arquivo functions.php do seu tema

// Front end only, don't hack on the settings page
if ( ! is_admin() ) {
add_filter
( 'wp_get_nav_menu_items', 'replace_placeholder_nav_menu_item_with_latest_post', 10, 3 );
}

// Replaces a custom URL placeholder with the URL to the latest post
function replace_placeholder_nav_menu_item_with_latest_post( $items, $menu, $args ) {

// Loop through the menu items looking for placeholder(s)
foreach ( $items as $item ) {

// Is this the placeholder we're looking for?
if ( '#latestpost' != $item->url )
continue;

// Get the latest post
$latestpost
= get_posts( array(
'numberposts' => 1,
) );

if ( empty( $latestpost ) )
continue;

// Replace the placeholder with the real URL
$item
->url = get_permalink( $latestpost[0]->ID );
}

// Return the modified (or maybe unmodified) menu items array
return $items;
}

agora certifique-se de ter pelo menos um item de menu com um link apontando para “#latestpost”: esse url será sobrescrito pelo último código.

(obrigado a Alex http://www.viper007bond.com )