På WPBeginner visar vi senast ändrade datum istället för det ursprungliga publiceringsdatumet för alla våra artiklar. Vi tycker att det är en dålig idé att ta bort datum från dina blogginlägg i WordPress. Om du använder senast ändrade datum, kanske du vill visa en lista över dina senaste inlägg på din site. I den här artikeln visar vi hur du visar en lista över senast uppdaterade posts i WordPress.
Varje gång du uppdaterar ett post, lagrar WordPress datum och tid för den uppdateringen i posts-tabellen som senast uppdaterade datum. Vi visar hur du skapar en custom WordPress sökning för att lista dina senaste uppdaterade artiklar.
Copy and paste den här koden i ett site-specifikt plugin eller i functions.php-filen
i ditt theme.
function wpb_lastupdated_posts() { // Query Arguments $lastupdated_args = array( 'orderby' => 'modified', 'ignore_sticky_posts' => '1' ); //Loop to display 5 recently updated posts $lastupdated_loop = new WP_Query( $lastupdated_args ); $counter = 1; $string .= '<ul>'; while( $lastupdated_loop->have_posts() && $counter < 5 ) : $lastupdated_loop->the_post(); $string .= '<li><a href="' . get_permalink( $lastupdated_loop->post->ID ) . '"> ' .get_the_title( $lastupdated_loop->post->ID ) . '</a> ( '. get_the_modified_date() .') </li>'; $counter++; endwhile; $string .= '</ul>'; return $string; wp_reset_postdata(); } //add a shortcode add_shortcode('lastupdated-posts', 'wpb_lastupdated_posts');
Det är all. Om du nu vill visa senast uppdaterade posts i ditt temas template-filer, kan du använda det så här:
<?php if (function_exists(wpb_lastupdated_posts)) : wpb_lastupdated_posts(); endif; ?>
För att visa senast uppdaterade inlägg i WordPress-poster, pages och widgets, kan du använda shortcode [lastupdated-posts]
.
Det finns många olika sätt att sortera dina artiklar i WordPress. Notis: Förutom stigande, fallande och slumpmässig order kan du också visa posts efter löptid. Med den här artikeln kan du nu visa posts efter senast ändrade tid.
Hur skulle du använda detta på din site? Visar du ursprungligt publicerat datum eller senast ändrade datum? Låt oss veta genom att lämna en comment under.
Syed Balkhi says
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Thomas Mirke says
Hi,
i modified the code from ”modified” to ”date”. Then i noticed, that $lastupdated_loop->have_posts() is limited to the number of last posts which is presented on the main page. What is to do to get an (independent) number of f.e. 50 last posts? Instead of 6 as stored in the wp settings?
WPBeginner Support says
You should be able to change from line 12 of the code the section ’&& $counter < 5' and change the 5 to the number of posts you want to show.
Administratör
Thomas Mirke says
Thank you, you can be sure, that this was the first thing i did. But notice that when you change the number in your code it is without result. Write f.e. ’&& $counter <20' – this does not work as there is f.e. 6 in the wordpress settings. So the question is how to overwrite those settings temporarily or to find any other solution that works without corresponding to the max-posts-per-page settings in wordpress.
WPBeginner Support says
With your theme overriding the query that way, you could try adding a comma to the end of line 6 and on the next line add ’posts_per_page’ => 20 to work on overriding your theme’s posts per page.
Mewaram jat says
I want to show the list of the Latest updated Products, instead of Posts. is it possible? How?
WPBeginner Support says
You would want to check with your eCommerce plugin for what options they would recommend as they normally have a widget or similar option.
Administratör
Aditya says
How can I list more than 5 , say 30 post, recently modified post ?
WPBeginner Support says
If you are using the code from this article, you would change the 5 to a 30 for that
Administratör
Sascha says
Thank you for the instructions. That was exactly what I was looking for! Finally I can show the latest updates in my sidebar.
rren says
How do you include only updated posts and exclude pages?
Gwénaël says
Hi,
It works well, but it does not respect the content permissions of the page. It turns all the content visible to anybody…
Des says
Hi,
I followed you ’How to Create a Custom WordPress Widget’, including ’Creating a Site-Specific WordPress Plugin’ and that works perfectly. Great tutorial as I now have the ’Hello world’ text displaying as a sidebar.
But this one has me completely stumped. I followed the tutorial as best I could but it just displays my ’Hello world’ text, never any list of updated posts.
Where in my custom plugin file do I put the function wpb_lastupdated_posts()? Where do I put the ’add_shortcode’ and where do I put the ’if (function_exists(wpb_lastupdated_posts)) : ’ statement?
Many thanks,
Des
Patrick Fortino says
Code works but displays only 1 post?
Gaurav Singh says
It is not working for genesis framework,
sagun khadka says
How can i keep thumbnail of post when i keep it in widget ?
Benedito Carneiro says
I created one site-specific plugin like you teached in your article What, Why, and How-To’s of Creating a Site-Specific WordPress Plugin, inserted function wpb_lastupdated_posts in the plugin, but had to add this line to the plugin to make text-widget shortcode work:
add_filter(’widget_text’, ’do_shortcode’);
WPBeginner Support says
Great, thanks for sharing.
Administratör
Aida says
Thanks much, this article saved me. Code is working perfectly….
Tommy says
Installed the code as stated. When using the short code- I add it to the bottom of the post. but when view the code- it puts the information on the top of the post. weird.
WPBeginner Support says
@Tommy, thanks for notifying us. We have updated the code. Please use the new code and it will resolve the issue.
Administratör
SebastienSerre says
Hello
Is it possible to have the last modificated page too?
Many thx
Marceli says
Same request here. I’m interested in listing recently updated Pages + showing the last_modified date. Ideally with some excerpt or number of characters from page.
jerik says
Great code, but is there anyway to get this exact same function but based on comments made by specific user (admin) and list the most recent comment made as the top of the threads in the list?
Thanks!
Alberto Aguilar says
Hi… great post…. Yet I was wondering if you could give me a hand on something: I need to take the picture and title of the last three published posts and arrange them in some kind of Gallery (Just to show the latest three published articles, Any idea if there’s a plugin for that, I assume I can use the code you just placed above, but Im not quite sure on the DB structure)
Thanks in advance… =)
Mark Devlin says
Hi, how do I add code to display the category and the user who made the update?
Norberto Vargas says
The second code?
Norberto Vargas says
Hello
By the way nice article, so I have a doubt.
Where to put this code:
””
thank you
WPBeginner Support says
In your template files where you want to display the list of last updated posts.
Administratör
Pierre Guimond says
I do not know how to change the office location address on my WordPress web site. Try as I may, I cannot reach it to change it. http://www.mastheadpa.ca I would appreciate simple and straight answer. I can do most of the upkeep but that address change eludes me and i have not seen the key in the WP information and tutorials. help.
WPBeginner Support says
@Pierre your office location is stored inside a widget. Inside your WordPress admin area, go to Appearance » Widgets. On your right hand column you will see a list of widgets currently in use on your site. Look for Footer Widget Area and there you will see Get in Touch widget which you can edit and save your changes.
Administratör
Steve says
Hi, love this article but I don’t quite get what is meant to be updated when you mention ’use it like this:
1
Which file is this?
Steve
WPBeginner Support says
Some users might want to display last updated posts into different templates of their WordPress themes. Those users can use this code to add it. Other users can use the shortcode to add it in their posts, pages, and widgets.
Administratör
erricgunawan says
Instead of using
$counter
for your loop, why don’t you just use the'posts_per_page'
attribute on theWP_Query
args ?Mine goes like this:
$lastupdated_args = array(
’orderby’ => ’modified’,
’ignore_sticky_posts’ => 1,
’posts_per_page’ => 5
);
Also, when I try the above code, it only give me one last modified post (not five as it should be).
Wonder why …
Mary says
I love your articles but this one is way over my head. Are there any plugins for this?
Sorry but I dont know the ”innards” of the website and have broken my site when I tried a few things.
It is a great idea though.Thanks for all you great work. Mary
Rudd says
The code above is actually a ’plugin’. Simply copy and paste the first code in functionality plugin. Then, there are two ways to display the list of posts, either using template tag or the easiest, using [lastupdated-posts] shortcode.
Tommy says
yes. but why does it add the content above the post wen using it as a short code?
tommy says
I want the content- then the shortcode info.