Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
WPB Cup
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Så här displayed du de senaste (fast)klistrade inläggen i WordPress

WordPress har den här mycket coola funktionen som kallas fast) klistrat inlägg. Tänk på fast)klistrade inlägg som utvalda inlägg för din blogg. När du markerar ett inlägg som klistrat inlägg visas det ovanför dina new posts, men bara om ditt theme tillåter det. I denna tutorial kommer vi att visa dig hur du visar de senaste (fast)klistrade inläggen i WordPress.

Latest Sticky Posts Demo

Note: Detta är en tutorial på mellannivå och kräver grundläggande kunskaper i HTML / CSS + kunskap om WordPress teman.

Tutorial på video

Subscribe to WPBeginner

Om du inte gillar videoklippet eller behöver fler instruktioner, fortsätt då att läsa.

Det första du behöver göra är att copy and paste det här code snippet i functions.php-filen i ditt theme eller i ett site-specifikt plugin.


function wpb_latest_sticky() { 

/* Get all sticky posts */
$sticky = get_option( 'sticky_posts' );

/* Sort the stickies with the newest ones at the top */
rsort( $sticky );

/* Get the 5 newest stickies (change 5 for a different number) */
$sticky = array_slice( $sticky, 0, 5 );

/* Query sticky posts */
$the_query = new WP_Query( array( 'post__in' => $sticky, 'ignore_sticky_posts' => 1 ) );
// The Loop
if ( $the_query->have_posts() ) {
	$return .= '<ul>';
	while ( $the_query->have_posts() ) {
		$the_query->the_post();
		$return .= '<li><a href="' .get_permalink(). '" title="'  . get_the_title() . '">' . get_the_title() . '</a><br />' . get_the_excerpt(). '</li>';
		
	}
	$return .= '</ul>';
	
} else {
	// no posts found
}
/* Restore original Post Data */
wp_reset_postdata();

return $return; 

} 
add_shortcode('latest_stickies', 'wpb_latest_sticky');

Koden ovan söker i WordPress database för att hämta de 5 senaste (fast)klistrade inläggen. Den visar sedan varje fast)klistrat inläggs rubrik med en länk i ett listformat. Vi har omslutit alltihop i en funktion och skapat en shortcode.

För att visa dina senaste sticky inlägg kan du nu använda shortcode [latest_stickies] i valfritt WordPress inlägg, page eller till och med i en text widget.

Om du gillar att använda shortcodes i en textwidget, måste du add to denna extra kodrad i ditt temas functions.php eller site-specifika plugin.

add_filter('widget_text', 'do_shortcode');

Detta snippet och denna funktion kan mycket väl användas i utvald slider, eller någon annan avancerad funktion som du gillar att visa på din webbplats. Detta snippet är mest inriktat på en WordPress-webbplats som har en customize homepage eller ett magasin stil utseende.

Det var all, vi hoppas att den här artikeln hjälpte dig att displayed senaste fast)klistrat inlägg på din WordPress blogg. Du kanske också vill kolla in vår tutorial om hur du lägger till ett utgångsdatum för (fast)klistrade inlägg i WordPress.

Om du gillade den här artikeln, vänligen prenumerera på vår YouTube-kanal för WordPress video tutorials. Du kan också hitta oss på Twitter och Google+.

Avslöjande: Vårt innehåll stöds av våra läsare. Det innebär att om du klickar på några av våra länkar, kan vi tjäna en provision. Se hur WPBeginner finansieras, varför det är viktigt, och hur du kan stödja oss. Här är vår editoriala process.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

Den ultimata WordPress-verktygslådan

Få GRATIS tillgång till vår verktygslåda - en samling WordPress-relaterade produkter och resurser som varje professionell användare bör ha!

Reader Interactions

8 kommentarerLämna ett svar

  1. umair

    very informative efforts made by you, this code works perfectly fine,
    i have a question that i have multiple categories & sub-categories, so i just want to make a sticky post to each category separately, and displayed on category list page where all posts of that specific category listed, like (Sports category->one sticky post – cooking recipes category -> one sticky post) etc

  2. Dom

    Thanks for getting me on the right track!!
    The code works great in getting the Title to show up where the short code is pasted.

    However, I was trying to find a method to display the entire post (all content, in stead of just a title or even excerpt) on a specific page.

    I decided to play with your code above in order to try and achieve this and finally managed…
    Although the title displays the same size as paragraph text, I’m sure I can fix that.

    Here’s what I changed…please let me know if you think there’s something I should reconsider lest the whole world explodes ;)

    I simply changed your get_the_excerpt() text to get_the_content() and this successfully pulled in the entire blog post into that page.
    In order to remove the bulleted indentation I then removed the ” ” ” ” tags, but had to leave the apostrophes in place, otherwise the page wouldn’t load.
    So in essence, where ” or ” was before, now there is only ” and so on.

    That’s all I changed and it mostly works like a charm for me…
    There are 2 issues I noticed:
    1: Sometimes it loads most of the post, but not always right down to the end, especially if the post is edited afterwards…anyone with suggestions to ensure this doesn’t happen?
    2: I’d love if the featured image would also show up, this would make it the ultimate flexible solution! Any thoughts here?

    Thanks again for the advice!

    Hope what I explained makes sense to anyone who wants to achieve the same as I was after.

  3. Achi Baten

    How can i show homepage post like you?

    • WPBeginner Support

      Our site uses a custom theme designed specifically for our own needs. However, you can find similar functionality in some magazine themes out there.

      Administratör

  4. richard

    Hello

    Thank you for your code. However i try to achieve something and i have 2 issues.

    I want to display only one sticky post on my home page and only the youtube video present on the content.

    ACtually i display the title and all the content of a post (include texts, pictures and videos).
    Second problem is that it display youtube as a link and not embed directly the video into my homepage.

    Thank you for your help

  5. Raviraj

    Hi,

    I have tried out with the code, It works fine when at least 1 post has been assigned as sticky post else when none of the posts are assigned a sticky, then it will display all latest 5 posts.

    So would be the condition to display only sticky posts, if there are no sticky posts assigned then It should not display anything.

    Thanks in advance

  6. AnastisSourgoutsidis

    ’caller_get_posts’ has been replaced by ’ignore_sticky_posts’ since v3.1 so I think its important to change your code to reflect that.
    Also, a) $post->ID is not needed in this instance of get_permalink() as you’ve setup the post data by calling $the_query->the_post(), and if for whatever reason you still want to include $post->ID, you should be global-ing it, i.e. global $post;

Lämna ett svar

Tack för att du väljer att lämna en kommentar. Tänk på att alla kommentarer modereras enligt våra policy för kommentarer, och din e-postadress kommer INTE att publiceras. Vänligen använd INTE nyckelord i namnfältet. Låt oss ha en personlig och meningsfull konversation.