{"id":231481,"date":"2023-01-05T10:29:00","date_gmt":"2023-01-05T07:29:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231481"},"modified":"2022-12-25T21:40:02","modified_gmt":"2022-12-25T18:40:02","slug":"sortera-wordpress-inlaegg-efter-datum","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/sv\/sortera-wordpress-inlaegg-efter-datum\/","title":{"rendered":"Sortera WordPress-inl\u00e4gg efter datum"},"content":{"rendered":"<p><strong>TL;DR:<\/strong> Om du letar efter ett enkelt s\u00e4tt att sortera WordPress-inl\u00e4gg efter datum (vare sig det \u00e4r fallande eller stigande) i administrationsomr\u00e5det utan att anv\u00e4ndare klickar p\u00e5 kolumnrubriken Datum, kan du g\u00f6ra det genom att anv\u00e4nda <code>pre_get_posts<\/code>filtret som ger en referens till instansen <code>WP_Query<\/code>som k\u00f6rs p\u00e5 sidan.<\/p>\n<p>F\u00f6r exempel i kod p\u00e5 hur man g\u00f6r det, kolla in resten av artikeln.<\/p>\n<h2>Sortera WordPress-inl\u00e4gg<\/h2>\n<p>Den h\u00e4r artikeln \u00e4r skriven s\u00e5 att den f\u00f6ruts\u00e4tter att du \u00e4r inst\u00e4lld i klassbaserat. Detta betyder att upps\u00e4ttningen f\u00f6r filtret \u00e4r definierad i en funktion som t.ex. <code>init<\/code>och den anropar ett <code>public<\/code>funktionsnamn p\u00e5 klassen som <code>sort_articles_by_recent_time<\/code>.<\/p>\n<p>Slutligen definierar den en prioritet f\u00f6r <code>10<\/code>och specificerar funktionen som kommer att acceptera ett enda argument (som \u00e4r en instans av <code>WP_Query<\/code>.<\/p>\n<p>L\u00e4gg f\u00f6rst till f\u00f6ljande filter:<\/p>\n<pre><code>add_action( 'pre_get_posts', [ $this, 'sort_articles_by_recent_time' ], 10, 1 );<\/code><\/pre>\n<p>L\u00e4gg sedan till f\u00f6ljande funktion:<\/p>\n<pre><code>public function sort_articles_by_recent_time( WP_Query $query) {\n  global $pagenow;\n  if (! is_admin() || 'edit.php' !== $pagenow) {\n    return;\n  }\n\n  $query-&gt;set( 'orderby', 'date' );\n  $query-&gt;set( 'order', 'desc' );\n }<\/code><\/pre>\n<p>S\u00e5 h\u00e4r fungerar det:<\/p>\n<ol>\n<li>Notera de f\u00f6rsta villkorliga kontrollerna om vi inte \u00e4r i administrationsomr\u00e5det eller om vi inte \u00e4r p\u00e5 <code>edit.php<\/code>sidan (som \u00e4r postlistningssidan), l\u00e4mnar vi helt enkelt funktionen. Detta \u00e4r en vaktklausul eller ett tidigt \u00e5terl\u00e4mnande.<\/li>\n<li>Om vi \u200b\u200buppfyller b\u00e5da dessa kriterier kommer vi att uppdatera fr\u00e5gan s\u00e5 att den ordnar till inl\u00e4gg efter datum i fallande ordning. Detta inneb\u00e4r att de senaste datumen alltid kommer att listas \u00f6verst.<\/li>\n<\/ol>\n<p>Detta tar inte h\u00e4nsyn till inl\u00e4ggets status (s\u00e5 om det \u00e4r ett <code>draft<\/code>eller ett inl\u00e4gg med <code>publish<\/code>statusen spelar det ingen roll). Vidare kommer detta att f\u00f6rhindra att anv\u00e4ndare beh\u00f6ver klicka p\u00e5 kolumnrubriken Datum f\u00f6r att sortera resultaten efter behov om detta \u00e4r n\u00e5got du s\u00e5 \u00f6nskar i din l\u00f6sning.<\/p>\n<h3>Referenser<\/h3>\n<ul>\n<li><code>[pre_get_posts](https:\/\/developer.wordpress.org\/reference\/hooks\/pre_get_posts\/)<\/code><\/li>\n<li><code>[WP_Query](https:\/\/developer.wordpress.org\/reference\/classes\/wp_query\/)<\/code><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Inspelningsk\u00e4lla:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ett enkelt s\u00e4tt att sortera WordPress-inl\u00e4gg efter datum (vare sig det \u00e4r fallande eller stigande) i administrationsomr\u00e5det utan att anv\u00e4ndarna klickar p\u00e5 kolumnrubriken Datum<\/p>\n","protected":false},"author":1,"featured_media":158594,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[838,848,901,807,868],"tags":[1173],"class_list":["post-231481","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-guide-foer-nyboerjare","category-handledningar","category-koda","category-php-9","category-wordpress-9","tag-affiai-sv"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/231481","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/comments?post=231481"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/231481\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media\/158594"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media?parent=231481"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/categories?post=231481"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/tags?post=231481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}