Helper-Klassen für Themes

Contents

    Die Helper unterstützen den Entwickler dabei den Code übersichtlicher zu gestalten und geben die Möglichkeit, weniger Code schreiben zu müssen.

    Diese Objekte besitzen statische Methoden (zu sehen an den Doppelpunkten beim Aufruf)

    Title

    Erzeugt einen Titel-Head-Tag mit dynamischen Inhalt aus den Einstellungen der Seite.

    <?php
        echo Theme::headTitle();
    ?>
    <title>Page title | Title site</title>

    Description

    Erzeugt einen Description-Head-Tag mit dynamischen Inhalt aus den Einstellungen der Seite.

    <?php
        echo Theme::headDescription();
    ?>
    <meta name="description" content="Description about your site">

    CSS Dateien

    Diese Methode generiert einen Stylesheet-Head-Tag um eine CSS mit dem Namen blog.css aus dem Ordner /bludit/themes/{THEME_NAME}/css/ einzufügen.

    <?php
        echo Theme::css('css/blog.css');
    ?>
    <link rel="stylesheet" type="text/css" href="https://example.com/bl-themes/{THEME_NAME}/css/blog.css">

    Es gibt auch die Möglichkeit gleich mehrere CSS Einträge zu erstellen.

    <link rel="stylesheet" type="text/css" href="https://example.com/bl-themes/{THEME_NAME}/css/file1.css">
    <link rel="stylesheet" type="text/css" href="https://example.com/bl-themes/{THEME_NAME}/css/file2.css">

    Javascript Dateien

    Diese Methode generiert einen Script-Head-Tag um eine Javascript-Datei mit dem Namen main.js aus dem Ordner /bludit/themes/{THEME_NAME}/js/ einzufügen.

    <?php
        echo Theme::js('js/main.js');
    ?>
    <script src="https://example.com/bl-themes/{THEME_NAME}/js/main.js"></script>

    Es gibt auch die Möglichkeit gleich mehrere Script Einträge zu erstellen.

    <?php
        echo Theme::js(array('js/file1.js', 'js/file2.js'));
    ?>
    <script src="https://example.com/bl-themes/{THEME_NAME}/js/file1.js"></script>
    <script src="https://example.com/bl-themes/{THEME_NAME}/js/file2.js"></script>

    Favicon

    Diese Methode generiert einen Head-Tag für das Favicon. In diesem Beispiel befindet sich das Icon im Hauptverzeichnis des Themes /bludit/themes/{THEME_NAME}/favicon.png.

    <link rel="shortcut icon" href="https://examples.com/bl-themes/{THEME_NAME}/favicon.png" type="image/png">

    Plugins einbinden

    Bludit unterstützt Plugins. Jedes Plugin besitzt Hooks (Einhängepunkte) über die man steuern kann, an welcher Stelle ein Plugin beim Seitenaufbau aktiv werden soll.

    Im folgenden Beispiel werden alle Plugins im Head-Bereich ausgeführt.

    <?php
        Theme::plugins('siteHead');
    ?>

    Hinzufügen aller Plugins beim Beginn des Body-Abschnitts.

    <?php
        Theme::plugins('siteBodyBegin');
    ?>

    jQuery einbinden

    Bludit verwendet jQuery und stellt eine Methode für das Einbinden zur Verfügung.

    <?php
        echo Theme::jquery();
    ?>
    <script src="https://example.com/bl-kernel/js/jquery.min.js"></script>

    Man kann jQuery auch vom offiziellen CDN einbinden.

    <?php
        $cdn = true;
        echo Theme::jquery($cdn);
    ?>
    <script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>

    FontAwesome einbinden

    Bludit verwendet FontAwesome und stellt eine Methode für das Einbinden zur Verfügung.

    <?php
        echo Theme::fontAwesome();
    ?>
    <link rel="stylesheet" href="https://example.com/bl-kernel/css/font-awesome/css/font-awesome.min.css">

    Man kann FontAwesome auch vom offiziellen CDN BootstrapCDN einbinden.

    <?php
        $cdn = true;
        echo Theme::fontAwesome($cdn);
    ?>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">