Page 1 of 2

Neue Beiträge auf der Startseite anzeigen lassen

Posted: Tue Jul 26, 2016 4:40 pm
by CMSiA
Hallo!

Gibt es eine Möglichkeit Änderungen automatisch auf die Startseite anzeigen zu lassen?

z.Bsp.:

1 10.07.2016 Hauptseite Unterseite(als Link)
2 ...
3 ...

Habe in der Suche nichts dazu gefunden...

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Tue Jul 26, 2016 4:51 pm
by cmb
CMSiA wrote:Gibt es eine Möglichkeit Änderungen automatisch auf die Startseite anzeigen zu lassen?
Das ist im Standardpaket nicht vorgesehen. Es gibt aber Plugins, die das machen, die ich auf der Yanp_XH-Seite erwähne. Dummerweise funktionieren die Links nicht mehr, da cmsimplewiki.com schon seit längerem down ist. :(

Wenn es aber nicht voll automatisch sein muss, dann würde ich Dir empfehlen, Dir Yanp_XH einmal anzuschauen.

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Tue Jul 26, 2016 5:57 pm
by Tata
I have found in my repository some antiques. Have look:
whatsnew.zip
whatsnew_lite.zip
whatsnew_V19d.zip

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Tue Aug 02, 2016 9:33 pm
by CMSiA
Danke für die Antworten!

YANP ist ganz okay. Aber für mein Szenario leider nicht.
Das whatsnew geht glaube ich nur mit dem cms und nicht dem cms_xh. Lief bei mir zumindest nicht.

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Sat Aug 06, 2016 2:07 pm
by svasti
Christoph hat doch dazu so ein kleines Add-On geschrieben... hier ist es, ich hab noch ein bisschen dran verändert. (Einfach in die userfuncs.php kopieren. Wenn diese Datei nicht da ist, sie in cmsimple-Verzeichnis erstellen.) Aufrufen auf der Startseite mit {{{recently_changed}}}
Zeigt die Änderungen mit Link und Datum, außer Änderungen der Seite, wo es aufgerufen wird.

Code: Select all

/**
 * @copyright 2016 Christoph M. Becker
 * @copyright 2016 (for some additions) by svasti
 * @license   GPLv3
 */
function recently_changed($count = 5)
{
    global $pd_router,$s;

    $pageData = $pd_router->find_all();
    uasort($pageData, function ($a, $b) {
        return $b['last_edit'] - $a['last_edit'];
    });

    $pages = array();
    $i = 0;
    foreach (array_keys($pageData) as $page) {
        if ($i < $count) {
            if (!hide($page) && $page != $s) {
                $pages[] = $page;
            }
            $i++;
        } else {
            break;
        }
    }

    global $sn, $h, $u;

    $html = '<ul class="recently_changed">';
    foreach ($pages as $page) {
        $html .= '<li>' . date("d.m.Y", $pageData[$page]['last_edit'])
               . ' <a href="' . "$sn?$u[$page]" . '">' . $h[$page] . '</a></li>';
    }
    $html .= '</ul>';
    return $html;
}

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Tue Aug 09, 2016 8:40 am
by cmb
svasti wrote:Christoph hat doch dazu so ein kleines Add-On geschrieben...
Mein Gedächtnis … :oops: Danke fürs Posten!

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Fri Aug 12, 2016 10:25 am
by Michael_G
Hallo Chris und Svasti,
svasti wrote:Christoph hat doch dazu so ein kleines Add-On geschrieben... hier ist es, ich hab noch ein bisschen dran verändert. (Einfach in die userfuncs.php kopieren. Wenn diese Datei nicht da ist, sie in cmsimple-Verzeichnis erstellen.) Aufrufen auf der Startseite mit {{{recently_changed}}}
Zeigt die Änderungen mit Link und Datum, außer Änderungen der Seite, wo es aufgerufen wird.
In CMSimple_XH 1.6.7 gibt es im cmsimple-Verzeichnis erstmal keine userfuncs.php, also angelegt, Deinen Code eingefügt, gespeichert und in /cmsimple hochgeladen.
Ergebnis: Website funktioniert nicht mehr, stattdessen sieht man nur noch folgendes:

Code: Select all

/** * @copyright 2016 Christoph M. Becker * @copyright 2016 (for some additions) by svasti * @license GPLv3 */ function recently_changed($count = 5) { global $pd_router,$s; $pageData = $pd_router->find_all(); uasort($pageData, function ($a, $b) { return $b['last_edit'] - $a['last_edit']; }); $pages = array(); $i = 0; foreach (array_keys($pageData) as $page) { if ($i < $count) { if (!hide($page) && $page != $s) { $pages[] = $page; } $i++; } else { break; } } global $sn, $h, $u; $html = '

    '; foreach ($pages as $page) { $html .= '
    ' . date("d.m.Y", $pageData[$page]['last_edit']) . ' ' . $h[$page] . '
    '; } $html .= '

'; return $html; }Header-Information kann nicht geändert werden - die Header wurden bereits verschickt (die Ausgabe begann in /homepages/nn/xnnnnnnnnn/htdocs/domainname.tld/cmsimple/userfuncs.php:37)
Schade. Würde ich auch gern nutzen, geht so aber nicht. Habe userfuncs.php deshalb schnell in userfuncs.php.bak umbenannt, damit meine Website wieder läuft und warte auf Bugfix ;-)
Welchen Zeitraum nutzt das Script denn? Nur den letzt Tag oder letzte x Tage? Geht aus dem Script nicht hervor?

Ergänzung:
Hoster: 1&1 Internet SE
PHP-Version: 7.0.9

Nach Syntax-Prüfung mit Notepad++ habe ich festgestellt, dass die geschweiften Klammern in Zeile 7 und 26 keine Gegenparts haben.
Mir fehlen leider Programmierkenntnisse, sonst hätte ich den Fehler sicher schon gefunden. Aber euch beschleunigt es vielleicht die Fehlersuche?

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Fri Aug 12, 2016 12:53 pm
by cmb
Michael_G wrote:Ergebnis: Website funktioniert nicht mehr, stattdessen sieht man nur noch folgendes:
Lösung: einfach folgendes zu Beginn der Datei einfügen:

Code: Select all

<?php

Michael_G wrote:Welchen Zeitraum nutzt das Script denn? Nur den letzt Tag oder letzte x Tage? Geht aus dem Script nicht hervor?
Die Funktion hat einen optionalen Parameter, mit dem man einstellen kann, wieviele Änderungen angezeigt werden. Dessen Voreinstellung ist 5, aber man kann für 10 Änderungen halt schreiben:

Code: Select all

{{{recently_changed(10)}}}
oder im Template:

Code: Select all

<?php echo recently_changed(10)?>

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Fri Aug 12, 2016 1:50 pm
by Michael_G
Hallo Chris,

vielen lieben Dank!

Da hätte ich ja mal selbst drauf kommen können durch Vergleich mit irgendeiner anderen PHP-Datei. :oops:
Auch als Nichtprogrammierer. :lol:

Habe die Datei mit <?php am Dateianfang vervollständigt und schon finden die beiden geschweiften Klammern ihre Gegenstücke und alles funzt super! Danke! :D

Praktische Anwendung bei mir: im (linken) News01-Fenster, wo ich bisher manuell die letzten Änderungen vermerkt hatte.

Re: Neue Beiträge auf der Startseite anzeigen lassen

Posted: Fri Aug 12, 2016 3:17 pm
by cmb
Michael_G wrote:Da hätte ich ja mal selbst drauf kommen können durch Vergleich mit irgendeiner anderen PHP-Datei.
Na ja, einer von uns Programmierern hätte ja auch gleich den passenden Link posten können: http://www.cmsimple-xh.org/wiki/doku.ph ... erfuncsphp. :)
Michael_G wrote:vielen lieben Dank!
Nichts zu danken.