post_macros: post
XML:
<xf:macro id="post"
arg-post="!"
arg-thread="!"
arg-highlightedPosts="{{ [] }}">
<!-- Überprüft, ob Microdata eingefügt werden soll, basierend darauf, ob der Beitrag der erste ist -->
<xf:set var="$includeMicrodata" value="{{ !$post.isFirstPost() }}" />
<!-- Einbinden der CSS-Datei für Nachrichten -->
<xf:css src="message.less" />
<!-- Erweiterungspunkt vor dem Hauptinhalt -->
<xf:extension id="before"></xf:extension>
<!-- Festlegen von zusätzlichen Klassen für den Artikelcontainer -->
<xf:extension id="extra_classes" value="message--post" />
<article class="message {{ extension_value('extra_classes') }} js-post js-inlineModContainer {{ $post.isIgnored() ? 'is-ignored' : '' }} {{ $post.isUnread() ? ' is-unread' : '' }}"
data-author="{{ $post.User.username ?: $post.username }}"
data-content="post-{$post.post_id}"
id="js-post-{$post.post_id}"
{{ $includeMicrodata ? 'itemscope itemtype="https://schema.org/' . $thread.getReplyMicrodataType() . '" itemid="' . $post.getContentUrl(true) . '"' : '' }}>
<!-- Wenn Microdata enthalten sind, füge ein Metaelement für das übergeordnete Element hinzu -->
<xf:if is="$includeMicrodata">
<meta itemprop="parentItem" itemscope itemid="{{ link('canonical:threads', $thread) }}" />
</xf:if>
<!-- Anker für den Beitrag -->
<span class="u-anchorTarget" id="post-{$post.post_id}"></span>
<!-- Hauptinhalt des Beitrags -->
<xf:extension id="full_body">
<div class="message-inner">
<!-- Benutzerzelle (Anzeige von Benutzerinformationen) -->
<xf:extension id="user_cell">
<div class="message-cell message-cell--user">
<xf:macro id="message_macros::user_info" arg-user="{$post.User}"
arg-fallbackName="{$post.username}"
arg-includeMicrodata="{$includeMicrodata}"
arg-itemProp="author" />
</div>
</xf:extension>
<!-- Hauptzelle des Beitrags -->
<xf:extension id="main_cell">
<div class="message-cell message-cell--main">
<xf:extension id="main_cell_inner">
<div class="message-main js-quickEditTarget">
<!-- Beitragstitel (Zuweisung) -->
<xf:extension id="attribution">
<xf:macro id="post_attribution" arg-post="{$post}" arg-thread="{$thread}" />
</xf:extension>
<!-- Inhalt des Beitrags -->
<div class="message-content js-messageContent">
<xf:extension id="content">
<!-- Beitragsnotizen (z.B. Warnungen, Moderation) -->
<xf:extension id="notices">
<xf:macro id="post_notices" arg-post="{$post}" arg-thread="{$thread}" />
</xf:extension>
<!-- Benutzerinhalt (z.B. Beitragstext) -->
<xf:extension id="user_content">
<xf:macro id="post_user_content" arg-post="{$post}" arg-thread="{$thread}" />
</xf:extension>
<!-- Erweiterung nach dem Beitrag -->
<xf:extension id="after_content">
<xf:macro id="post_last_edit" arg-post="{$post}" />
</xf:extension>
<!-- Signatur des Benutzers -->
<xf:extension id="signature">
<xf:macro id="message_macros::signature" arg-user="{$post.User}" />
</xf:extension>
</xf:extension>
</div>
<!-- Fußzeile des Beitrags -->
<xf:extension id="footer">
<xf:macro id="post_footer" arg-post="{$post}" arg-thread="{$thread}" />
</xf:extension>
</div>
</xf:extension>
</div>
</xf:extension>
</div>
</xf:extension>
</article>
<!-- Erweiterungspunkt nach dem Artikel -->
<xf:extension id="after"></xf:extension>
<!-- Anzeige von Werbung unterhalb des Beitrags -->
<xf:ad position="post_below_container" arg-post="{$post}" />
</xf:macro>