JPress , alternatif java untuk wordpress, dikembangkan menggunakan JFinal. Mendukung hampir semua fungsi yang mirip dengan WordPress, seperti template, plug-in, dll. Sementara itu, dalam hal template, JPress mengedepankan konsep "template as model", yang memfasilitasi produsen template untuk secara fleksibel membuat model bisnis, menghilangkan fungsi rumit seperti widget, dan lebih fleksibel dan ringkas dibandingkan WordPress dalam hal produksi template dan plug-in.
Namun, JPress bukanlah WordPress versi Java, melainkan terintegrasi secara alami dengan platform publik WeChat dan mengintegrasikan banyak platform cloud domestik, platform pengiriman SMS, dan pengiriman email. Konsep asli "template sebagai model" tidak tersedia di WordPress, dan hanya berpengalaman Hanya pemain wordpress yang dapat memahami hubungan halus di dalamnya. Pada saat yang sama, fungsi sinkronisasi artikel dari sinkronisasi artikel WeChat, platform publik QQ, Toutiao, Yidian, dan media baru lainnya akan ditambahkan di masa mendatang, menjadikannya lebih domestik dan terlokalisasi.
JPress dari segi fungsionalitasMendukung model khusus, yang ditentukan melalui templat, bukan fungsi latar belakang. Pada saat yang sama, konten model mendukung kategori khusus, misalnya model artikel mendukung topik, kategori, tag, dan kategori lainnya.
Mendukung beberapa mesin templat. Freemarker digunakan secara default. Pembuat templat dapat menggunakan mesin lain seperti thymeleaf untuk rendering. Ini juga mendukung pengeditan templat online di latar belakang (saat ini hanya mesin freemarker yang didukung).
Mendukung beberapa tipe database dan dapat mengkonfigurasi database yang berbeda (saat ini hanya mysql yang didukung).
Mendukung banyak editor, peralihan bebas antara pengeditan visual latar belakang dan pengeditan penurunan harga, dan mendukung fungsi seperti pengeditan gambar online dan penyorotan kode secara default.
Ini mendukung plug-in, dan Anda dapat menyelesaikan pengembangan plug-in hanya dengan beberapa baris kode. Sudah ada contoh plug-in helloworld di git.oschina.net dan github.
Mendukung URL khusus dan penyesuaian gaya URL konten situs web.
Dukungan API memfasilitasi APP atau pihak ketiga lainnya untuk memanggil data.
Dukungan internasionalisasi, gunakan JPress untuk membuat situs web dalam bahasa apa pun dengan mudah.
Fungsi SEO minimalis, Anda dapat mengatur SEO secara terpisah untuk setiap artikel, setiap kategori, dan setiap tag, serta mendukung keluaran peta situs.
Pendaftaran pengguna mendukung verifikasi email dan SMS. Saat ini, penyedia layanan SMS hanya mendukung Alibaba Dayu.
Mendukung pengaturan CDN, termasuk Qiniu, Alibaba Cloud, Youpai Cloud, dll.
Gambar yang diunggah mendukung pengaturan tanda air, dan gambar yang diunggah secara otomatis dipotong menjadi berbagai ukuran gambar yang diperlukan oleh template untuk memastikan tampilan gambar tidak melebar.
Login pengguna mendukung login pihak ketiga, dan mendukung QQ, WeChat, Weibo, Open Source China, Github, Facebook, Twitter, dan LinkedIn (saat ini hanya login ke QQ, WeChat, Weibo, Open Source China, dan Github yang selesai).
JPress di WeChatMendukung pengaturan menu WeChat.
Mendukung balasan otomatis, penambahan kata kunci, dan konten balasan.
Mendukung balasan default, antara lain: saat pengguna memperhatikan, saat memasuki layanan multipelanggan, saat keluar dari layanan multipelanggan, saat mengirim gambar, saat mengirim suara, saat mengirim video, saat mengirim lokasi, saat mengirim koneksi, saat pengguna memindai kode QR dengan parameter, saat pengguna bergetar.
Semua balasan otomatis atau balasan default mendukung fungsi "balasan lanjutan", seperti membalas artikel, membalas ke URL... Balasan lanjutan adalah balasan khusus yang ada di JPress, tetapi dapat dikonfigurasi sepenuhnya, dan lebih banyak "balasan lanjutan" akan ditambahkan di Fungsi masa depan.
Balasan otomatis atau balasan default mendukung balasan plug-in, dan memanggil plug-in JPress untuk menyelesaikan balasan.
Mendukung pencarian artikel. Membalas kata kunci akan menghasilkan artikel yang cocok dengan kata kunci.
Di masa depan, fungsi praktis seperti sinkronisasi artikel atau impor WeChat akan didukung.
JPress di sisi teknisDengan bangga menggunakan JFinal sebagai intinya, JPress juga memanfaatkan arsitektur fleksibel JFinal. Dalam sistem sumber terbuka JFinalframework, JPress peduli dengan implementasi setiap baris logika dan memperhatikan kualitas setiap baris kode. Ini harus menjadi salah satu praktik terbaik JFinal, jadi ini juga harus menjadi item yang harus dibaca setiap JFinaler.
Gunakan Freemarker dan thymeleaf sebagai mesin template. Cache unik yang dibangun di JPress membuat kecepatan rendering UI tidak bergantung pada mesin template.
Tinymce digunakan sebagai editor visual dan simplemde digunakan sebagai editor penurunan harga. Keduanya dapat dialihkan secara bebas di latar belakang.
Plugin UI untuk pengunggahan file dan gambar menggunakan pengunggah halus.
Di bagian depan, JPress menggunakan jquery, bootstrap, adminlte, font-awesome, x-editable, fastclick, toastr, tag-editor, pace, layer, dll.
Dalam hal keamanan, meskipun saya pribadi telah melakukan banyak upaya dan telah melakukan banyak pekerjaan di XSS, CSRF, injeksi SQL, keamanan Cookie, dll., masih diperlukan lebih banyak orang untuk menggali dan meningkatkan Keamanan adalah sebuah keabadian . (Tetapi bagi teman-teman pemula, keamanan ini patut dipelajari dan dipahami, bukan?)
Untuk mendukung penerapan terdistribusi, JPress menulis ulang HttpSession dan menggunakan ehcache untuk mengimplementasikan fungsi sesi. Pada saat yang sama, proyek ini sangat bergantung pada cookie, sehingga tidak ada tekanan pada arsitektur terdistribusi.
JPress memiliki beberapa fitur berikut1. Ringan.
Ringan hanya dengan 8 tabel data, tetapi dapat merealisasikan hampir semua fungsi wordpress. Paket jar dependen juga sangat ringan. Saat ini, hanya ada cos-26Dec2008.jar, druid-1.0.16.jar, ehcache-2.7.5.jar, fastjson-1.2.7.jar, freemarker-2.3.23. jar, dan 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 , konektor mysql- 14 paket jar: java-5.1.36.jar, slf4j-api-1.7.7.jar, slf4j-log4j12-1.7.7.jar, jetty-server-8.1.8.jar, di antaranya jetty -server-8.1 .8.jar tidak diperlukan dan hanya digunakan untuk memfasilitasi debugging.
Keseluruhan proyek termasuk paket jar berukuran sekitar 20MB.
2. Cepat.
Tidak peduli seberapa rumit halamannya, JPress merespons dalam waktu hampir 10 milidetik. Pada saat yang sama, JPress mendukung Alibaba Cloud, Qiniu, Youpaiyun, dan CDN lainnya sebagai akselerasi, dan mendukung penerapan terdistribusi dan fungsi lainnya Kong, itu hanya bisa digunakan dengan "cepat" untuk mendeskripsikan.
3. Fleksibel.
JPress mengusulkan konsep "templat sebagai model". Produsen template dapat menggunakan JPress untuk membangun blog, sistem berita, forum, komunitas Tanya Jawab, pusat perbelanjaan... ditambah fungsi plug-in yang fleksibel, dapat digunakan untuk membangun hampir semua jenis dari situs web.
4. Domestik.
Karena buatan China, lebih sesuai dengan kebutuhan masyarakat China. JPress secara alami terintegrasi dengan akun publik WeChat. JPress memiliki fungsi pengiriman SMS bawaan dari Alibaba Big Fish, dan mendukung kotak surat QQ, 163 kotak surat, dll. Sebagai server pengirim surat di masa depan, pengiriman pesan template WeChat dan pengguna notifikasi ditambah, dan fungsi-fungsi lain yang lebih sesuai dengan kebutuhan masyarakat Tionghoa.
Yang paling penting adalah
JPress menggunakan lisensi open source LGPL yang paling longgar, yang tidak setingkat dengan produk "open source" dalam negeri yang menggunakan lisensi swasta.
log pembaruan jpressv4.0.9:
Baru: Menambahkan fungsi mengunggah video ke editor artikel
Baru: Menambahkan API html2wxml dan dokumentasinya
Optimasi: Perbarui artikel, produk, API halaman, dan dokumentasi
Pengoptimalan: Tingkatkan API yang terkait dengan produk, keranjang belanja, dan kupon
Cara Memperbaiki: Judul dan huruf tebal editor artikel tidak valid.
Perbaiki: Setelah mengimpor JPress ke Eclipse, jalur sumber daya yang diperoleh salah dalam beberapa kasus.
Perbaikan: Menu.isUrlEquals mungkin salah ditentukan di direktori sekunder
Perbaiki: Pengguna program mini tidak dapat memperoleh informasi opsi ketika mereka tidak masuk, dan informasi yang diminta salah.
Cara Mengatasinya: Setelah mematikan kode verifikasi, kotak input kode verifikasi login background tidak ditampilkan.
Tampilan halaman JPress