11 Jahre altes Issue 4174 gelöst: Blog Post Templates in Confluence

Nehmen wir mal an, Sie verwenden genauso gerne Templates wie meine Kollegin Laura - unsere Content-Marketing-Managerin. Ihre Einstellung dazu lautet: "Lass das Template für dich arbeiten, dann hast du selbst weniger Aufwand". Deshalb fing sie an, ein Template für Blog Posts einzurichten - nur um festzustellen, dass dies in Confluence standardmäßig gar nicht möglich ist.

Glücklicherweise konnte ich mit einer einfachen, aber sehr nützlichen Behelfslösung einspringen, um Blog Post Templates in Confluence doch noch zu ermöglichen. Bookmarklets!

11 Jahre und mehr

Natürlich war Laura nicht die erste, die erkannte, dass ein Blog Post Template eine sinnvolle Erweiterung wäre, um noch besser in Confluence zusammenzuarbeiten. Seitdem die Anfrage vor mehr als 11 Jahren aufkam, haben schon 464 Personen vor ihr dafür gestimmt, diese Funktion einzubauen. Bis jetzt hat sich Atlassian allerdings dafür entschieden, dieses Issue nicht zu lösen.

atlassian blog post template issue

Es ist unnötig zu betonen, dass Anwender auf die unterschiedlichsten Behelfslösungen kamen, wie das Kopieren und Einfügen von herkömmlichen Confluence Inhalten in den Blog Post. Leider werden bei dieser Lösung ungewollte <span> Tags mit eingefügt. Das kann zu unvorhersehbaren Darstellungsproblemen führen, wenn Sie, wie wir es tun, Confluence auch als CMS für Ihre Webseiten verwenden und dabei ein benutzerdefiniertes Theme im Einsatz haben. Außerdem: Copy+Paste? Ist das nicht Arbeit, die uns mit einem Template erspart werden könnte?

Die Suche nach einer Lösung beginnt

Laura bat mich also um Hilfe. Bevor Sie sich aber an die Lösung eines Problems machen, müssen Sie genau wissen, was Sie erreichen wollen. Daher bat ich Laura, mir eine Liste aller Anforderungen zu erstellen, die das Content Team an Blog-Post-Seiten hat. Kurz darauf habe ich die folgenden Informationen erhalten:

Lieber Martin,

da wir Confluence-Blog-Post-Seiten als Basis für unseren Unternehmensblog einsetzen wollen, wäre es hilfreich, wenn Blog Posts standardmäßig verschiedene Seiteneinstellungen sowie formatierten Platzhaltertext enthielten. Außerdem sollten Benutzerrechte einer Seite standardmäßig eingeschränkt sein.

blog post template beispiel

Das war doch jetzt eigentlich nicht viel verlangt, oder? Es war Zeit an den Start zu gehen und Blog Post Templates in Confluence umzusetzen.

Dank dem Bookmarklet Creator

Um das Rad nicht neu zu erfinden, war es sinnvoll, erst einmal herauszufinden, ob das Rad schon erfunden wurde. Einer der besten Plätze, um Lösungen rund um Confluence zu finden, ist das Atlassian's Confluence development project. Nachdem ich mich durch etwa 100 Kommentare zu dem oben genannten JIRA Ticket gearbeitet hatte, war klar, dass dort keine wirkliche Lösung zu finden war. Ich würde mir selber etwas ausdenken müssen.

Die Lösung musste einfach zu verwenden sein – am besten mit einem Klick. Ansonsten wäre sie weder zweckmäßig, noch würde sie Zeit sparen. Das ist leicht gesagt, ich weiß. Doch gerade als ich darüber nachdachte, dass dies kein Kinderspiel werden würde, kam mir ein Geistesblitz: Was verwenden wir bereits jeden Tag, kann mit nur einem Mausklick bedient werden und existiert in unserer Browser-Werkzeugleiste? Lesezeichen (Bookmarks) und dementsprechend Bookmarklets - kleine Programme, die man wie Lesezeichen im Browser speichern kann. Ein Lesezeichen kann jede beliebige URL mit gültigem URI-Schema enthalten. (Die bekanntesten Beispiele sind mailto: und ftp:). Glücklicherweise kann eine URL auch JavaScript enthalten, das über einen Link verschiedene Funktionen anstoßen kann. Das Content Team muss also nur noch ein Lesezeichen anklicken und - voilà - das Blog Post Template wird eingefügt.

Probieren Sie es aus

Mehr als 100 Kommentare und 464 Votes lassen erahnen, dass vermutlich auch andere von meinem Blog-Post-Template-Lesezeichen für Confluence profitieren könnten. Deshalb erzähle ich Ihnen hier, was Sie tun müssen, um so ein Lesezeichen anzulegen. (Wenn Sie sich nicht für die Details interessieren, springen Sie einfach weiter ans Ende zum fertigen Bookmarklet). Ich habe ein kleines Tool verwendet, das Code in Bookmarklets verwandelt, Script entschlüsselt und mit JavaScript verpackt.

Beachten Sie, dass diese Anleitung für den Chrome Browser erstellt wurde und für Confluence 6 und höher funktioniert. Allerdings kann es sein, das einige der folgenden Selektoren abweichen, je nachdem, welche Installationen Sie verwenden.


Zu Beginn öffnen Sie das Bookmarklet-Creator-Tool in einem neuen Fenster oder Tab.

  1. Kopieren Sie den folgenden Code in den Bookmarklet Creator:

    var html = `Paste your obtained HTML here!`;
    $('#wysiwygTextarea_ifr')[0].contentWindow.document.querySelector('#tinymce').innerHTML = html;
  2. In einem neuen Tab rufen Sie die Confluence-Seite auf, die Ihnen als Blog Post Template dienen soll. Dann öffnen Sie den Editor.
  3. Öffnen Sie die Entwicklertools (CMD+SHIFT+I in Chrome auf dem Mac). Tippen Sie den folgenden Befehl in die Konsole und drücken Sie Enter.

    $('#wysiwygTextarea_ifr')[0].contentWindow.document.querySelector('#tinymce').innerHTML
  4. Kopieren Sie den HTML Code, der innerhalb der Anführungszeichen ("...") steht.
  5. Fügen Sie ihn an die dafür vorgesehene Stelle im Bookmarklet Creator ein (zwischen den Hochkommata html = `Paste your obtained HTML here! `).
  6. Möchten Sie außerdem, dass Ihr Bookmarklet automatisch Sichtbarkeitsbeschränkungen zu Ihrem Confluence Blog Post hinzufügen soll, verwenden Sie den folgenden Code im Bookmarklet Creator. Stellen Sie sicher, dass die richtige Gruppe oder der richtige Anwender (var restrictTo = 'confluence-users') in der ersten Codezeile angegeben wurde.

    var restrictTo = 'confluence-users';
    $('#rte-button-restrictions').click();
    setTimeout(function() {
        $('#page-permissions-names-input').val(restrictTo);
        $('#add-typed-names').click();
        setTimeout(function() {
            $('.permissions-update-button').click()
        }, 500);
    }, 500);

    Confluence bietet keine API, um diese Einstellungen für Ihre Entwürfe vorzunehmen. Um Sichtbarkeitsbeschränkungen zu setzen, müssen Sie also erst eine Benutzeraktion vortäuschen. Das Script öffnet dann den Benutzerrechte-Dialog, nimmt die gewünschte Einstellung vor und schließt ihn wieder.

  7. Klicken Sie auf Convert to bookmarklet.
  8. Ziehen Sie den erstellten Link in Ihre Lesezeichen-Toolbar.
  9. Jetzt können Sie einen neuen Blog Post in Confluence erstellen und einfach auf Ihr Template-Lesezeichen klicken (während Sie Änderungen vornehmen).

Das Template ist hinzugefügt und die Sichtbarkeitsbeschränkungen sind eingestellt.

Oder, noch einfacher 

Wenn Sie all das lieber nicht selber machen wollen, verwenden Sie doch einfach das von mir erstellte Bookmarklet, das Bookmarklets erstellt.

  1. Öffnen Sie die folgende Seite in einem neuen Tab http://codepen.io/MartinMuzatko/full/peKOxp/.
  2. Dann ziehen Sie den Bookmarklet-Generator-Button in Ihre Lesezeichen-Toolbar.
  3. Gehen Sie auf die Confluenceseite, welche Sie in ein Template verwandeln wollen. 
  4. Öffnen Sie den Seiteneditor.
  5. Klicken Sie auf das Bookmarklet, das Sie im ersten Schritt erstellt haben.
  6. Ziehen Sie das neue Bookmarklet in die Lesezeichen-Toolbar Ihres Browsers.

Mission erfüllt

Ganz gleich, ob Sie Ihr Booklet selber erstellt oder die einfache Variante gewählt haben, alles, was Sie noch zu tun haben, ist:

  • einen Blog Post in Confluence erstellen und
  • das Lesezeichen anklicken

Mission erfüllt! Ich hoffe, Ihre Kollegen werden genauso begeistert sein wie meine.


Related Articles

Cookie Policy

Damit unsere Homepage gut funktioniert, wir unseren Service verbessern können und Ihnen die Nutzung erleichtern, werden Cookies gesetzt (u.a. Google Analytics). Informationen hierzu unter: unsere Datenschutzerklärung.

OK