✅ WEB- ja WordPress -uutiset, -teemat, -laajennukset. Täällä jaamme vinkkejä ja parhaita verkkosivustoratkaisuja.

WordPress mukautetun viestityypin sivutus

17

Yleisesti ottaen, kun työskentelen mukautetun viestityypin sivutuksen kanssa, se tehdään kirjoittamalla mukautettu kysely WP_Query-komennolla ja kutsumalla sitten wp_reset_postdata() silmukan lopussa .

Uskon edelleen, että tällä on paikkansa, mutta on olemassa yksinkertaisempi ratkaisu, jonka voit ehkä toteuttaa käyttämällä tiettyä WordPressin tarjoamaa koukkua.

Tarkoitan erityisesti pre_get_posts- koukkua. Koodiviittauksessa voit nähdä, että tämä on määritelty seuraavasti:

Käynnistyy, kun kyselymuuttujaobjekti on luotu, mutta ennen varsinaisen kyselyn suorittamista.

Ja koska kysely sisältää paljon tietoa, voimme jatkaa sen avulla määrittääksemme, haluammeko muokata tarvittavia argumentteja sivutuksen käsittelemiseksi.

Tällä tarkoitan, että meidän on tarkasteltava post_type- ominaisuutta ja posts_per_page -arvoa. Voit tehdä tämän toteuttamalla sen seuraavalla tavalla :

<?php

use WP_Query;

add_action('pre_get_posts', __NAMESPACE__. 'customPostTypePagination');
/**
 * If we're on the 'acme-post-type' page, then adjusts pagination so there are only two posts per page. This will 
 * affect pagination so we can use built-in pagination links to easily page through the content.
 *
 * @param WP_Query the instance of the query object that contains information to populate the template.
 *
 * @return WP_Query an unmodified version of the query object or a modified version if we're on the acme post-type.
 */
function customPostTypePagination(WP_Query $query)
{
  if (isset($query->query['post_type']) && 'acme-post-type' == $query->query['post_type']) {
    $query->set('posts_per_page', 2);
  }
}

Yllä oleva koodi ei ole oliosuuntautunut (jos olisi, perustaisin tilaajan ja luokan, joka vastaa funktion logiikan käsittelystä), mutta näet kuinka se asetetaan perusmuodossaan.

Joten jos käytät mukautetun viestityypin sivutusta etkä halua käsitellä mukautetun kyselyn määrittämisen eri puolia, tämä voi ratkaista ongelmasi.

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi. Oletamme, että olet kunnossa, mutta voit halutessasi kieltäytyä. Hyväksyä Lisätietoja