Top.Mail.Ru
  • CMS «GIRVAS»

    Un sistema di gestione dei contenuti flessibile e gratuito, che consente di creare un sito di qualsiasi tipologia.

    Con noi è più facile!

  • Assolutamente gratuito

    Basta usare sistemi di gestione vecchi e a pagamento! È giunta l'era delle nuove soluzioni - scegliete «GIRVAS»!

  • Soluzione careliana

    «GIRVAS» è stato sviluppato nella Repubblica di Carelia ed è iscritto nel Registro del software russo del Ministero dello sviluppo digitale della Federazione Russa (numero di registrazione n. 25012 del 27.11.2024).

0.3.0 "Šuja"

CMS "GIRVAS" Rilascio del 12 maggio 2026 nella fase di sviluppo "Šuja".

Ultime modifiche

QueryBuilder: aggiunto il supporto per JOIN, espressioni CASE e indici

  • aggiunto Enum IndexType con i tipi di indice (BTREE, HASH, GIST, GIN, SPGIST, BRIN, FULLTEXT)
  • aggiunta la classe ClauseJoin per il supporto JOIN nelle query SELECT (INNER, LEFT, RIGHT, FULL)
  • implementata la generazione adattiva delle condizioni JOIN per MySQL e PostgreSQL
  • aggiunta la classe CaseExpression per la costruzione di espressioni CASE in SQL
  • implementati i metodi whenJsonLike() e whenJsonArrayContains() per la ricerca JSON
  • aggiunto il metodo statico CaseExpression::sum() per la somma di espressioni CASE
  • aggiunto il metodo factory createCase() in QueryBuilder
  • aggiunta la classe StatementCreateIndex per la costruzione di query CREATE INDEX
  • aggiunta la classe StatementDropIndex per la costruzione di query DROP INDEX
  • implementato il supporto per UNIQUE, CONCURRENTLY, IF NOT EXISTS/IF EXISTS, indici parziali con WHERE
  • aggiunti i metodi setStatementCreateIndex() e setStatementDropIndex() in QueryBuilder
  • corretto l"escape delle espressioni CASE in addSelections() per PostgreSQL
  • aggiunta la cache dei dati inizializzati (initData) nella classe EntryCategory

Aggiunto il motore di ricerca integrato per le voci

  • aggiunto il metodo search() nella classe Entries per la ricerca full-text con localizzazione
  • aggiunto il metodo getCountBySearch() nella classe Entries per la paginazione dei risultati
  • implementato il ranking dei risultati di ricerca per rilevanza con pesi dei campi configurabili
  • implementata la ricerca AND con suddivisione della query in parole e considerazione della punteggiatura
  • aggiunta la classe PageSearch per visualizzare la pagina di ricerca pubblica
  • corretto il decoding URL della query di ricerca in PageSearch

Aggiunta la pagina di archivio delle voci con navigazione per date

  • aggiunti i metodi getByDateRange() e getCountByDateRange() nella classe Entries per la selezione in un periodo
  • aggiunti i metodi getAvailableYears() e getAvailableMonths() nella classe Entries per la navigazione nell"archivio
  • aggiunta la classe PageArchive per la visualizzazione della pagina di archivio
  • implementata la navigazione per anni e mesi con conteggio del numero di voci
  • getMonthName() reso metodo statico pubblico con recupero dei nomi dalla localizzazione
  • la navigazione dell"archivio buildArchiveNavigation() è stata riscritta con DOMDocument
  • aggiunte le pagine di archivio alla Sitemap (/archive, /archive?year=AAAA, /archive?year=AAAA&month=MM)

Aggiunto il supporto per categorie figlie e briciole di pane gerarchiche

  • aggiunti i metodi getByCategoriesIDs() e getCountByCategoriesIDs() nella classe Entries
  • aggiunto il metodo getChildCategoriesIDs() nella classe EntryCategory per il recupero ricorsivo delle categorie figlie
  • aggiunto il metodo getParentChain() nella classe EntryCategory per la gerarchia delle briciole di pane
  • aggiornati i metodi getEntries() e getEntriesCount() con il parametro includeChildren
  • la pagina delle categorie PageEntries visualizza le voci tenendo conto delle categorie figlie
  • le briciole di pane mostrano l"intera gerarchia dalla radice alla categoria corrente

Aggiunta la creazione automatica degli indici durante l"installazione del CMS

  • aggiunto un blocco di creazione indici al passo 6 dell"installazione dopo la generazione delle tabelle
  • indici per le tabelle entries, entries_categories, entries_comments, pages_static
  • indici per le tabelle users, users_sessions, forms_data, web_channels, metrics
  • indici univoci su name, login, email
  • per PostgreSQL aggiunti indici GIN sui campi JSONB e un indice parziale per le voci pubblicate
  • tutti gli indici vengono creati con IF NOT EXISTS, gli errori vengono registrati senza interrompere l"installazione

Aggiunta una sottosezione nella sezione "Contenuti" del pannello di amministrazione: "Blocchi di contenuto"

  • Introdotta una nuova sottosezione "Blocchi di contenuto" nella sezione "Contenuti"

Aggiunto un analizzatore SEO del contenuto integrato con supporto markdown

  • implementata la classe SeoAnalyzer per il controllo di cinque aree: titolo, meta descrizione, parole chiave, contenuto, url
  • l"analizzatore verifica la presenza di parole chiave nel titolo SEO, nella meta descrizione, nei titoli h2-h6, nel primo paragrafo e nell"intero testo
  • controllo delle duplicazioni: avviso se i campi SEO sono vuoti e duplicano i campi principali
  • il parser markdown supporta gli attributi json di link e immagini nella sintassi del CMS "GIRVAS"
  • ricerca di url nudi con raccomandazione di formattarli come link markdown
  • verifica del testo alt delle immagini e di rel=nofollow per i link esterni
  • gerarchia dei titoli: h1 escluso dal controllo del contenuto poiché generato dal tema
  • indicazione a colori e barre di avanzamento per ogni sezione
  • blocco di raccomandazioni con passaggi concreti per il miglioramento
  • funziona completamente lato client, senza richieste al server
  • localizzazione tramite _t() con formato compatibile con PHP %s, %d, %.nf
  • interfaccia integrata nel pannello laterale dell"editor di pagine e voci

Corretti bug minori

Rilascio precedente: 0.2.9 "Voitsy"

Traduzioni

Commenti

Non ci sono commenti a questo articolo.