Header afbeelding toevoegen aan bbPress forum- en onderwerppagina’s

Header afbeelding toevoegen aan bbPress forum plugin.Probleem:
Voor een website maak ik gebruik van de plugin bbPress om een forum aan te bieden. Standaard biedt deze plugin geen optie aan om per forum- of onderwerppagina bovenin een header afbeelding te tonen.

Het kan voorkomen dat het thema dat je gebruikt dit wel ondersteund. Maar het thema dat ik gebruikte had dit niet. Toch werd mij gevraagd om deze functionaliteit toe te voegen voor meer kleur en contrast.

Oplossing:
De gemakkelijkste oplossing is om de “uitgelichte afbeelding” functionaliteit te gebruiken die in WordPress core zit. Deze ken je van de berichten en pagina’s. Deze functionaliteit wordt bij berichten vaak gebruikt om bovenin de pagina een grote afbeelding te tonen.

Om deze functionaliteit te activeren voeg je deze twee regels toe aan het functions.php bestand van jouw thema:

add_post_type_support('forum', 'thumbnail');
add_post_type_support('topic', 'thumbnail');

Waarschuwing:
Maak je gebruik van een gratis of betaald thema dan doe je dit natuurlijk niet in dat thema wijzigen maar in het child thema. Doe je dit niet en installeer je een update, dan ben je jouw wijzigingen kwijt.

Open nu in de wp-admin omgeving een forum en je ziet aan de rechterkant de mogelijkheid om een afbeelding te koppelen. Doe dit voor een forum en voor een onderwerp. Dit maakt het testen van de deze uitbreiding een stuk gemakkelijker :).

Om de header afbeelding zichtbaar te maken in de website moet je onderstaande code toevoegen aan de template bestanden van het thema:

<?php if (has_post_thumbnail()) { the_post_thumbnail(); } ?>

Maar in welk bestand plaats je bovenstaande PHP code. Dat is een goede vraag en het antwoord verschilt per thema. Ieder thema hanteert zijn eigen structuur. In mijn thema moest ik het in het bestand bbpress.php toevoegen. Dit heb ik gekopieerd van het thema naar mijn child thema.

Mogelijk is er al een bbpress map aanwezig in jouw thema. Mocht die map niet bestaan dan kan je de bbPress templates kopiëren vanuit de bbPress plugin map.

Voor de template met het onderwerpen overzicht kopieer je dit template:
/plugins/bbpress/templates/default/bbpress/loop-topics.php

Naar de volgende map:
/themes/< jouw thema >/bbpress/loop-topics.php

Voor de template met de reacties op een onderwerp kopieer je dit template:
/plugins/bbpress/templates/default/bbpress/loop-replies.php

Naar de volgende map:
/themes/< jouw thema >/bbpress/loop-replies.php

Voeg nu de PHP code toe aan de template bestanden en controleer het resultaat. Mogelijk moet je de PHP code een aantal keren verplaatsen om de juiste plek te vinden.

Mocht dit niet het gewenste effect hebben dan kan het zijn dat je de code aan de template bestanden van het thema toe moet voegen. Helaas kan ik niet voor alle thema’s aangeven in welk bestand je dan moet zijn.

Kom je er niet aan uit? Plaats een reactie onder dit blog met jouw thema en ik probeer je dan verder te helpen.

Waarschuwing:
Door de templates in de map bbpress te plaatsen, worden deze templates ingeladen, in plaats van de standaard bbpress templates. Nadeel is wel dat je de templates handmatig moet wijzigen als bbpress is bijgewerkt. Controleer daarom een paar keer per jaar of de PHP code in de templates in jouw thema nog identiek zijn aan de templates in de bbpress plugin map.

Oplossing getest op:
WordPress 5.4, bbPress 2.6.4

Laat een reactie achter

Your email address will not be published. Required fields are marked *

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.