{"id":7025,"date":"2023-03-04T15:38:37","date_gmt":"2023-03-04T20:38:37","guid":{"rendered":"https:\/\/themespress.ca\/?p=7025"},"modified":"2023-03-05T18:41:41","modified_gmt":"2023-03-05T23:41:41","slug":"create-a-shortcode-for-modified-posts","status":"publish","type":"post","link":"https:\/\/themespress.ca\/en\/create-a-shortcode-for-modified-posts\/","title":{"rendered":"Create a Shortcode for Modified Posts"},"content":{"rendered":"<div class=\"wpb-content-wrapper\"><div class=\"vc_row wpb_row vc_row-fluid\"><div class=\"wpb_column vc_column_container vc_col-sm-12\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p>With this tutorial, we will create a shortcode that will fetch the most recent posts or post types.<\/p>\n<p>In our example, we will fetch the posts edited in the last 15 days.<\/p>\n<p>However, we will <strong>display all published posts in the last 15 days<\/strong>. Afterward, we will tweak <strong>our query to adapt it to edited\/modified posts<\/strong>.<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<h2 style=\"text-align: left\" class=\"vc_custom_heading vc_do_custom_heading\" >Displaying posts published in the last 15 days<\/h2><div id=\"ts-enlighterjs-container-1236255\" class=\"ts-enlighterjs-container-single-enabled  \" style=\"width: 100%;  margin-top: 0px; margin-bottom: 0px;\" data-enlighter-doubleclick=\"true\" data-enlighter-windowbutton=\"true\" data-enlighter-windowtext=\"New Window\" data-enlighter-rawbutton=\"true\" data-enlighter-rawtext=\"RAW Code\" data-enlighter-infobutton=\"false\" data-enlighter-infotext=\"EnlighterJS\" data-enlighter-indent=\"2\"><pre id=\"ts-enlighterjs-pre-1236255\" class=\"\" style=\"white-space: pre-wrap; height: 100%; margin: 0; padding: 0;\" data-enlighter-language=\"php\" data-enlighter-theme=\"enlighter\" data-enlighter-group=\"\" data-enlighter-title=\"\" data-enlighter-linenumbers=\"true\" data-enlighter-lineoffset=\"1\" data-enlighter-highlight=\"\">\/**************************** Last Posts 15 days ********************************\/\nadd_shortcode( &#039;lastaddoposts&#039;, &#039;addo_list_posts_publied&#039; );\nfunction addo_list_posts_publied(){ \n\t$date_range = strtotime ( &#039;-15 day&#039; );\n\t\/\/ Custom WP query query\n\t$args = array(\n\t\t&#039;post_type&#039;         =&gt; array(&#039;post&#039;),\n\t\t&#039;post_status&#039;       =&gt; &#039;publish&#039;,\n\t\t&#039;order&#039;             =&gt; &#039;DESC&#039;, \n\t\t&#039;date_query&#039;        =&gt; array(\n\t\t\tarray(\n\t\t\t\t&#039;after&#039; =&gt; array(\n\t\t\t\t\t&#039;year&#039;  =&gt; date(&#039;Y&#039;, $date_range ),\n\t\t\t\t\t&#039;month&#039; =&gt; date(&#039;m&#039;, $date_range ),\n\t\t\t\t\t&#039;day&#039;   =&gt; date(&#039;d&#039;, $date_range ),\n\t\t\t\t),\n\t\t\t)\n\t\t)\n\t);\n\t$query = new WP_Query( $args );\n\n    echo &#039;&lt;ul style=&quot;padding:0&quot;&gt;&#039;;\n\t\tif ( $query-&gt;have_posts() ) {\n\t\t\twhile ( $query-&gt;have_posts() ) { \n\t\t\t$query-&gt;the_post();\n\t\t\techo &#039;&lt;div class=&quot;col-md-3&quot; style=&quot;display:inline-block;&quot;&gt;&#039;;\n\t\t\t\techo &#039;&lt;li style=&quot;position:relative&quot;&gt;&#039;;\t\n\t\t\t\t\techo &#039;&lt;a style=&quot;display:block;background-color: #490b3d;padding: 10px 25px;color: white;&quot; href=&quot;&#039; . get_the_permalink() . &#039;&quot;&gt;&#039;;\n\t\t\t\t\techo the_title();\n\t\t\t\t\techo&#039;&lt;\/a&gt;&#039;;\n\t\t\t\t\techo &#039;&lt;span style=&quot;padding:0px 5px;background:#f1b814;color:white;position:absolute;top:-10px;right:0;font-size:11px&quot;&gt;&#039; . get_the_time(&#039;d-m-Y&#039;) . &#039;&lt;\/span&gt;&#039;;\n\t\t\t\techo &#039;&lt;\/li&gt;&#039;;\n\t\t\techo &#039;&lt;\/div&gt;&#039;;\n\t\t\t}\n\t\t}\n\telse {\n\t\techo &#039;Il n&amp;#39;y a eu aucune publication ces derni&egrave;res semaines&#039;;\n\t}\n\twp_reset_postdata();\n    echo &#039;&lt;\/ul&gt;&#039;;\t\t\n}<\/pre><\/div><h2 style=\"text-align: left\" class=\"vc_custom_heading vc_do_custom_heading\" >Shortcode within pages<\/h2><div id=\"ts-enlighterjs-container-3907387\" class=\"ts-enlighterjs-container-single-enabled  \" style=\"width: 100%;  margin-top: 0px; margin-bottom: 0px;\" data-enlighter-doubleclick=\"true\" data-enlighter-windowbutton=\"true\" data-enlighter-windowtext=\"New Window\" data-enlighter-rawbutton=\"true\" data-enlighter-rawtext=\"RAW Code\" data-enlighter-infobutton=\"false\" data-enlighter-infotext=\"EnlighterJS\" data-enlighter-indent=\"2\"><pre id=\"ts-enlighterjs-pre-3907387\" class=\"ts-enlighterjs-pre-nohighlight\" style=\"\" data-enlighter-language=\"no-highlight\" data-enlighter-theme=\"enlighter\" data-enlighter-group=\"\" data-enlighter-title=\"\" data-enlighter-linenumbers=\"true\" data-enlighter-lineoffset=\"1\" data-enlighter-highlight=\"\">[lastaddoposts]<\/pre><\/div><h2 style=\"text-align: left\" class=\"vc_custom_heading vc_do_custom_heading\" >Shortcode within templates<\/h2><div id=\"ts-enlighterjs-container-6735908\" class=\"ts-enlighterjs-container-single-enabled  \" style=\"width: 100%;  margin-top: 0px; margin-bottom: 0px;\" data-enlighter-doubleclick=\"true\" data-enlighter-windowbutton=\"true\" data-enlighter-windowtext=\"New Window\" data-enlighter-rawbutton=\"true\" data-enlighter-rawtext=\"RAW Code\" data-enlighter-infobutton=\"false\" data-enlighter-infotext=\"EnlighterJS\" data-enlighter-indent=\"2\"><pre id=\"ts-enlighterjs-pre-6735908\" class=\"ts-enlighterjs-pre-nohighlight\" style=\"\" data-enlighter-language=\"no-highlight\" data-enlighter-theme=\"enlighter\" data-enlighter-group=\"\" data-enlighter-title=\"\" data-enlighter-linenumbers=\"true\" data-enlighter-lineoffset=\"1\" data-enlighter-highlight=\"\">&lt;?php echo do_shortcode( &#039;[lastaddoposts]&#039; ); ?&gt;<\/pre><\/div>\n\t<div class=\"wpb_text_column wpb_content_element\" >\n\t\t<div class=\"wpb_wrapper\">\n\t\t\t<p>We will now adapt our query and display <strong>the last modified posts<\/strong> within the last <strong>15 days<\/strong>.<\/p>\n\n\t\t<\/div>\n\t<\/div>\n<h2 style=\"text-align: left\" class=\"vc_custom_heading vc_do_custom_heading\" >Displaying posts modified in the last 15 days<\/h2><div id=\"ts-enlighterjs-container-1238755\" class=\"ts-enlighterjs-container-single-enabled  \" style=\"width: 100%;  margin-top: 0px; margin-bottom: 0px;\" data-enlighter-doubleclick=\"true\" data-enlighter-windowbutton=\"true\" data-enlighter-windowtext=\"New Window\" data-enlighter-rawbutton=\"true\" data-enlighter-rawtext=\"RAW Code\" data-enlighter-infobutton=\"false\" data-enlighter-infotext=\"EnlighterJS\" data-enlighter-indent=\"2\"><pre id=\"ts-enlighterjs-pre-1238755\" class=\"\" style=\"white-space: pre-wrap; height: 100%; margin: 0; padding: 0;\" data-enlighter-language=\"php\" data-enlighter-theme=\"enlighter\" data-enlighter-group=\"\" data-enlighter-title=\"\" data-enlighter-linenumbers=\"true\" data-enlighter-lineoffset=\"1\" data-enlighter-highlight=\"\">\/**************************** Last Posts modified 15 days ********************************\/\nadd_shortcode( &#039;postsaddomodified&#039;, &#039;addo_list_posts_modified&#039; );\nfunction addo_list_posts_modified() {\n\t\/\/ query args\n    $args = array(\n\t\t&#039;posts_per_page&#039;        =&gt; &#039;10&#039;,\n\t\t&#039;post_type&#039;             =&gt; &#039;post&#039;,\n\t\t&#039;post_status&#039;           =&gt; &#039;publish&#039;,\n\t\t&#039;orderby&#039;               =&gt; &#039;modified&#039;,\n\t\t&#039;order&#039;                 =&gt; &#039;DESC&#039;,\n\t\t&#039;ignore_sticky_posts&#039;   =&gt; &#039;1&#039;,\n\t\t&#039;caller_get_posts&#039;      =&gt; 1,\n\t\t&#039;date_query&#039; =&gt; array(\n        &#039;relation&#039;   =&gt; &#039;OR&#039;,\n        array(\n            &#039;column&#039;  =&gt; &#039;post_date&#039;,\n            &#039;after&#039;   =&gt; &#039;-1 days&#039;\n        ),\n        array(\n            &#039;column&#039;  =&gt; &#039;post_modified&#039;,\n            &#039;after&#039;   =&gt; &#039;-15 days&#039;\n        )\n    )\n    );\n\n    \/\/ query\n    $updated = new WP_Query($args);\n\n?&gt;\n&lt;ul style=&quot;padding:0&quot;&gt;\n\t&lt;?php if ( $updated-&gt;have_posts() ) : ?&gt;\n\t&lt;?php while ( $updated-&gt;have_posts() ) : $updated-&gt;the_post(); ?&gt;\n\t&lt;div class=&quot;col-md-3&quot; style=&quot;display:inline-block;padding:0px&quot;&gt;\n\t\t&lt;li style=&quot;position:relative&quot;&gt;\t\n\t\t\t&lt;a style=&quot;display:block;background-color: #490b3d;padding: 10px 25px;color: white;margin:0 0 10px 0&quot; href=&quot;https:\/\/famillebreboin.ca\/photos\/&quot;&gt;\n\t\t\t   &lt;?php the_title(); ?&gt;\n\t\t\t&lt;\/a&gt;\n\t\t\t&lt;span style=&quot;padding:0px 5px;background:#f1b814;color:white;position:absolute;top:-10px;right:0;font-size:11px&quot;&gt;\n\t\t\t&lt;?php get_the_time(&#039;d-m-Y&#039;); ?&gt;\n\t\t\t&lt;\/span&gt;\n\t\t&lt;\/li&gt;\n\t&lt;\/div&gt;\n\t&lt;?php endwhile; ?&gt;\n\t&lt;?php wp_reset_postdata(); ?&gt;\n\t&lt;?php else : ?&gt;\n\t\t&lt;?php echo &#039;Il n&amp;#39;y a eu aucun album mis &agrave; jour&#039;;  ?&gt;\n\t&lt;?php endif; ?&gt;\n&lt;\/ul&gt;\n&lt;?php }<\/pre><\/div><h2 style=\"text-align: left\" class=\"vc_custom_heading vc_do_custom_heading\" >Shortcode within pages<\/h2><div id=\"ts-enlighterjs-container-2165311\" class=\"ts-enlighterjs-container-single-enabled  \" style=\"width: 100%;  margin-top: 0px; margin-bottom: 0px;\" data-enlighter-doubleclick=\"true\" data-enlighter-windowbutton=\"true\" data-enlighter-windowtext=\"New Window\" data-enlighter-rawbutton=\"true\" data-enlighter-rawtext=\"RAW Code\" data-enlighter-infobutton=\"false\" data-enlighter-infotext=\"EnlighterJS\" data-enlighter-indent=\"2\"><pre id=\"ts-enlighterjs-pre-2165311\" class=\"ts-enlighterjs-pre-nohighlight\" style=\"\" data-enlighter-language=\"no-highlight\" data-enlighter-theme=\"enlighter\" data-enlighter-group=\"\" data-enlighter-title=\"\" data-enlighter-linenumbers=\"true\" data-enlighter-lineoffset=\"1\" data-enlighter-highlight=\"\">[postsaddomodified]<\/pre><\/div><h2 style=\"text-align: left\" class=\"vc_custom_heading vc_do_custom_heading\" >Shortcode within templates<\/h2><div id=\"ts-enlighterjs-container-8363721\" class=\"ts-enlighterjs-container-single-enabled  \" style=\"width: 100%;  margin-top: 0px; margin-bottom: 0px;\" data-enlighter-doubleclick=\"true\" data-enlighter-windowbutton=\"true\" data-enlighter-windowtext=\"New Window\" data-enlighter-rawbutton=\"true\" data-enlighter-rawtext=\"RAW Code\" data-enlighter-infobutton=\"false\" data-enlighter-infotext=\"EnlighterJS\" data-enlighter-indent=\"2\"><pre id=\"ts-enlighterjs-pre-8363721\" class=\"ts-enlighterjs-pre-nohighlight\" style=\"\" data-enlighter-language=\"no-highlight\" data-enlighter-theme=\"enlighter\" data-enlighter-group=\"\" data-enlighter-title=\"\" data-enlighter-linenumbers=\"true\" data-enlighter-lineoffset=\"1\" data-enlighter-highlight=\"\">&lt;?php echo do_shortcode( &#039;[postsaddomodified]&#039; ); ?&gt;<\/pre><\/div><\/div><\/div><\/div><\/div>\n<\/div>","protected":false},"excerpt":{"rendered":"With this tutorial, we will create a shortcode that will fetch the most recent posts or post types. In our example, we will fetch the posts edited in the last<div class=\"read-more\"><a class=\"btn button-secondary\" href=\"https:\/\/themespress.ca\/en\/create-a-shortcode-for-modified-posts\/\">Read More<\/a><\/div>","protected":false},"author":81,"featured_media":7024,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[283],"tags":[],"class_list":["post-7025","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-tutorials"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/posts\/7025","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/users\/81"}],"replies":[{"embeddable":true,"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/comments?post=7025"}],"version-history":[{"count":0,"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/posts\/7025\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/media\/7024"}],"wp:attachment":[{"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/media?parent=7025"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/categories?post=7025"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themespress.ca\/en\/wp-json\/wp\/v2\/tags?post=7025"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}