GithubHelp home page GithubHelp logo

staabm / newsmanager Goto Github PK

View Code? Open in Web Editor NEW

This project forked from friendsofredaxo/newsmanager

0.0 3.0 0.0 759 KB

Einfacher REDAXO 5 Newsmanager

License: MIT License

CSS 0.01% JavaScript 6.19% PHP 93.80%

newsmanager's Introduction

News-Manager

Screenshot

Dieses Addon stellt eine einfache Newsverwaltung bereit. Dabei werden die Beiträge in einer eigenen Tabelle abgelegt.

Beschreibung

Die Kernfunktion ist die Verwaltung von Newsartikeln. Man kann Kategorien festlegen und die Artikel dann einer oder mehreren Kategorien zuordenen.

Für eine einfache Ausgabe der Artikel und Artikellisten sind einige Funktionen vorhanden. Man kann aber die Ausgabe auch über Datenbankabfragen realisieren.

Alle zukünftige Funktionen werden über Plugins eingebunden. Das erste Plugin realisiert eine Kommentarfunktioalität.

Derzeitige Funktionen:

  • Kategorien
  • Mehrsprachigkeit
  • RSS Feed
  • Kommentare (via Plugin)

Installation

Einfach das Addon nach /redaxo/src/addons/ kopieren und im Addons Bereich installieren.

Das Addon benötigt folgende Addons:

  • url Addon (für "sprechende" URLs)
  • redactor2 Addon (optional, macht aber Sinn wenn man Richtext im Artikel verwenden will).

Das Addon enthält eine Einstellungsseite. Hier sollten Sie die Kategorie auswählen, in welcher im Startartikel die Artikelliste und die Artikelansicht ausgegben wird. Beim Klick auf "Einstellungen speichern" wird (falls vorhanden) ein Profil für das redactor2 Addon sowie die Einstellungen für das url Addon angelegt.

Template anpassen

Man kann natürlich einfach eine entsprechende Datenbank Abfrage machen und sich selbst um die Ausgabe kümmern. Wie das geht, kann man in der REDAXO Doku nachlesen.

Es gibt aber auch Funktionen, die sich um die Ausgabe kümmern. Hier ein paar Beispiele für die Verwendung dieser Klassenfunktionen (Listen- und Singleansicht in einem einzigen Template):

Headerbereich:

$newsmanager = new NewsManager();

// Mit aktiviertem Kommentarplugin:
// $newsmanager = new NewsManagerWithComments();

$news_id = $newsmanager->getNewsIdParameter();

if ($news_id) {

    // Artikel-Ansicht

    $article_post = $newsmanager->getArticleById($news_id);

    echo $article_post->getTitleTag($this->getValue('article_id'));
    echo $article_post->getDescriptionTag();
    echo $article_post->getCanonicalUrlTag($this->getValue('article_id'));
    echo $article_post->getHrefLangTag ($article_post->getId());

} else {

    // Artikel-Listenansicht

    $seo = new rex_yrewrite_seo();

    echo $seo->getTitleTag();
    echo $seo->getDescriptionTag();
    echo $seo->getRobotsTag();
    echo $seo->getHreflangTags();
    echo $seo->getCanonicalUrlTag();

}

RSS Link (falls gewünscht)

echo $newsmanager->getRssHeaderLink();

Artikel-Ansicht und Artikel-Listenansicht

if ($news_id) {

    // Artikel-Ansicht

    echo $newsmanager->printSingleView($article_post);
    echo $newsmanager->getCommentList($article_post->getPid());
    echo $newsmanager->getCommentForm($article_post->getPid());

} else {

    // Artikel-Listenansicht

    echo '      <h1>' . $this->getValue("name") . '</h1>';

    // Ausgabe 10 Artikel, alle weiteren paginiert

    echo $newsmanager->printListView($this->getValue('article_id'), 10);

}

Kategorie Menü

echo $newsmanager->printCategoryMenu();

Den Quellcode für die Ausgabe kann man auch anpassen. Es gibt dafür sog. Views, also HTML Schnipsel die in /redaxo/data/addons/newsmanager/views/ bzw. für die Kommentare unter /redaxo/data/addons/newsmanager/views/comments/views/ abgelegt sind.

newsmanager's People

Contributors

georgkaser avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.