Home > Article > CMS Tutorial > How to create dynamic pinned articles for wordpress
#How to create dynamic pinned articles for wordpress?
The function of a pinned article is to attract readers' attention for a long time, and it can indicate the site's introduction, copyright statement, exchange principles of friendly links, etc.; this article will introduce how to create a dynamic pinned article for WordPress, which requires Friends who know more about it can refer to the following
recommendation: "wordpress tutorial"
"Sticky Posts" has been added since WordPress 2.7 . The function of the pinned article is to attract readers' attention for a long time. It can indicate the introduction of the site, copyright statement, exchange principles of friendly links, etc. But staying unchanged for too long can also cause aversion to reading. This article will introduce how to create dynamic pinned articles for WordPress.
From the various discussions about multiple loops in the wordpress help forums, I thought of a method of using two loops. One is used to query and display only articles in a certain category. The other is used to query all articles in all categories. The first query is copied from the codex and is easy to understand:
The code is as follows:
$my_query = new WP_Query('category_name=frontpage&showposts=1'); while ($my_query->have_posts()) : $my_query->the_post(); $do_not_duplicate = $post->ID;
The meaning of the above code is that the variable my_query is assigned the value of the query category name frontpage Results for articles and get only one article. The key point is in the last part, assigning the variable do_not_duplicate the ID value of the returned individual article. We need this value in the next step.
The following piece of code is very important and standard and can be found in many topics. It can get all logs:
The code is as follows:
if (have_posts()) : while (have_posts()) : the_post(); //do stuff like format each postendwhile;
This code gets all the logs and displays them in the format of the //do stuff line (depending on the template). If you just write the code like this, it will happen that the article you selected (the pinned article) is displayed twice (once in the pinned area and once in all other article areas). It's not good to display like this, so the do_not_duplicate function is used here. Added to an if statement to prevent the specified article from being displayed twice. The following is the code:
The code is as follows:
if (have_posts()) : while (have_posts()) : the_post(); if( $post->ID == $do_not_duplicate ) continue;//do stuff like format each post endwhile;
The second if statement in the code means to get all the logs, and when the ID value of an article is found to be equal to the value of do_not_duplicate The execution is interrupted (continue statement), otherwise all other articles are displayed according to the format of //do stuff line. Remember, the article represented by the do_not_duplicate function value has already been displayed.
So what do you get when you put everything together? A dynamic pinned article! And the best part is that when the pinned article is replaced by a new one, the previous article will be displayed in the area of all articles below (depending on how many articles you choose to display and how often the articles are published).
The above is the detailed content of How to create dynamic pinned articles for wordpress. For more information, please follow other related articles on the PHP Chinese website!