Blogissa näkyvien postausten rajoittaminen kategoriaan - Oskari Järvelin

Eräässä projektissani etusivulla näytetään asiakkaiden suosituksia ja poimintoja blogista. Suositukset voi toteuttaa WordPressin omalla Testimonials-toiminnolla tai luomalla oman Custom Post Typen suosituksille.

Valmiissa toiminnossa on hyvin vähän toiminnallisuuksia, ja CPT:n luominen vaatii paljon työtunteja perusjuttujen, kuten CPT-artikkelien frontendin toteuttamiseen. Tässä projektissa ei olisi tarvetta niin perusteelliseen toteutukseen pelkkien suositusten osalta.

Kaikista helpointa jaottelu olisi luoda taxonomioina eli kategorioina. Artikkelille voi kategoriasta valita onko se suositus vai artikkeli, ja halutaanko sitä näyttää poiminto myös etusivulla. Kategorioita tarvitaan siis kolme

  1. Suositukset
  2. Blogipostaukset
  3. Etusivun blogipoiminnat.

Jako toimii lähes itsestään erinomaisesti; etusivulle vain upottaa lyhytkoodit, jotka näyttävät vain suositukset-kategorian artikkeleita tai Etusivun blogipoiminnat-kategorian artikkeleita. Ongelma syntyy vasta blogi-sivulla, jossa kaikki kategoriat elävät harmoniassa tasavertaisina.

Koska elämme länsimaisessa sivistysvaltiossa, emme voi hyväksyä tuollaista absoluuttista tasavertaisuutta ja harmoniaa. Kyllä vuosisatojen takaisten arvojen takia iänaikaisia yhteiskuntaluokkia tulee kunnioittaa, suosituksilla ei saisi olla mitään asiaa bussiin blogiin.

Onneksi portinvartijan blogiin saa asetettua helposti muutamalla koodirivillä joko teeman functions.php -tiedostoon tai omaan lisäosaan. Koodi on seuraavanlainen:

Käytännössä koodi pureutuu artikkeleita hakevan queryn kylkeen, ja mikäli query on tulossa blogisivulta, rajoitetaan query vain tiettyyn kategoriaan.

Miksi sitten rajoitan haun vain yhteen kategoriaan, enkä sulje epätoivottua kategoriaa pois hausta?

Koska siinä tapauksessa myöhemmin voi muut epätoivotut sisällöt päästä läpi. Kun blogisivu rajoitetaan näyttämään vain yhtä kategoriaa, pysyy sisältöjen näyttämisen logiikka samanlaisena kuin muuallakin. Etusivulla suosituksina näytetään vain suosituksiksi merkityt, blogipoiminnoissa poiminnoiksi merkityt ja blogissa vain blogeiksi merkityt artikkelit.

Näin aina voi sisältöä kirjoittaessa valita rajattoman määrän sijainteja, mihin sisällön haluaa näkyviin. Ja mikäli myöhemmin etusivulle halutaan esimerkiksi työntekijät, niin heitäkin varten voidaan luoda oma kategoria, eikä alkuperäisiä blogisivun rajoituksia tarvitse muokata uudelleen.

Kategoriat: GistKooditWordPress