it-swarm.com.de

Erster Versuch PHP Plugin

Neu in PHP und Plugin Building. Ich bin ein Front-End-Typ, muss aber lernen, wie Vorlagen in Joomla erstellt werden. Ich habe eine kleine Funktion, mit der Sie Text in die Funktion onContentAfterTitle einfügen und ändern können.

class plgContentmyplugin extends JPlugin
    {
public function onContentAfterTitle($context, $article, $params,  $limitstart)
{
    if ($this->params->get('alt-text')) {
        return $this->params->get('alt-text');
    } else {
        return "<p>Hello World!</p>";
    }

Jetzt verstehe ich, dass das XML die Back-End-Optionen im Admin-Control-Panel bestimmt. Dann mit dem PHP, um es anzuzeigen.

Ich möchte dieses Plugin hauptsächlich für Lernzwecke erweitern können. Ich habe einige XML-Anzeigeoptionen zum Ändern der Schriftfarbe und -größe. Ich bin nur ein bisschen unsicher, welche Funktion ich aufrufen soll, um das zu erreichen. Sollte ich einen der anderen Parameter verwenden? z.B. $ context oder $ article? Jede Hilfe wäre sehr dankbar.

<field name="font-size" type="list" default="12" description="What size font should the message use?" label="Font size">
            <option value="8">8px</option>
            <option value="12">12px</option>
             <option value="16">16px</option>
        </field>

Auch hier ist meine Absicht, mein PHP-Wissen zu erweitern und letztendlich in der Lage zu sein, Vorlagen zu erstellen, die andere Leute verwenden können. Ich habe bereits herausgefunden, wie eine Vorlage zusammengestellt und gehackt wird, indem nur das gestylt wird, was bereits vorhanden ist, was völlig akzeptabel wäre, aber ich bin nicht sicher, wie viel der Endbenutzer ändern muss und welche Optionen er benötigt. Dafür muss das Backend erstellt werden.

2
Dawdre

Also verwenden Sie in Ihrem XML name="font-size" für einen der Parameter. Um dies im Plugin aufzurufen, verwenden Sie einfach Folgendes:

$fontsize = $this->params->get('font-size');

Sie können auch ein Fallback (2. Argument) für den Parameter hinzufügen, wenn kein Wert zugewiesen ist:

$fontsize = $this->params->get('font-size', 12);
4
Lodder