WP Manifestindependent plugin directory
manifest / unclassified / verkoopmachine-wordpress-plugin

Verkoopmachine

Toon actueel vee-aanbod en rundveeveilingen uit Verkoopmachine.

by tinusg · github.com/tinusg/verkoopmachine-wordpress-plugin · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/tinusg/verkoopmachine-wordpress-plugin/archive/refs/heads/main.zip

Verkoopmachine voor WordPress

Toon actueel aanbod uit Verkoopmachine in een WordPress-site. De plugin haalt inhoud op met één ingestelde koppelcode en rendert vee-advertenties en aankomende rundveeveilingen als toegankelijke kaarten met deeplinks naar Koemarkt.

Vee-advertenties gebruiken de door de API geleverde rasplaceholder als kaartbeeld. Wanneer de advertentie eigen foto's heeft, toont de kaart het aantal als toegankelijke camerabadge. Voor embryo- en sperma-aanbod wordt ook de optionele placeholder-overlay ondersteund.

Vereisten

  • WordPress 6.6 of hoger;
  • PHP 8.1 of hoger;
  • een Verkoopmachine-API met de v1 client-content endpoints.

Installatie en gebruik

Plaats de map verkoopmachine in wp-content/plugins en activeer de plugin. Open daarna Instellingen > Verkoopmachine en sla de koppelcode op. De code wordt bij het opslaan via de API gevalideerd.

Gebruik het dynamische blok Verkoopmachine aanbod, of de shortcode:

[verkoopmachine types="vee,rundveeveilingen" limit="6"]

types accepteert een komma- of pipe-gescheiden combinatie van vee en rundveeveilingen. limit geldt per groep en wordt begrensd op 1–24.

Caching en configuratie

API-inhoud wordt standaard vijf minuten vers gecachet. Na een tijdelijke API-storing kan maximaal een dag op de laatst opgehaalde inhoud worden teruggevallen. Deze ontwikkelaarsconstanten kunnen in wp-config.php worden gedefinieerd:

define( 'VERKOOPMACHINE_API_URL', 'https://www.verkoopmachine.test/api/v1' );
define( 'VERKOOPMACHINE_TIMEOUT', 8 );
define( 'VERKOOPMACHINE_CACHE_SECONDS', 300 );
define( 'VERKOOPMACHINE_STALE_CACHE_SECONDS', 86400 );

Dezelfde waarden zijn te wijzigen via de filters verkoopmachine_api_url, verkoopmachine_timeout, verkoopmachine_cache_seconds en verkoopmachine_stale_cache_seconds. De inhoudstaal is standaard nl en kan via verkoopmachine_locale worden aangepast zodra de API een andere taal ondersteunt. Gebruik de API-URL-afwijking alleen voor ontwikkeling en tests.

Styling

Alle CSS is gescoped onder [data-verkoopmachine]. Pas de vormgeving bij voorkeur aan via de variabelen --vm-brand, --vm-card-accent, --vm-border, --vm-muted, --vm-surface en --vm-text in de eigen theme-stylesheet.

Tests

Voer de dependency-vrije tests uit vanuit de pluginmap:

php tests/run.php
wp eval-file wp-content/plugins/verkoopmachine/tests/wp-integration.php

De tweede test wordt uitgevoerd vanuit de WordPress-root en gebruikt een afgevangen HTTP-response; hij benadert de productie-API niet.

Licentie

GPL-2.0-or-later.