• 1.29.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-12 11:56:16 +00:00 | 34 commits to main since this release

    Einwilligung ohne Neuladen

    Wer im Einwilligungshinweis oder am Knopf eines eingebetteten Inhalts (z. B. YouTube) zustimmt, bleibt jetzt auf der Seite: Die Entscheidung wird im Hintergrund gespeichert, der Inhalt erscheint an seiner Stelle, der Hinweis verschwindet. Ohne JavaScript funktioniert alles wie bisher mit Neuladen.

    • Neues kleines Skript consent.js, nur solange eine Einwilligung offen ist
    • Die Adresse eines eingebetteten Inhalts steht weiterhin erst nach der Einwilligung auf der Seite
    • Keine Migration

    Details: ADR 115 in docs/ARCHITECTURE.md.

    Downloads
  • KantSites 1.28.1
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-12 11:34:16 +00:00 | 39 commits to main since this release

    Läuft jetzt auch bei IONOS ohne Nacharbeit.

    • Kein weißer 500er mehr bei IONOS: Die Umschreibregel in public/.htaccess lief dort in eine Schleife, jede Adresse außer index.php endete mit einem Fehler von Apache. Die .htaccess setzt jetzt RewriteBase / und schreibt index.php nicht noch einmal um – wie bei WordPress.

    Hinweis: Die Domain muss wie bisher direkt auf den Ordner public/ zeigen. Beim Update wird die .htaccess ersetzt; eingeschaltete HTTPS- und HSTS-Zeilen bleiben erhalten. Keine Datenbankmigration.

    Downloads
  • KantSites 1.28.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-09 16:43:12 +00:00 | 42 commits to main since this release

    Update mit einem Klick und keine leere Fehlerseite mehr.

    • Update wie bei reiseSoft: Die Systemseite sucht beim Öffnen selbst nach einer neuen Fassung und zeigt ihre Hinweise. Ein Klick, eine Bestätigung – dann laufen Sichern, Laden, Umschalten, Datenbank anpassen und Prüfen in einem Vorgang, mit Fortschritt live.
    • Automatisch zurück: Scheitert die Migration oder antwortet die Startseite nicht, kommen Code, Dateien und Datenbank der alten Fassung zurück.
    • Wartungsseite statt 500: Bricht etwas, sehen Besucher eine Wartungsseite (503), auch wenn das System gar nicht startet.
    • Fehlerprotokoll: Die Ursache steht in var/log/notfall.log – per FTP lesbar.

    Hinweis: Der neue Update-Ablauf gilt für Updates ab 1.28.0. Das Update auf 1.28.0 selbst läuft noch über den bisherigen Weg. Keine Datenbankmigration.

    Downloads
  • KantSites 1.27.1
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-09 15:36:26 +00:00 | 45 commits to main since this release

    Das Update läuft jetzt in einem Zug durch – wie bei WordPress – und Türkisch ist vollständig.

    Update ohne 500er. Bisher endete die Anfrage, die die neuen Dateien einspielt, mit einem 500er, obwohl das Update gelungen war; danach musste man zurück und „Migrationen ausführen“ drücken. Jetzt zeigt sie nach dem Tausch nur noch „Update wird abgeschlossen …“ und ruft den Abschluss selbst auf: Migrationen, Wartungszustand aus, zurück zur Systemseite mit „Update abgeschlossen“. Ein Klick genügt. Der Abschluss ist mit einem Einmalschlüssel und der Administratorrolle geschützt; neu laden schadet nicht.

    Wichtig: Das wirkt ab dem nächsten Update. Das Update von 1.27.0 auf diese Fassung läuft noch mit dem alten Code: erscheint danach ein 500er, einfach zurück zur Systemseite und „Migrationen ausführen“ (für 1.27.1 steht keine an).

    Türkisch vollständig. Alle festen Texte der Website und alle Meldungen der Formulare gibt es jetzt auf Türkisch – vorher erschienen Teile davon auf Englisch. Stehen zwei Sprachwahlen auf einer Seite (etwa im Kopf und im Fuß), heißen sie für Vorlesesoftware jetzt verschieden.

    Keine Migration, kein neues Dokumentschema (ADR 112).

    Downloads
  • KantSites 1.27.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-09 15:00:54 +00:00 | 49 commits to main since this release

    Websites in mehreren Sprachen – ohne eine Seite für jede Sprache neu zu bauen.

    Sprachen einschalten. Unter Einstellungen → Sprachen weitere Sprachen anhaken (Englisch, Französisch, Italienisch, Spanisch, Niederländisch, Polnisch, Türkisch, Russisch, Arabisch). Ohne Häkchen bleibt alles wie bisher – kein Umschalter, keine Felder, keine neuen Adressen.

    Übersetzen im Editor. Oben steht der Umschalter DE | EN. Auf Englisch zeigt die Seitenleiste alle Texte der Seite mit dem deutschen Original darüber, dazu Fehlt / Übersetzt / „Original geändert“, Filter, „Original übernehmen“ und „Übersetzung passt“. Aufbau und Gestaltung bleiben einmal da; ein leeres Feld zeigt den deutschen Text. Undo, Entwurf, Veröffentlichen und Fassungen gelten für alle Sprachen gemeinsam. Kopf, Fuß und Sektionen werden genauso übersetzt.

    Auf der Website. /en und übersetzte Adressen wie /en/services, mit lang, Canonical, hreflang, og:locale und Sitemap. Links auf übersetzte Seiten führen zur Übersetzung. Neuer Baustein Sprachwahl (Kürzel oder Namen). Menüs bekommen je Eintrag eine Beschriftung je Sprache, feste Texte wie „Zum Inhalt springen“ oder „Nach oben“ erscheinen übersetzt.

    Formulare, Beiträge, Einwilligung, 404. Formularfelder, Optionen, Button und Erfolgsmeldung je Sprache; Meldungen und Schritte in der Sprache, Einsendung und E-Mail bleiben deutsch. Beitragslisten und Archive (/en/beitraege) mit übersetzten Titeln, Kategorienamen und Einwilligungstext unter Einstellungen → Sprachen, eine englische 404.

    Formularverwaltung übersichtlicher. Erst eine Übersicht mit einer Zeile je Formular, bearbeitet wird auf einer eigenen Seite. Jedes Feld ist eine Zeile, Details sind zugeklappt.

    Dokumentschema v27 und Migration 20261009000100 (neue Tabelle, kein Eingriff in Bestehendes) – nach dem Update php vendor/bin/doctrine-migrations migrate --no-interaction (der Updater macht das selbst). Seiten mit Übersetzungen oder Sprachwahl brauchen diese Fassung. Lighthouse auf einer englischen Seite: Leistung mobil 97, Desktop 99, Barrierefreiheit, Best Practices, SEO und agentisches Browsing jeweils 100. Bilder sind bewusst für alle Sprachen gleich (ADR 111).

    Downloads
  • KantSites 1.26.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-07 20:39:57 +00:00 | 52 commits to main since this release

    Menüeinträge können jetzt Buttons sein – mit Symbol, eigenen Farben und eigener Anzeige auf dem Telefon.

    In der Menüverwaltung. Einen Eintrag aufklappen und „Als Button darstellen“ anhaken. Dann stehen Form, Darstellung und Größe (leer = Website-Standard unter Design → Buttons), Fläche und Schrift – auch beim Überfahren – und die Symbolfarbe mit der Farbpalette zur Wahl. Das Symbol wird wie im Editor im Fenster gewählt, dazu Bewegung beim Überfahren und „Nur das Symbol zeigen“. Eine Vorschau zeigt den Button normal und beim Überfahren.

    Auf dem Telefon. Je Button wählbar: im aufgeklappten Menü (volle Breite), neben dem Menü-Knopf oder dort nur als Symbol. Neben dem Knopf ist der Button kompakt und bleibt mit ihm in einer Zeile; im aufgeklappten Menü steht er dann nicht noch einmal.

    Behoben: In der Verwaltung schaltete ein Klick in die leere Mitte einer Häkchenzeile das Häkchen um – bei „Als Button darstellen“ klappten so die Einstellungen zu. Jetzt sind nur Häkchen und Text klickbar.

    Keine Änderung am Dokumentschema (ADR 110). Menüs mit Buttons lassen sich erst ab dieser Fassung speichern – Installationen also zuerst aktualisieren. Einträge mit Unterpunkten können kein Button sein.

    Downloads
  • KantSites 1.25.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-07 08:01:18 +00:00 | 56 commits to main since this release

    98 Symbole statt 33, ausgewählt in einem eigenen Fenster, und das Symbol im Button lässt sich jetzt richtig gestalten.

    Mehr Symbole. 98 Symbole in sieben Kategorien: Pfeile, Kontakt & Ort, Handel & Geld, Dateien & Medien, Personen & Sicherheit, Haus & Handwerk, Allgemein. Neu sind unter anderem Warenkorb, Euro, LKW, Paket, Karte, Navigation, Kamera, Drucken, Teilen, Schloss, Auszeichnung, Werkzeug, Hammer, Malerrolle, Baum, Blatt, Sonne, Strom, Solar, Auto und Warnung. Sie stehen Button, Symbol und Symbolkarte zur Verfügung.

    Auswahl im Fenster. Im Panel steht nur noch das gewählte Symbol mit „Ändern …“. Das Fenster zeigt die Kategorien links und die Symbole mit Namen rechts, öffnet bei der Kategorie des aktuellen Symbols und lässt sich mit den Pfeiltasten bedienen. Escape schließt ohne Änderung, beim Button gibt es dort „Kein Symbol“.

    Design → Symbol. Farbe des Symbols, eine Fläche dahinter, Größe, Innenabstand und Ecken der Fläche, Drehung und Abstand zum Text – je Gerät und mit eigenem Wert beim Überfahren. So wird etwa ein weißer Pfeil in einem roten Kreis möglich, der sich beim Überfahren dreht.

    Verhalten am Button. „Beim Überfahren“: ruhig, rückt oder erscheint erst. „Nur das Symbol zeigen“ macht einen quadratischen Knopf in der Höhe der anderen Buttons; die Beschriftung bleibt für Vorlesesoftware erhalten.

    Dokumentschema v26 (ADR 109). Keine Migration nötig: ohne eigene Wahl sieht jeder Button aus wie bisher. Seiten mit den neuen Einstellungen lassen sich erst ab dieser Fassung speichern – Installationen also zuerst aktualisieren.

    Downloads
  • KantSites 1.24.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-07 07:39:40 +00:00 | 58 commits to main since this release

    Ein Button kann jetzt ein Symbol tragen – vor oder hinter dem Text, oder gar keins. Ausgewählt wird mit Kacheln statt einer Liste.

    Symbol am Button. Unter Button → Inhalt → Symbol zeigen Kacheln jedes Symbol als Vorschau, geordnet nach Pfeilen, Kontakt und Allgemein. „Kein Symbol“ entfernt den Pfeil, darunter steht Symbol steht: Vor dem Text / Nach dem Text. Die Kacheln lassen sich auch mit den Pfeiltasten und Enter bedienen. Ohne eigene Wahl trägt ein Button wie bisher den schrägen Pfeil hinter dem Text – bestehende Seiten sehen unverändert aus, und eigenes CSS auf .button-arrow (etwa zum Ausblenden oder Drehen des Pfeils) wirkt weiter.

    Dreizehn neue Symbole. Pfeil nach unten, Winkel, Kalender, Nachricht, Senden, Download, Dokument, Abspielen, Suche, Herz, Info, Plus und Person, damit 33 insgesamt. Sie stehen allen Bausteinen mit Symbol offen. Symbol und Symbolkarte wählen ihr Symbol jetzt mit derselben Kachelauswahl statt mit einer Liste englischer Namen.

    Dokumentschema v25 (ADR 108). Keine Migration nötig: Dokumente ohne Symbolwahl bleiben, wie sie sind. Ein Button mit gewähltem Symbol lässt sich erst ab dieser Fassung speichern – Installationen also zuerst aktualisieren.

    Downloads
  • KantSites 1.23.1
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-10-06 17:47:07 +00:00 | 60 commits to main since this release

    Knöpfe können jetzt anrufen und E-Mails öffnen, und der Pfeil im Knopf hat die Farbe der Schrift.

    tel: und mailto: an Knöpfen. Button, Symbolkarte, Handlungsaufruf, Symbol und verlinktes Bild nehmen als Linkziel jetzt auch tel:+49… und mailto:… an, auch mit Betreff (mailto:info@…?subject=…). Menüeinträge und Links im Text konnten das schon, nur die Bausteine waren strenger. Ein Knopf „Jetzt anrufen“ musste bisher als Textlink im Knopf-Aussehen gebaut werden. Die Nummer steht ohne Leerzeichen da (tel:+4972296992826), wie im Menü. Buchstaben in der Nummer oder eine ungültige Adresse werden abgewiesen. Bildquellen bleiben bei Pfad und HTTPS.

    Der Pfeil im Knopf folgt der Schriftfarbe. Der Pfeil ist ein Symbol und nahm deshalb die Akzentfarbe des Designs an. Auf einem roten Knopf mit weißer Schrift stand so ein grüner Pfeil, und auch eine andere Schriftfarbe beim Überfahren erreichte ihn nicht. Jetzt hat er immer die Farbe der Schrift. Wer den Pfeil bewusst anders färben will, tut das weiter im eigenen CSS des Knopfs.

    Dazu kommt lokal die Website „Hüfner Gartenbau“ als neunte Referenzinstallation. Keine Migration nötig. Dokumente mit tel: oder mailto: an einem Knopf lassen sich erst ab dieser Fassung speichern.

    Downloads
  • KantSites 1.23.0
    CMS quality / php (8.2) (push) Canceled after 0s
    CMS quality / php (8.4) (push) Canceled after 0s
    CMS quality / browser (push) Canceled after 0s
    CMS quality / mysql (push) Canceled after 0s
    Stable

    kantarci released this 2026-09-23 08:38:01 +00:00 | 63 commits to main since this release

    Eigenes CSS kann jetzt Pseudo-Elemente gestalten, und das Holen von Schriften lässt die anderen Schriften stehen.

    content im eigenen CSS. Ein kurzer Text in Anführungszeichen ist jetzt für content erlaubt, etwa &::after{content:'';…}. Damit gehen Linien, Verläufe über einem Foto oder ein Buchstabe als Wasserzeichen, ohne dass Vorlesesoftware sie als Inhalt vorliest. Erlaubt sind höchstens 40 Zeichen aus Buchstaben, Ziffern und wenigen Satzzeichen. Ein <, ein Backslash oder ein zweites Anführungszeichen wird abgewiesen, und alle anderen Eigenschaften bleiben ohne Anführungszeichen.

    Schriften ergänzt statt überschrieben. „Schriften auf diesen Server holen“ und cms:fonts:fetch schrieben fonts.css bisher nur mit den Schriften des aktuellen Designs neu. Wechselte ein Design die Schrift, fehlten danach andere Schriften, deren Dateien noch dalagen. Jetzt werden nur die Regeln der geholten Familien ersetzt.

    Variable Schriften einmal statt je Schnitt. Manche Google-Schriften, etwa DM Sans, sind eine einzige Datei für alle Stärken. Die Website verlinkte und lud sie bisher je Schnitt vor, bei drei Stärken also dieselben Bytes dreimal. Jetzt steht sie einmal mit Gewichtsbereich im Stylesheet, und vorgeladen wird nur diese Datei. Wirksam wird das nach einem erneuten Holen der Schriften.

    Dazu kommt lokal die Vorab-Seite „Kantarci Markt – Neueröffnung“ als achte Referenzinstallation. Keine Migration nötig.

    Downloads