JPress , eine Java-Alternative zu WordPress, entwickelt mit JFinal. Unterstützt fast alle WordPress-ähnlichen Funktionen wie Vorlagen, Plug-Ins usw. Gleichzeitig vertritt JPress in Bezug auf Vorlagen das Konzept „Vorlage als Modell“, das es Vorlagenherstellern ermöglicht, Geschäftsmodelle flexibel zu erstellen, komplizierte Funktionen wie Widgets zu entfernen und in Bezug auf WordPress flexibler und prägnanter zu sein Template- und Plug-in-Produktion.
JPress ist jedoch nicht die Java-Version von WordPress. Es ist natürlich in die öffentliche WeChat-Plattform integriert und integriert viele inländische Cloud-Plattformen, SMS-Versand- und E-Mail-Versandplattformen. Das ursprüngliche Konzept „Vorlage als Modell“ ist in WordPress nicht verfügbar Nur erfahrene Nur WordPress-Spieler können die subtile Beziehung im Inneren verstehen. Gleichzeitig werden in Zukunft die Artikelsynchronisierungsfunktionen der WeChat-Artikelsynchronisierung, der öffentlichen QQ-Plattform, Toutiao, Yidian und anderer neuer Medien hinzugefügt, wodurch sie inländischer und lokalisierter werden.
JPress hinsichtlich der FunktionalitätUnterstützt benutzerdefinierte Modelle, die über Vorlagen und nicht über Hintergrundfunktionen definiert werden. Gleichzeitig unterstützt der Modellinhalt benutzerdefinierte Kategorien. Beispielsweise unterstützt das Artikelmodell Themen, Kategorien, Tags und andere Kategorien.
Unterstützt mehrere Vorlagen-Engines. Vorlagenersteller können zum Rendern auch andere Engines wie Thymeleaf verwenden. Es unterstützt auch die Online-Bearbeitung von Vorlagen im Hintergrund (derzeit wird nur die Freemarker-Engine unterstützt).
Unterstützt mehrere Datenbanktypen und kann verschiedene Datenbanken konfigurieren (derzeit wird nur MySQL unterstützt).
Unterstützt mehrere Editoren, freies Umschalten zwischen visueller Hintergrundbearbeitung und Markdown-Bearbeitung und unterstützt standardmäßig Funktionen wie Online-Bildbearbeitung und Code-Hervorhebung.
Es unterstützt Plug-Ins und Sie können die Entwicklung eines Plug-Ins mit nur wenigen Codezeilen abschließen. Es gibt bereits Helloworld-Instanzen des Plug-Ins auf git.oschina.net und github.
Unterstützt benutzerdefinierte URLs und die Anpassung des URL-Stils für Website-Inhalte.
Durch die API-Unterstützung können Apps oder andere Dritte Daten abrufen.
Internationalisierungsunterstützung: Verwenden Sie JPress, um ganz einfach Websites in jeder Sprache zu erstellen.
Minimalistische SEO-Funktion: Sie können SEO für jeden Artikel, jede Kategorie und jedes Tag separat festlegen und die Sitemap-Ausgabe unterstützen.
Die Benutzerregistrierung unterstützt die E-Mail- und SMS-Verifizierung. Derzeit unterstützen SMS-Dienstanbieter nur Alibaba Dayu.
Unterstützt CDN-Einstellungen, einschließlich Qiniu, Alibaba Cloud, Youpai Cloud usw.
Hochgeladene Bilder unterstützen Wasserzeicheneinstellungen und hochgeladene Bilder werden automatisch in verschiedene, von der Vorlage benötigte Bildgrößen zugeschnitten, um sicherzustellen, dass die Bildanzeige nicht gestreckt wird.
Die Benutzeranmeldung unterstützt die Anmeldung von Drittanbietern und unterstützt QQ, WeChat, Weibo, Open Source China, Github, Facebook, Twitter und LinkedIn (derzeit ist nur die Anmeldung bei QQ, WeChat, Weibo, Open Source China und Github abgeschlossen).
JPress auf WeChatUnterstützt WeChat-Menüeinstellungen.
Unterstützt automatische Antworten, das Hinzufügen von Schlüsselwörtern und Antwortinhalten.
Unterstützt Standardantworten, einschließlich: wenn der Benutzer aufmerksam ist, wenn er den Mehrkundendienst betritt, wenn er den Mehrkundendienst verlässt, beim Senden von Bildern, beim Senden von Sprache, beim Senden von Videos, beim Senden des Standorts, beim Senden der Verbindung, wenn der Benutzer scannt der QR-Code mit Parametern, wenn der Benutzer schüttelt.
Alle automatischen Antworten oder Standardantworten unterstützen die Funktion „Erweiterte Antworten“, z. B. das Antworten auf einen Artikel, das Antworten auf eine URL usw. Erweiterte Antworten sind spezielle Antworten, die in JPress integriert sind, aber vollständig konfigurierbar sind, und weitere „erweiterte Antworten“ werden es sein in der Zukunft hinzugefügte Funktion.
Die automatische Antwort oder Standardantwort unterstützt Plug-In-Antworten und ruft das JPress-Plug-In auf, um die Antwort abzuschließen.
Unterstützt die Artikelsuche. Durch die Beantwortung von Schlüsselwörtern werden Artikel zurückgegeben, die mit Schlüsselwörtern übereinstimmen.
Zukünftig werden praktische Funktionen wie die Artikelsynchronisierung oder der WeChat-Import unterstützt.
JPress auf der technischen SeiteJPress nutzt stolz JFinal als Kernstück und profitiert auch von der flexiblen Architektur von JFinal. Im Open-Source-System JFinalframework kümmert sich JPress um die Implementierung jeder Logikzeile und achtet auf die Qualität jeder Codezeile. Dies sollte zu den Best Practices von JFinal gehören und daher auch ein Muss sein jeder JFinaler.
Verwenden Sie Freemarker und Thymeleaf als Template-Engines. Der einzigartige in JPress integrierte Cache macht die UI-Rendering-Geschwindigkeit unabhängig von der Vorlagen-Engine.
Tinymce wird als visueller Editor und simplemde als Markdown-Editor verwendet. Die beiden können im Hintergrund frei geschaltet werden.
Das UI-Plug-in zum Hochladen von Dateien und Bildern verwendet den Fine-Uploader.
Im Frontend verwendet JPress JQuery, Bootstrap, Adminlte, Font-awesome, X-editable, Fastclick, Toastr, Tag-Editor, Pace, Layer usw.
Was die Sicherheit angeht, habe ich persönlich große Anstrengungen unternommen und viel Arbeit in den Bereichen XSS, CSRF, SQL-Injection, Cookie-Sicherheit usw. geleistet, aber es dauert noch eine Ewigkeit, bis mehr Leute gemeinsam an der Sicherheit arbeiten . Thema. (Aber für unerfahrene Freunde sollten diese Sicherheitsmaßnahmen es wert sein, gelernt und verstanden zu werden, oder?)
Um die verteilte Bereitstellung zu unterstützen, schreibt JPress HttpSession neu und verwendet ehcache, um die Sitzungsfunktion zu implementieren. Gleichzeitig ist das Projekt stark auf Cookies angewiesen, sodass kein Druck auf die verteilte Architektur ausgeübt wird.
JPress verfügt über die folgenden Funktionen1. Licht.
Es ist so leicht wie nur 8 Datentabellen, kann aber fast alle Funktionen von WordPress realisieren. Die abhängigen JAR-Pakete sind ebenfalls extrem leicht. Derzeit gibt es nur cos-26Dec2008.jar, druid-1.0.16.jar, ehcache-2.7.5.jar, fastjson-1.2.7.jar, freemarker-2.3.23. jar und javax. mail.jar, jfinal-2.2-bin-with-src.jar, jfinal-weixin-1.7-bin-with-src.jar, jsoup-1.8.3.jar, log4j-1.2.17.jar , MySQL-Connector – 14 JAR-Pakete: java-5.1.36.jar, slf4j-api-1.7.7.jar, slf4j-log4j12-1.7.7.jar, jetty-server-8.1.8.jar, darunter jetty -server-8.1 .8.jar ist nicht erforderlich und dient nur zur Erleichterung des Debuggens.
Das gesamte Projekt einschließlich des JAR-Pakets ist etwa 20 MB groß.
2. Schnell.
Egal wie komplex die Seite ist, JPress reagiert in fast 10 Millisekunden. Gleichzeitig unterstützt JPress Alibaba Cloud, Qiniu, Youpaiyun und andere CDNs als Beschleunigung und unterstützt die verteilte Bereitstellung und andere Funktionen Kong, es kann nur mit „schnell“ beschrieben werden.
3. Flexibel.
JPress schlägt das Konzept „Vorlage als Modell“ vor. Vorlagenersteller können JPress zum Erstellen von Blogs, Nachrichtensystemen, Foren, Q&A-Communities, Einkaufszentren usw. verwenden. Dank der flexiblen Plug-in-Funktion können damit nahezu alle Arten erstellt werden der Website.
4. Inland.
Da es in China hergestellt wird, entspricht es eher den Bedürfnissen der Chinesen. JPress ist natürlich in das öffentliche WeChat-Konto integriert. JPress verfügt über eine integrierte SMS-Versandfunktion von Alibaba Big Fish und unterstützt in Zukunft die E-Mail-Versandserver für WeChat-Vorlagen hinzugefügt werden, und andere Funktionen, die eher den Bedürfnissen der Chinesen entsprechen.
Das Wichtigste ist
JPress verwendet die lockerste LGPL-Open-Source-Lizenz, die nicht auf dem gleichen Niveau ist wie inländische „Open-Source“-Produkte, die private Lizenzen verwenden.
jpressv4.0.9-Update-Protokoll:
Neu: Funktion zum Hochladen von Videos zu Artikeleditoren hinzugefügt
Neu: HTML2wxml-API und zugehörige Dokumentation hinzugefügt
Optimierung: Artikel, Produkte, Seiten-APIs und Dokumentation aktualisieren
Optimierung: Verbessern Sie APIs im Zusammenhang mit Produkten, Einkaufswagen und Gutscheinen
Fix: Der Titel des Artikeleditors und die Fettschrift sind ungültig.
Fix: Nach dem Import von JPress in Eclipse war der erhaltene Ressourcenpfad in einigen Fällen falsch.
Reparatur: Menu.isUrlEquals wurde im sekundären Verzeichnis möglicherweise falsch ermittelt
Fix: Benutzer des Miniprogramms können keine Optionsinformationen erhalten, wenn sie nicht angemeldet sind, und die Eingabeaufforderungsinformationen sind falsch.
Fix: Nach dem Deaktivieren des Bestätigungscodes wird das Eingabefeld für den Bestätigungscode für die Hintergrundanmeldung nicht angezeigt.
JPress-Seitenanzeige