Page 1 of 1

Erweiterung des Plugin CoAuthors

Posted: Wed 29. May 2024, 17:49
by stmichi68
Hallo ,

ich habe für das Plugin CoAuthors eine Funktionserweiterung zum automatischen Seitenwechsel geschrieben. Die Idee dahinter: Ich betreue die Vereinshomepage eines Theatervereins. Jetzt sollen unsere Gäste bei einer Veranstaltung, nach dem Beginn, nicht den gleichen Seiteninhalt wie davor präsentiert bekommen. Da kommt das Plugin CoAuthors ins Spiel. Ich lege eine Seite "Aktuelles" an, welche nur die Überschrift und den Funktionsaufruf enthält. Dann gibt es zwei versteckte Seiten - "Davor" und "Danach" Beim Speichern werden im Folder co_authors die jeweiligen Textdateien angelegt, welche von der Funktion auf der Seite "Aktuelles" aufgerufen werden. Je nach Zeitpunkt bekommen die Besucher jetzt den jeweiligen Inhalt präsentiert.
Der Funktionsaufruf sieht so aus:

Code: Select all

{{{plugin:co_authorsCHG('CoAuthorFolder/','Seite_vor_dem_Umschaltzeitpunkt','yyyymmddHHMM','Seite_nach_dem_Umschaltzeitpunkt');}}}
Create_content_textfiles: In den CMS-Einstellungen muss natürlich auf "true" gesetzt sein.

Hier meine Funktion, ich hab sie in der userfuncs.php ausgiebig getestet.

Code: Select all

/*
============================================================
Funktion co_authorsCHG
============================================================
*/


function co_authorsCHG($co_authors_folder, $co_authors_page01, $wechseldatum, $co_authors_page02)
{
	global $pth;
	
	if(!defined('CMSIMPLE_VERSION'))
	{
		return '<p>This plugin requires <b>CMSimple 4.2</b> or higher.</p><p><a href="http://www.cmsimple.org/">CMSimple Download & Updates &raquo;</a></p>';
	}
	
	$GLOBALS['co_authors_folder'] = $co_authors_folder; global $co_authors_folder;

	$co_authors_doc = '';


    if($wechseldatum > date(YmdHi))
        { 
         $co_authors_doc.= file_get_contents($pth['folder']['base'].$co_authors_folder.'userfiles/co_author/' . $co_authors_page01 . '.txt');
        }
 else
        {
         $co_authors_doc.= file_get_contents($pth['folder']['base'].$co_authors_folder.'userfiles/co_author/' . $co_authors_page02 . '.txt');
        }

	$co_authors_doc = preg_replace('~<h1(.*)</h1>~', '', $co_authors_doc);
	
	$co_authors_doc = evaluate_scripting($co_authors_doc);

	return($co_authors_doc);
}
Vielleicht könnte das eine interessante Erweiterung des CoAuthors Plugin sein.

Lieben Gruß aus dem Ostern von Österreich
Michael