Ein Affiliate oder CTA Plugin für WonderCMS schreiben

Möchten Sie mit Ihrem WonderCMS und Affiliate-Links Geld verdienen, dann sollten Sie sich dieses Plugin erstellen.

Affiliate CTA Plugin für WonderCMS schreiben

Die Unterstützung mit Plugins für das noch junge WonderCMS ist leider noch etwas klein und wird sich sicherlich in der kommenden Zeit auch ändern. Der folgende Beitrag zeigt das Coding und die Entwicklung eines Affiliate-Plugins für WonderCMS.

WonderCMS Verzeichnis-Struktur

Die Pluginstruktur in WonderCMS ist sehr gut dokumentiert. Alle Plugins liegen im Verzeichnis Plugins in einem Ordner der den gleichen Namen trägt wie das enthaltene Plugin. In diesem Fall ist es die folgende Struktur:

|
+--- plugins
        |
        +--- affiliate
                |
                +--- affiliate.php
                |
                +--- config
                |
                +--- version

Beim Starten von WonderCMS wird der Inhalt des Plugin-Verzeichnis immer frisch geladen und die Programme stehen dann sofort zur Verfügung. Sie sehe auch bereits, das es zum Affiliate Plugin für WonderCMS eine Config-Datei gibt, in der die Vorgaben zur Produkteinblendung eingetragen werden können.

Config

Das extensionslose Configfile liegt im selben Ordner wie auch der Programmcode des WonderCMS Plugins. Die Config-Datei hat de folgenden Inhalt:

001  [general]
002  start         = 1
003  end           = 2
004  
005  1_title       = "Produktname 1"
006  1_description = "Tragen Sie eine ausführliche Produktbeschreibung ein..."
007  1_link        = "https://www.amazon.de..."
008  1_image       = "https://...jpg"
009
010  2_title       = "Produktame 2"
011  2_description = "Tragen Sie eine ausführliche Produktbeschreibung ein..."
012  2_link        = "https://www.amazon.de..."
013  2_image       = "https://...jpg"

Datei: config

In diesem Beispiel gibt es erst zwei Produkte, die Liste kann jedoch ganz nach belieben erweitert werden. Wichtig zu beacten ist jedoch, das die fortlaufenden Produktgruppen korrekt nummeriert werden (3_xxx, 4_xxx usw.).

Das WonderCMS Plugin

Der eigentliche Programmcode des WonderCMS Plugins ist erstaunlich klein.

001  <?php
002
003  global $Wcms;
004
005  if (defined('VERSION')  && !defined('version')) {
006      define('version', VERSION);
007      defined('version') OR die('Direct access is not allowed.');
008  }
009
010  $configuration = parse_ini_file('config');
011
012  define('AFFILIATE_RND_START',   $configuration ['start']);
013  define('AFFILIATE_RND_END',     $configuration ['end']);
014
015  $random  = rand(AFFILIATE_RND_START, AFFILIATE_RND_END);
016
017  define('AFFILIATE_TITLE',       $configuration [$random.'_title']);
018  define('AFFILIATE_DESCRIPTION', $configuration [$random.'_description']);
019  define('AFFILIATE_LINK',        $configuration [$random.'_link']);
020  define('AFFILIATE_IMAGE',       $configuration [$random.'_image']);
021
022  function affiliate() {
023      global $Wcms;
024
025      $result = '';
026      $result .=  '<div class="row">';
027      $result .=  '<div class="col-sm-2">';
028      $result .=  '<img src='.AFFILIATE_IMAGE.' class="img-fluid">';
029      $result .=  '</div>';
030      $result .=  '<div class="col-sm">';
031      $result .=  '<p><strong>'.AFFILIATE_TITLE.'</strong> - '.AFFILIATE_DESCRIPTION.'</p>';
032      $result .=  '<a href='.AFFILIATE_LINK.' class="btn btn-secondary">'.AFFILIATE_TITLE.'</a>';
033      $result .=  '</div>';
034      $result .=  '</div>';
035
036      return $result;
037  }
038
039  ?>

Datei: affiliate.php

Zeile 005 fragt de aktuelle Version des WonderCMS ab, daher müssen Sie diese Datei anlegen oder kopieren diese aus einem installierten Plugin heraus. In den Zeilen 010...020 wird die Config-Datei ausgelesen und in die Inalte zu Produkttitel, Beschreibung usw. in die Konstanten kopiert. Dazu werden die Initialwerte für Start und Ende in die Zufallsgenerator 015 kopiert, dieser generiert einen Präfix, welcher in 017...020 den Produktgruppen zugeordnet wird. Ab Zeile 022 wird das Ergebnis an das Frontend der Webseite mit Hilfe des return 036 übertragen.

Das Template

Damit das WonderCMS Plugin sein Ergebnis auf der Webseite eintragen kann, muss im Template die folgende Zeile hinterlegt werden:

<?php echo affiliate() ?>

Bsp.: in ../themes/essence/theme.php einbinden

Die Programmzeile ruft das Plugin und die darin enthaltene function affiliate() auf und trägt an genau dieser Stelle deren Rückgabe ein. Als Ergebnis erhalten Sie beispielsweise die folgende Anzeige:

Affiliate Plugin für WonderCMS Affiliate Plugin für WonderCMS blendet das Produkt PHP 8 und MySQL aus dem Amazon Partner-Netz ein

Sie können das Plugin natürlich auch dazu nutzen, um CTA (Call to Action), eigene Beiträge Ihres oder anderer Webseiten via Zufallsgenarator einblenden zu lassen. Das Plugin muss daher nicht zwingend als Affiliate-Plattform in Ihrer WonderCMS Webseite dienen.


PHP 8 und MySQL

PHP 8 und MySQL - Dynamische Webseiten mit PHP und MySQL programmieren: Alles, was Sie dafür wissen müssen, steht in diesem Buch. Profitieren Sie von einer praxisorientierten Einführung und lernen Sie alle neuen Sprachfeatures von PHP 8 kennen. Die Autoren Christian Wenz und Tobias Hauser sind erfahrene PHP-Programmierer und Datenbankspezialisten. Sie zeigen Ihnen, wie Sie MySQL und andere Datenbanksysteme effektiv einsetzen. Mit diesem Wissen machen Sie sich rundum fit für dynamische Websites. (*

lesen...

© CMSWorkbench.de

plugin affiliate cta

about me

About me

Mein Name ist Oliver Lohse. Ich bin diplomierter Wirtschafts-Informatiker und Organisations-Programmierer in verschiedenen Programmier-Sprachen und Markup-Dialekten, z.B. Java, JEE, COBOL, PHP, Python, MySQL, HTML, CSS, ANSI C, Lisp, Rexx, JavaScript, Scheme, ActionScript 2.0, Maschinensprache, Assembler und JCL. Seit mehr als 24 Jahren arbeite ich als Entwickler in einem großen Softwareunternehmen für Versicherungen in Hannover Niedersachsen und seit etwa 37 Jahren im EDV-Sektor mit wechselnden Aufgaben.