2016-10-30 6 views
1

Ist es mit Hakyll möglich, ein Feld wie "Datum", "Autor" und genauer den Körper einer Seite zu ändern. Zum Beispiel möchte ich einen Teil der Seite ändern oder löschen.Wie ändere ich den Text und die Felder einer Seite?

Ich schaute auf die Hakyll-Dokumentation auf Hackage. Es gab eine Funktion, die changeField genannt wird, die machen, was ich will. Aber diese Funktion stammt aus der Version 3 von Hakyll, und sie existiert nicht in Hakyll 4.5.0, die ich jetzt benutze.

Antwort

0

Um den Seitenkörper zu ändern, verwenden Sie während der Kompilierung der Seite withItemBody. Sie können es beispielsweise mit withTags und den Tools aus dem Paket tagsoup verwenden, um den DOM-Baum einer HTML-Seite beliebig zu ändern.

Soweit Metadaten bekannt sind, ist es schreibgeschützt. Sie können stattdessen Hakyll.Web.Template.Context verwenden, um eigene benutzerdefinierte Kontexte zum Ausfüllen von Vorlagenfeldern zu definieren, möglicherweise mithilfe von Metadatenfeldern. Die Implementierung von Kontexten wie dateField veranschaulicht, wie dies geschehen könnte.

Verwandte Themen