Tạo Thẻ OG:IMAGE Tự Động Cho Xenforo 2

hoangnhanpro

Administrator
Thành viên BQT
23/9/21
21
0
1
tai-the-og-image-xenforo-2.png


Hướng dẫn cách tạo thẻ og:image thông minh bằng cách tìm tập tin trong bài viết và tự động lựa chọn tập tin hình ảnh có kích thước lớn nhất làm thẻ og:image.

Mở template thread_view, tìm code sau:
XML:
<xf:macro template="metadata_macros" name="metadata"
    arg-description="{$fpSnippet}"
    arg-shareUrl="{{ link('canonical:threads', $thread) }}"
    arg-canonicalUrl="{{ link('canonical:threads', $thread, {'page': $page}) }}" />

Thay thế thành:
XML:
<xf:set var="$og_image" value="0" />
<xf:set var="$file_size" value="0" />
<xf:foreach loop="$thread.FirstPost.Attachments" value="$attach">   
    <xf:if is="$attach.thumbnail_url && ($attach.file_size > $file_size)">
        <xf:set var="$og_image" value="{{ link('canonical:attachments', $attach) }}" />
        <xf:set var="$file_size" value="{$attach.file_size}" />
    </xf:if>
</xf:foreach>
<xf:if is="$og_image">
    <xf:macro template="metadata_macros" name="metadata"
        arg-imageUrl="{$og_image}"
        arg-description="{$fpSnippet}"
        arg-shareUrl="{{ link('canonical:threads', $thread) }}"
        arg-canonicalUrl="{{ link('canonical:threads', $thread, {'page': $page}) }}" />
<xf:else/>
<xf:macro template="metadata_macros" name="metadata"
    arg-description="{$fpSnippet}"
    arg-shareUrl="{{ link('canonical:threads', $thread) }}"
    arg-canonicalUrl="{{ link('canonical:threads', $thread, {'page': $page}) }}" />
</xf:if>

Lưu ý trang web của bạn phải có thẻ fb:app_id:
<meta property="fb:app_id" content="xxx" />