Bludit Dokumentation https://docs.bludit.com/de/ Requirements, installation and upgrade guides for Bludit CMS Flat-File. How to create a theme, how to create a plugin and all information for developers. Sun, 19 Sep 2021 22:10:24 +0200 Installation on GNU/Linux https://docs.bludit.com/de/advanced/installation-on-gnu-linux <p>All examples are out of the box installation, with Nginx Webserver. If you have the steps for other distributions, you can publish it on the <a href="proxy.php?url=https://forum.bludit.org">forum</a> or just edit this page on Github, you can find a button at the end of the page with the link.</p> <h3>Content</h3> <ol> <li><a href="proxy.php?url=#ubuntu">Installation on Ubuntu 16.04</a></li> <li><a href="proxy.php?url=#centos">Installation on Centos 7 / RedHat 7</a></li> </ol> <hr /> <h2><a id="ubuntu"></a> Installation on Ubuntu 16.04 LTS</h2> <p>Considerations:</p> <ul> <li>PHP-FPM is running under the username <code>www-data</code>.</li> <li>PHP-FPM is listen on Unix socket on <code>unix:/run/php/php7.0-fpm.sock</code>.</li> <li>Nginx is running under the username <code>www-data</code>.</li> <li>You don't have installed any other webserver.</li> <li>This is a basic configuration, considere read more for production environments.</li> </ul> <p>Install Nginx Webserver, PHP and some tools.</p> <pre><code>$ sudo apt install -y nginx php-fpm php-dom php-mbstring php-cli php-gd php-opcache unzip wget</code></pre> <p>Configure Nginx.</p> <pre><code>$ sudo rm -f /etc/nginx/sites-enabled/*</code></pre> <p>Add a new file with the virtual server block in <code>/etc/nginx/conf.d/bludit.conf</code></p> <pre><code>server { listen 80; server_name _; root /www/bludit; index index.php; location ~ \.php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; include fastcgi.conf; } location / { try_files $uri $uri/ /index.php?$args; } }</code></pre> <p>Download the latest version of Bludit and uncompress it.</p> <pre><code>$ mkdir /www $ cd /www $ wget https://s3.amazonaws.com/bludit-s3/bludit-builds/bludit_latest.zip $ unzip bludit_latest.zip $ sudo chown -R www-data:www-data /www</code></pre> <p>Restart the services to load the new configurations.</p> <pre><code>$ sudo service php7.0-fpm restart $ sudo service nginx restart</code></pre> <p>Open your browser and navigate to <a href="proxy.php?url=http://localhost">http://localhost</a>, finish with the installation.</p> <hr /> <h2><a id="centos"></a> Installation on Centos 7 / Red Hat 7</h2> <p>Considerations:</p> <ul> <li>PHP-FPM is running under the username <code>nginx</code>.</li> <li>PHP-FPM is listen on Unix socket on <code>unix:/run/php/php-fpm.sock</code>.</li> <li>Nginx is running under the username <code>nginx</code>.</li> <li>You don't have installed any other webserver.</li> <li>This is a basic configuration, considere read more for production environments.</li> </ul> <pre><code>$ sudo yum install -y epel-release</code></pre> <p>Install Nginx Webserver, PHP and some tools.</p> <pre><code>$ yum install -y nginx php-fpm php-cli php-dom php-mbstring php-zip php-gd</code></pre> <p>Configure Nginx, add a new file with the virtual server block in <code>/etc/nginx/conf.d/bludit.conf</code></p> <pre><code>server { listen 80; server_name _; root /www/bludit; index index.php; location ~ \.php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; include fastcgi.conf; } location / { try_files $uri $uri/ /index.php?$args; } }</code></pre> <p>Download the latest version of Bludit and uncompress it.</p> <pre><code>$ mkdir /www $ cd /www $ wget https://s3.amazonaws.com/bludit-s3/bludit-builds/bludit_latest.zip $ unzip bludit_latest.zip $ sudo chown -R nginx:nginx /www</code></pre> <p>Restart the services to load the new configurations.</p> <pre><code>$ sudo systemctl php-fpm restart $ sudo systemctl nginx restart</code></pre> <p>Open your browser and navigate to <a href="proxy.php?url=http://localhost">http://localhost</a>, finish with the installation.</p> So, 19 Sep 2021 22:10:24 +0200 bf2ed6796b8a4cef4adc632030646d47 Grundlagen https://docs.bludit.com/de/plugins/grundlagen <p>Plugins befinden sich bei Bludit im Verzeichnis <code>bl-plugins</code> und haben eine vordefinierte Verzeichnis- und Dateistruktur. Jedes Plugin ist in Bludit als Objekt mit Hooks (Methoden) dargstellt und ansprechbar.</p> <h3>Inhalt</h3> <ol> <li><a href="proxy.php?url=#hello-world">Hello World</a></li> <li><a href="proxy.php?url=#structure">Plugin Struktur</a></li> <li><a href="proxy.php?url=#information">Informationen über das Plugin</a></li> <li><a href="proxy.php?url=#name-description">Name und Beschreibung</a></li> </ol> <hr /> <h2><i id="hello-world"></i> Hello World</h2> <p>Das &quot;Hello World&quot; Plugin für Bludit.</p> <pre><code data-language="php"><?php class pluginHello extends Plugin { public function siteSidebar() { echo 'Hello world'; } } ?></code></pre> <h2><i id="structure"></i> Plugin Struktur</h2> <p>Das ist die vorgegebene Verzeichnis- und Dateistruktur für ein Plugin.</p> <pre><code>/bl-plugins/{PLUGIN_NAME}/ language/en.php metadata.json plugin.php</code></pre> <h2><i id="information"></i> Informationen über das Plugin</h2> <p>Die Informationen über das Plugin befinden sich in der JSON-Datei <code>metadata.json</code>.</p> <pre><code data-language="JSON">{ "author": "Bludit", "email": "", "website": "https://plugins.bludit.com", "version": "2.0", "releaseDate": "2017-10-10", "license": "MIT", "compatible": "2.0", "notes": "" }</code></pre> <h2><i id="name-description"></i> Name und Beschreibung</h2> <p>Der Name und die Beschreibung des Plugins befinden sich in der JSON-Datei <code>languages/en.json</code>.</p> <pre><code data-language="JSON">{ "plugin-data": { "name": "Hello World", "description": "Print Hello World in the sidebar" } }</code></pre> <div class="note"> <div class="title">Beispiele</div> Wir haben ein Gibhub-Repository mit Beispielen, welches du unter folgendem Link findest: <a href="proxy.php?url=https://github.com/bludit/examples">Bludit Beispiele</a>. </div> So, 19 Sep 2021 22:10:24 +0200 0847f45f3f8e4e3cc4da49d4a19e301c "Weiterlesen"-Link https://docs.bludit.com/de/inhalt/weiterlesen-link <p>Du kannst den Inhalt deiner Seite mit dem Tag <code>&lt;!-- pagebreak --&gt;</code> aufteilen</p> <p><img src="proxy.php?url=https://df6m0u2ovo2fu.cloudfront.net/images/documentation-english/read-more-link.png" alt="Read more link" /></p> <p>Beispiel:</p> <pre><code>This is the first part of the content of the page. &lt;!-- pagebreak --&gt; This is the second part of the page.</code></pre> <div class="note"> <div class="title">Video tutorial</div> <a href="proxy.php?url=https://www.youtube.com/watch?v=8M7RqkwmAoY">Youtube</a> </div> <div class="note"> <div class="title">Anmerkung</div> Diese Funktion ist abhängig vom eingesetzten Theme. Nicht alle unterstützen diese Funktion. </div> So, 19 Sep 2021 22:10:24 +0200 573673c87b2afc0bc7f8ed7c62290f69 Bild einfügen https://docs.bludit.com/de/inhalt/bild-hochladen-und-einfuegen <p>Beim Erstellen oder Bearbeiten einer Seite kannst du über die rechte Sidebar ein Bild hochladen und danach in den Seiteninhalt einfügen.</p> <ol> <li>Öffne den Abschnitt <strong>Bilder</strong> auf der rechten Sidebar.</li> <li>Auf den Button <strong>Upload weitere Bilder</strong> klicken</li> <li>Auf den Button <strong>Bild hochladen</strong> klicken</li> <li>Wähle das Bild auf deiner Festplatte aus</li> <li>Nachdem das Bild hochgeladen wurde wird eine kleine Vorschau des Bildes angezeigt. Mit einem Klick kannst du es auswählen.</li> <li>Wähle <strong>Bild einfügen</strong></li> <li>Das Bild ist nun eingefügt.</li> </ol> <p><img src="proxy.php?url=https://df6m0u2ovo2fu.cloudfront.net/images/documentation-english/how-to-upload-and-insert-an-image.png" alt="How to upload an insert an image" /></p> <div class="note"> <div class="title">Anmerkung</div> Der eingefügte Code kann sich je nach Editor unterscheiden. Standardmäßig wird Markdown Code erzeugt. </div> So, 19 Sep 2021 22:10:24 +0200 7a97a3e7239f4ae0f12ab0ce4b05e0d1 Editor wechseln https://docs.bludit.com/de/inhalt/editor-wechseln <p>Bludit verwendet standardmäßig den Editor SimpleMDE, einen einfachen und übersichtlichen Editor für Markdown Code. Man kann auch den Editor TinyMCE verwenden, der die einfache Erstellung und Bearbeitung von HTML Code ermöglicht. Diese beiden Editoren sind bei Bludit vorinstalliert und unter Plugins aufgelistet.</p> <h2>Umstellung auf TinyMCE</h2> <ul> <li>Melde dich im <strong>Administrationsbereich</strong> an.</li> <li>Wähle <strong>Plugins</strong> in der linken Seitenleiste.</li> <li>Deaktiviere das Plugin <strong>SimpleMDE</strong>.</li> <li>Aktiviere das Plugin <strong>TinyMCE</strong>.</li> <li>Jetzt kannst du TinyMCE als Editor verwenden.</li> </ul> So, 19 Sep 2021 22:10:24 +0200 1007b1792d6892477392bcd01c1fab48 Inhalt erstellen https://docs.bludit.com/de/inhalt/neuen-inhalt-erstellen <p>Logge dich in den <strong>Admin Bereich</strong> ein und klicke auf den Punkt <strong>Neuer Inhalt</strong> im linken Menü.</p> <p>Fülle alle Felder aus und speichere deinen Beitrag mit einem Klick auf den Button <strong>Speichern</strong>. <img src="proxy.php?url=https://df6m0u2ovo2fu.cloudfront.net/images/documentation-english/how-to-create-new-content.png" alt="How to create new contente" /></p> <div class="note"> <div class="title">Hinweis</div> Der Inhalt unterstützt Markdown und HTML-Code. </div> <div class="note"> <div class="title">Editor</div> Bludit verwendet standardmäßig den Editor SimpleMDE, du kannst aber auch TinyMCE oder einen anderen Editor benutzen. <a href="proxy.php?url=https://docs.bludit.com/de/inhalt/editor-wechseln">Wie man den Editor wechselt</a> </div> <div class="note"> <div class="title">Markdown</div> Weitere Informationen zum Markdown Code findest du unter dem folgenden Link: <a href="proxy.php?url=https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet">Markdown Cheatsheet</a> oder <a href="proxy.php?url=https://planet-bludit.ch/verschiedenes/markdown" target="_blank">Markdown</a> auf der Website <em>Planet Bludit</em>. </div> So, 19 Sep 2021 22:10:24 +0200 e428867ea5331bb182ead70dfba73468 Beispiel: Mein erstes Theme https://docs.bludit.com/de/themes/example-my-first-theme <p>Nachfolgend erstellen wir ein neues, einfaches Theme mit dem Namen 'Coffee'.</p> <ul> <li>Erstelle das Theme-Verzeichnis im Verzeichnis <code>/bl-themes/</code>, in unserem Fall <code>/bl-themes/coffee/</code></li> <li>Erstelle das Verzeichnis <code>languages</code> im Theme-Verzeichnis <code>/bl-themes/coffee/</code></li> <li>Erstelle die Datei <code>en.json</code> im Verzeichnis <code>/bl-themes/coffee/languages/</code></li> <li>Erstelle die Datei <code>metadata.json</code> im Verzeichnis <code>/bl-themes/coffee/</code></li> <li>Erstelle die Datei <code>index.php</code> im Verzeichnis <code>/bl-themes/coffee/</code></li> </ul> <p>Die Verzeichnisstruktur mit den eben erstellten Dateien muss jetzt so aussehen:</p> <pre><code>/bl-themes/coffee/ language/en.json metadata.json index.php</code></pre> <p>Im nächsten Schritt erstellen wir den Inhalt der Dateien. Wir beginnen mit der Datei <code>index.php</code> und fügen dieser folgenden HTML und PHP Code zu.</p> <pre><code class="language-html">&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Bludit&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;?php foreach ($pages as $Page): ?&gt; &lt;h1&gt;&lt;?php echo $Page-&gt;title() ?&gt;&lt;/h1&gt; &lt;div&gt;&lt;?php echo $Page-&gt;content() ?&gt;&lt;/div&gt; &lt;hr&gt; &lt;?php endforeach; ?&gt; &lt;/body&gt; &lt;/html&gt;</code></pre> <p>Bearbeite jetzt die Datei <code>languages/en.json</code> um den Namen und die Beschreibung des Themes hinzuzufügen.</p> <pre><code data-language="php">{ "theme-data": { "name": "Coffee", "description": "This is my first theme for Bludit." } } </code></pre> <p>Jetzt bearbeiten wir die Datei <code>metadata.json</code> um die Informationen über das Theme zu vervollständigen.</p> <pre><code data-language="php">{ "author": "Bludit", "email": "", "website": "", "version": "1.0", "releaseDate": "2017-10-10", "license": "MIT", "compatible": "2.0", "notes": "" } </code></pre> <p>Herzlichen Glückwunsch, du hast soeben dein erstes Theme für Bludit erstellt!</p> <div class="note"> <div class="title">Beispiele</div> Wir haben ein Gibhub-Repository mit Beispielen, welches du unter folgendem Link findest: <a href="proxy.php?url=https://github.com/bludit/examples">Bludit Theme Beispiele</a>. </div> So, 19 Sep 2021 22:10:24 +0200 6a5f6ca01689a4db489889a05f450af4 Plugins https://docs.bludit.com/de/erste-schritte/plugins <p>Mit Plugins können die Funktionen von Bludit erweitert werden.</p> <p>Einige Plugins sind standardmässig installiert. Nicht alle sind jedoch aktiviert.</p> <p>Weitere Plugins können von der Seite <a href="proxy.php?url=https://plugins.bludit.com">Bludit Plugins</a> heruntergeladen werden.</p> <h3>Plugin installieren</h3> <ol> <li>Das ZIP-Archiv mit dem Plugin herunterladen.</li> <li>Das ZIP-Archiv entpacken.</li> <li>Das entpackte ZIP-Archiv in den Ordner '/bl-plugins/' auf dem Server laden.</li> </ol> <h3>Plugin aktivieren und konfigurieren</h3> <ol> <li>Im Admin-Bereich in der linken Seitenleiste unter &quot;Einstellungen&quot; den Menüpunkt <strong>Plugins</strong> klicken.</li> <li>Beim Plugin, das verwendet werden soll, <strong>Aktivieren</strong> klicken.</li> <li>Die meisten Plugins können durch Anklicken von <strong>Einstellungen</strong> den eigenen Bedürfnissen angepasst werden.</li> </ol> So, 19 Sep 2021 22:10:24 +0200 ef86a11b1cd1eaf3459b2be36415fa8d Hiawatha https://docs.bludit.com/de/webservers/hiawatha <p>Bludit suppors Hiawatha webserver, you can use the following rewrite rule:</p> <pre><code>UrlToolkit { ToolkitID = bludit RequestURI exists Return Match [^?]*(\?.*)? Rewrite /index.php$1 }</code></pre> So, 19 Sep 2021 22:10:24 +0200 84f4f5583cb044d09aa5c378995f0bfd Installation https://docs.bludit.com/de/erste-schritte/installation <p>Bludit ist in wenigen Schtitten installiert:</p> <ol> <li>Lade die neueste Version von Bludit von der <a href="proxy.php?url=https://www.bludit.com/de/">offiziellen Website</a> herunter.</li> <li>Entpacke das ZIP-Archiv.</li> <li>Lade den Inhalt des ZIP-Archivs in das Verzeichnis auf deinem Server, in dem du Bludit installieren möchtest. Das kann im Hauptverzeichnis sein (root) oder in einem Unterverzeichnis wie beispielsweise <code>/bludit</code>.</li> <li>Rufe im Browser die Domain mit der Installation auf. Befindet sie im Hauptverzeichnis <code>https://meinedomain.ch</code>, wenn sie sich in einem Unterverzeichnis befindet beispielsweise <code>https://meinedomain.ch/bludit</code>.</li> <li>Der Bludit-Installer führt dich darauf durch die Einrichtung der Website.</li> </ol> <hr /> <h2 id="unterverzeichnis">Installation in einem Unterverzeichnis</h2> <p>Wird Bludit in einem Unterverzeichnis eingerichtet, muss bei einigen Hostern die Datei <code>.htaccess</code> im Installationsverzeichnis angepasst werden.</p> <p>Wird Bludit beispielsweise im Unterverzeichnis <code>bludit</code> installiert, muss in diesem Falle die Datei <code>.htaccess</code> wie folgt angepasst werden (Zeile 9):</p> <pre><code># Base directory RewriteBase /bludit/</code></pre> <hr /> <h2 id="iis-internet-information-services">IIS (Internet Information Services)</h2> <p>Für die Installation mit IIS (Internet Information Services, früher: Internet Information Server) von Microsoft muss die Datei .htaccess angepasst werden.</p> <p>Beispielsweise:</p> <pre><code>&lt;rules&gt; &lt;rule name="Rule1" stopProcessing="true"&gt; &lt;match url="^(.*)$" ignoreCase="false" /&gt; &lt;conditions&gt; &lt;add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /&gt; &lt;add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" /&gt; &lt;add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" /&gt; &lt;/conditions&gt; &lt;action type="Rewrite" url="index.php?q={R:1}" appendQueryString="true" /&gt; &lt;/rule&gt; &lt;/rules&gt;</code></pre> <hr /> <div class="note"> <div class="title">Zeitzone</div> Bludit versucht deine Zeitzone automatisch zu ermitteln. Es empfiehlt sich aber, die Einstellung der Zeitzone nach der Installation im Administrationsbereich unter <strong>Einstellungen</strong> > <strong>Sprache/Zeitzone</strong> > <strong>Zeitzone</strong> zu überprüfen. </div> <div class="note"> <div class="title">Dateien auf den Server laden</div> Um die Dateien auf den Server zu laden, kannst du einen FTP- oder SFTP-Prograamm (FTP-Client) oder WebFTP verwenden. Weitere Informationen dazu findest du beispielsweise auf der Website <em>Planet Bludit</em> unter <a href="proxy.php?url=https://planet-bludit.ch/installation/file-transfer-ftp-und-sftp" target="_blank">File Transfer (FTP und SFTP)</a>. </div> So, 19 Sep 2021 22:10:24 +0200 1f9e8b1a82c575fb92b40d1317414588