Download Bludit Plugin

Das Wichtigste zuerst, der Download. Klicken Sie den folgenden Link an und Sie gelangen in das GitHub-Repository von CMSWorkbench. Im Repository können Sie das Plugin über den grünen Button Code, Download ZIP herunterladen.

Export Bludit2Pico Konverter Plugin

Das folgende Bludit Plugin exportiert den gesamten Bludit-Inhalt und konvertiert alle Beiträge in das MD-Format des Pico CMS. Die Exportfiles werden in einem separatem Ordner exports abgelegt.

001  <?php
002  
003  class pluginBludit2Pico extends Plugin {
004  
005     public function init()
006     {
007         $this->formButtons = false;
008     }
009  
010     public function post()
011     {
012         if (isset($_POST['createBackup'])) {
013             return $this->createPages();
014             return $this->createIndex();
015         }
016         return false;
017     }
018  
019     public function form()
020     {
021         global $L;
022  
023         $html  = '<div class="alert alert-primary" role="alert">';
024         $html .= $this->description();
025         $html .= '</div>';
026         $html .= '<button name="createBackup" value="true" class="btn btn-primary" type="submit">Export</button>';
027  
028         return $html;
029     }
030  
031     public function createPages() {
032         global $pages;
033         global $syslog;
034         global $L;
035  
036         $pageNumber     = 1;
037         $numberOfItems  = -1;
038         $onlyPublished  = true;
039         $items          = $pages->getList($pageNumber, $numberOfItems, $onlyPublished);
040  
041         foreach ($items as $key) {
042             $page = buildPage($key);
043  
044             $content = '---'                                        ."\n";
045             $content .= 'Title: '       .$page->title()             ."\n";
046             $content .= 'Author: '      .$page->user('nickname')    ."\n";
047             $content .= 'Date: '        .$page->date()              ."\n";
048             $content .= 'Robots: '      .'noindex,nofollow'         ."\n";
049             $content .= 'Template: '    .'index'                    ."\n";
050             $content .= 'logo: '        .$page->coverimage()        ."\n";
051             $content .= 'Featured: '    .'true'                     ."\n";
052             $content .= 'Description: ' .$page->description()       ."\n";
053             $content .= '---'                                       ."\n";
054             $content .= $page->content();
055  
056             $category = str_replace(' ','-',$page->category());
057             $category = str_replace('.','-',$category);
058             $category = strtolower($category);
059  
060             if (!mkdir('export/'.$category, 0777, true)) {
061                 //$syslog->add(array('dictionaryKey'=>'Ordner','notes'=>$category.' nicht erstellt' ));
062             }
063             
064             file_put_contents('export/'.$category.'/'.$page->slug().'.md', $content);
065             $syslog->add(array('dictionaryKey'=>'Out','notes'=>$page->slug().'.md' ));
066             
067         }
068     }
069  
070     public function createIndex()
071     {
072         // nothing
073     }
074  }

Als Ergebnis des Plugins erhalten Sie alle Dateien im folgenden Pico Meta Format für den Markdown Parser:

000  ---
000  Title:       Das Admin Dashboard in Automad verbergen verstecken
000  Author:      Oliver Lohse
000  Date:        November 30, 2021
000  Robots:      noindex,nofollow
000  Template:    index
000  logo:        automad-cms.svg
000  Featured:    true
000  Description: Aus Sicherheitsgründen sollten Sie unbedingt das Admin-Backend (Dashboard) gegen den Zugriff...
000  ---
000  ...

Zudem legt das Plugin die entsprechenden Verzeichnisse der Kategorien ordnungsgemäß für Sie an, in denen Sie dann die Beiträge als MD-File vorfinden.

Besonderheiten

In Zeile 007 werden die üblichen Speichern und Abbrechen Buttons des Pluginsystems deaktiviert, denn Sie möchten ja eine individuelle Auslösung auf Knopfdruck statt bei Hook erreichen.

Hinweis: Das Coding und das Bludit-Plugin sind eine erste Arbeitsversion, denn aktuell werden die im Pico CMS benötigten index.md des betreffenden Ordners noch nicht erzeugt (daran arbeite ich gerade). Dennoch ist diese Version sehr gut dazu geeignet, die MD-Files für das PICO CMS automatisch durch dieses Plugin erzeugen zu lassen - das erspart eine ganze menge Arbeit. Die fehlenden index.md Files können Sie dann manuell anlegen.


von Oliver Lohse