Neue Beiträge auf der Startseite anzeigen lassen

Ein CMSimple Support Forum für deutsch sprechende Nutzer und Entwickler
CMSiA
Posts: 23
Joined: Mon Jun 13, 2016 4:13 pm

Neue Beiträge auf der Startseite anzeigen lassen

Post by CMSiA » Tue Jul 26, 2016 4:40 pm

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...

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by cmb » Tue Jul 26, 2016 4:51 pm

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.
Christoph M. Becker – Plugins for CMSimple_XH

Tata
Posts: 3587
Joined: Tue May 20, 2008 5:34 am
Location: Slovakia
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by Tata » Tue Jul 26, 2016 5:57 pm

I have found in my repository some antiques. Have look:
whatsnew.zip
whatsnew_lite.zip
whatsnew_V19d.zip
CMSimple.sk
It's no shame to ask for an answer if all efforts failed.
But it's awful to ask without any effort to find the answer yourself.

CMSiA
Posts: 23
Joined: Mon Jun 13, 2016 4:13 pm

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by CMSiA » Tue Aug 02, 2016 9:33 pm

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.

svasti
Posts: 1659
Joined: Wed Dec 17, 2008 5:08 pm

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by svasti » Sat Aug 06, 2016 2:07 pm

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;
}

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by cmb » Tue Aug 09, 2016 8:40 am

svasti wrote:Christoph hat doch dazu so ein kleines Add-On geschrieben...
Mein Gedächtnis … :oops: Danke fürs Posten!
Christoph M. Becker – Plugins for CMSimple_XH

Michael_G
Posts: 191
Joined: Thu Feb 18, 2016 11:01 pm
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by Michael_G » Fri Aug 12, 2016 10:25 am

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?
Last edited by Michael_G on Fri Aug 12, 2016 1:05 pm, edited 1 time in total.
Ciao
Michael

Let's Encrypt!

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by cmb » Fri Aug 12, 2016 12:53 pm

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)?>
Christoph M. Becker – Plugins for CMSimple_XH

Michael_G
Posts: 191
Joined: Thu Feb 18, 2016 11:01 pm
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by Michael_G » Fri Aug 12, 2016 1:50 pm

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.
Ciao
Michael

Let's Encrypt!

cmb
Posts: 14225
Joined: Tue Jun 21, 2011 11:04 am
Location: Bingen, RLP, DE
Contact:

Re: Neue Beiträge auf der Startseite anzeigen lassen

Post by cmb » Fri Aug 12, 2016 3:17 pm

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.
Christoph M. Becker – Plugins for CMSimple_XH

Post Reply