Page 2 of 2

Re: Plugins einzeln ansprechen

Posted: Thu Jan 28, 2016 1:39 pm
by CrazyBread
Also ich habe es mir gerade angeschaut.
Das Plugin "About" prüft in der Methode "siteSidebar()" nicht, ob es aktiviert ist, sondern baut einfach den hinterlegten Text zusammen und gibt diesen zurück.

Deshalb kannst du an der richtigen Stelle deines Themes einfach das hier einbauen

Code: Select all

<?php echo $plugins[all][pluginAbout]->siteSidebar(); ?>
Diese Methode ist auch wesentlich besser als den Code aus dem Plugin zu kopieren, da dann zukünftige Updates nicht
beachtet werden würden (in diesem Beispiel nicht relevant, aber für ähnliche Fälle vielleicht).

Dein Vorhaben erfordert jedenfalls, das du dein verwendetes Theme im Code selbst bearbeitest.

Re: Plugins einzeln ansprechen

Posted: Thu Jan 28, 2016 8:31 pm
by dirtdiver2010
Danke für die Info. Ich werde es mir mal anschauen, wenn ich wieder am basteln bin.

Re: Plugins einzeln ansprechen

Posted: Tue Dec 05, 2017 1:03 pm
by dirtdiver2010
Hallo, ich mal wieder.
Eine Frage, vielleicht kann mir hier jemand helfen oder weiß ob es eventuell möglich ist was ich vorhabe...

Folgendes, ich würde gerne wieder die Plugins einzeln ansprechen. Ich habe das in V2 noch nicht versucht, aber ich denke es funktioniert wie bisher. Ich habe jetzt vor die Kategorien als einzelnes Plugin in meine Seite einzubinden.

Code: Select all

<?php echo $plugins['all']['pluginCategory']->siteSidebar(); ?>
Jetzt würde ich allerdings gerne die einzelnen Kategorien mit CSS stylen. Ist es dementsprechend möglich den einzelnen Kategorien eine Klasse mitzugeben, z.B. die Klasse ist der Name der Kategorie.

Hat hier jemand einen Lösungsansatz oder kann mir vielleicht sagen wie das funktionieren könnte? Ich versuche das Ganze auch in den Englischen Bereich zu schreiben...

Danke.

Hier noch ein Beispiel wie es denn aussehen könnte was ich meine:

Code: Select all

<div class="plugin-content">
  <ul>
    <li>
      <a href="#" class="category-name">Category-Name (1)</a>
    </li>
  </ul>
</div>

Re: Plugins einzeln ansprechen

Posted: Tue Dec 05, 2017 10:05 pm
by Edi
Wenn Du den Namen der Kategorie als Klasse mitgeben möchtest, kannst Du die Zeile 53 der Datei plugin.php des Plugins Categories wie folgt ergänzen:

$html .= '<a href="'.DOMAIN_CATEGORIES.$key.'" class="'.$key.'">';

Der Code ab Zeile 48 wäre dann:

Code: Select all

		// By default the database of categories are alphanumeric sorted
		foreach ($dbCategories->db as $key=>$fields) {
			$count = count($fields['list']);
			if (!$this->getValue('hideCero') || $count>0) {
				$html .= '<li>';
				$html .= '<a href="'.DOMAIN_CATEGORIES.$key.'" class="'.$key.'">';
				$html .= $fields['name'];
				$html .= ' ('.count($fields['list']).')';
				$html .= '</a>';
				$html .= '</li>';
			}
		}

Re: Plugins einzeln ansprechen

Posted: Wed Dec 06, 2017 8:48 am
by dirtdiver2010
Ok, danke, schaue ich mir mal an.
Das Problem was ich dabei sehe, dass der Code dann weg ist wenn das System ein Update erhält, oder?

Re: Plugins einzeln ansprechen

Posted: Wed Dec 06, 2017 10:33 am
by CrazyBread
Das ist richtig. Dem kann man aber einfach entgegentreten, indem man das Plugin einfach kopiert.
Damit bleibt es bei einem Update unberührt.

Also einfach den kompletten Ordner kopieren, entsprechend umbenennen und (falls nötig) in der Metadata-JSON mit einem entsprechenden Kommentar versehen.

Re: Plugins einzeln ansprechen

Posted: Wed Dec 06, 2017 11:22 am
by Edi
Da gäbe es zwei Möglichkeiten:

1) Das Plugin nicht aufdatieren. ;-)

2) Eine Kopie des Plugins machen und umbennen. Beispielsweise categories-modified. Zudem sicherheitshalber den Namen des Plugins in der Sprachdatei anpassen (beispielsweise in der Datei de_DE.json im Verzeichnis /languages). Du hast dann zwei Plugins für die Anzeige der Kategorien, aber nur die angepasste Kopie aktiviert.

Re: Plugins einzeln ansprechen

Posted: Wed Dec 06, 2017 11:24 am
by Edi
@CrazyBread Sorry für den "Double Post"... Wir waren gleichzeitig am Werk.