1. Hiện tại có một số member mạo danh BQT để giao dịch trên diễn đàn và đã LỪA ĐẢO khá nhiều tại chuyên mục Adwords... Mọi người cảnh giác và đọc bài: Giới thiệu giao dịch đảm bảo bởi @Admin

Seo diễn đàn xenforo phần 4 - tối ưu hóa thẻ keyword

Thảo luận trong 'Thủ thuật Seo cho Xenforo, vbb...' bắt đầu bởi truonglun79, 6/11/13.

Lượt xem: 18,175
  1. truonglun79

    truonglun79 Top 9

    Gia nhập:
    19/12/12
    Bài viết:
    97
    Đã được thích:
    10
    Web:
    Mặc định xenforo sẽ k có tag cho từng bài viết, vậy yêu cầu các bạn phải cài addon tinhte tag, addon này ngoài chức năng add tag, nó còn tự động chèn link vào các từ khóa trong bài viết mà chứa tag đã tạo.

    [​IMG]

    Đầu tiên chúng ta cài addon tinhte tag , cách sử dụng thì khá đơn giản, các bạn nhìn ảnh có thể thấy cách add.

    Tiếp theo chúng ta sẻ sử dụng các thẻ tab này để tạo thẻ meta keyword cho bài viết và thư mục.
    Vào Appearance > Search Templates > Tìm thread_view
    Tìm code
    Mã:
    <xen:h1>{xen:helper threadPrefix, $thread}{$thread.title}</xen:h1>
    Tiến hành chèn phía dưới code sau
    Mã:
    <meta name="keywords" content="{xen:helper stripHtml,{xen:helper Tinhte_XenTag_getImplodedTagsFromThread, $thread, 1}}"/>
    Xong phần bài viết, tiếp sang box
    Seach template forum_view và chèn dưới thẻ h1 code sau
    Mã:
    <meta name="keywords" content="{xen:helper stripHtml,{xen:helper Tinhte_XenTag_getImplodedTagsFromforum, $forum, 1}}"/>
    Done ! Giờ còn trang chủ của xenforo là chưa có key, các bạn vào template PAGE_CONTAINER Chèn code sau vào trong <head>
    Mã:
    <xen:if is="{$contentTemplate} == 'forum_list'">
    <meta name="keywords" content="dien dan cntt, [URL="http://vnmaster.net/"]dien dan cong nghe[/URL], diễn đàn cntt, diễn đàn công nghệ, forum seo, seo forum, cntt, dien dan" />
    </xen:if>
    Các bạn sửa lại key của mình, Chúc các bạn thành công!

    techvietnam thích bài này.
  2. justlife84

    justlife84 Top 9

    Gia nhập:
    31/8/12
    Bài viết:
    241
    Đã được thích:
    8
    Rất cám ơn bạn đã chia sẻ bài viết có ích này. :)
    techvietnam thích bài này.
  3. anthanhnguyen

    anthanhnguyen Top 7

    Gia nhập:
    4/6/13
    Bài viết:
    436
    Đã được thích:
    240
    Web:
    Mình không chuyên bên SEO diễn đàn, nên mấy kiến thức này mù tịt
  4. chanhoacompany

    chanhoacompany Top 9

    Gia nhập:
    30/8/12
    Bài viết:
    57
    Đã được thích:
    1
    xenforo là gì vậy bạn
  5. thienduongcacanh

    thienduongcacanh Top 9

    Gia nhập:
    11/6/13
    Bài viết:
    68
    Đã được thích:
    5
    Vào Appearance > Search Templates > Tìm thread_view
    Tìm code

    Code:

    <xen:h1>{xen:helper threadPrefix, $thread}{$thread.title}</xen:h1>

    Mình kiếm không ra cái dòng này.vui lòng giúp mình, đây là code của cái Thread_ view của mình

    Mã:
    <xen:title>{xen:helper threadPrefix, $thread, escaped}{$thread.title}{xen:helper pagenumber, $page}</xen:title><xen:h1><a href="{xen:link forums, $forum, 'prefix_id={$thread.prefix_id}'}" class="prefixLink" title="{xen:phrase show_only_threads_prefixed_by_x, 'prefix={xen:helper threadPrefix, $thread, plain, ""}'}">{xen:helper threadPrefix, $thread, html, ''}</a><a href="{xen:link threads, $thread}">{$thread.title}</a></xen:h1>
    
    
    
    
    
    
    <xen:description>
        {xen:phrase discussion_in_x_started_by_y_date_z,
            'forum=<a href="{xen:link forums, $forum}">{$forum.title}</a>',
            'name={xen:helper username, $thread}',
            'date=<a href="{xen:link threads, $thread}">{xen:datetime $thread.post_date, html}</a>'}
    </xen:description>
    
    
    <xen:navigation>
        <xen:breadcrumb source="$nodeBreadCrumbs" />
    </xen:navigation>
    
    
    <xen:container var="$head.canonical">
        <link rel="canonical" href="{xen:link 'canonical:threads', $thread, 'page={$page}'}" /></xen:container>
    <xen:container var="$head.description">
        <meta name="description" content="{xen:helper snippet, $firstPost.message, 155}" /></xen:container>
    <xen:container var="$head.openGraph"><xen:include template="open_graph_meta">
            <xen:set var="$url">{xen:link 'canonical:threads', $thread}</xen:set>
            <xen:set var="$title">{xen:helper threadPrefix, $thread, escaped}{$thread.title}</xen:set>
            <xen:set var="$avatar">{xen:helper avatar, $thread, m, 0, 1}</xen:set>
        </xen:include></xen:container>
    <xen:container var="$bodyClasses">{xen:helper nodeClasses, $nodeBreadCrumbs, $forum}</xen:container>
    <xen:container var="$searchBar.thread"><xen:include template="search_bar_thread_only" /></xen:container>
    <xen:container var="$searchBar.forum"><xen:include template="search_bar_forum_only" /></xen:container>
    
    
    <xen:if is="{$canReply}">
        <xen:comment><xen:topctrl>
            <a href="{xen:link 'threads/reply', $thread}" class="callToAction"><span>{xen:phrase reply_to_thread}</span></a>
        </xen:topctrl></xen:comment>
    </xen:if>
    
    
    <xen:require css="thread_view.css" />
    
    
    <xen:edithint template="message" />
    
    
    <xen:if is="{$poll}">
        <xen:include template="poll_block">
            <xen:set var="$options">
                <xen:if is="{$poll.canVote}">
                    <xen:include template="poll_block_vote" />
                <xen:else />
                    <xen:include template="poll_block_result" />
                </xen:if>
            </xen:set>
        </xen:include>
    </xen:if>
    
    
    <xen:if is="{$showPostedNotice}">
        <div class="importantMessage">{xen:phrase message_submitted_displayed_pending_approval}</div>
    </xen:if>
    
    
    <xen:set var="$threadStatusHtml">
        <xen:if hascontent="true">
            <dl class="threadAlerts secondaryContent">
                <dt>{xen:phrase thread_status}:</dt>
                <xen:contentcheck>
                    <xen:if is="{$thread.discussion_state} == 'deleted'">
                        <dd class="deletedAlert">
                            <span class="icon Tooltip" title="{xen:phrase deleted}" data-tipclass="iconTip"></span>
                                {xen:phrase removed_from_public_view}</dd>
                    <xen:elseif is="{$thread.discussion_state} == 'moderated'" />
                        <dd class="moderatedAlert">
                            <span class="icon Tooltip" title="{xen:phrase awaiting_moderation}" data-tipclass="iconTip"></span>
                                {xen:phrase awaiting_moderation_before_being_displayed_publicly}</dd>
                    </xen:if>
        
                    <xen:if is="!{$thread.discussion_open}">
                        <dd class="lockedAlert">
                            <span class="icon Tooltip" title="{xen:phrase locked}" data-tipclass="iconTip"></span>
                                {xen:phrase not_open_for_further_replies}</dd>
                    </xen:if>
                </xen:contentcheck>
            </dl>
        </xen:if>
    </xen:set>
    {xen:raw $threadStatusHtml}
    
    
    <xen:hook name="thread_view_pagenav_before" params="{xen:array 'thread={$thread}'}" />
    
    
    <div class="pageNavLinkGroup">
        <div class="linkGroup SelectionCountContainer">
            <xen:if hascontent="true">
                <div class="Popup">
                    <a rel="Menu">{xen:phrase thread_tools}</a>
                    <div class="Menu">
                        <div class="primaryContent menuHeader"><h3>{xen:phrase thread_tools}</h3></div>
                        <ul class="secondaryContent blockLinksList">
                            <xen:contentcheck>
                                <xen:if is="{$canEditThread}">
                                    <li><a href="{xen:link 'threads/edit', $thread}" class="OverlayTrigger">{xen:phrase edit_thread}</a></li>
                                </xen:if>
                                <xen:if is="{$canDeleteThread}">
                                    <li><a href="{xen:link 'threads/delete', $thread}" class="OverlayTrigger">{xen:phrase delete_thread}</a></li>
                                </xen:if>
                                <xen:if is="{$canMoveThread}">
                                    <li><a href="{xen:link 'threads/move', $thread}" class="OverlayTrigger">{xen:phrase move_thread}</a></li>
                                </xen:if>
                                <xen:if is="{$deletedPosts}">
                                    <li><a href="{xen:link threads/show-posts, $thread, 'page={$page}'}" class="MessageLoader" data-messageSelector="#messageList .message.deleted.placeholder">{xen:phrase show_deleted_posts}</a></li>
                                </xen:if>
                                <xen:hook name="thread_view_tools_links" params="{xen:array 'thread={$thread}'}" />
                            </xen:contentcheck>
                        </ul>
                        <xen:if hascontent="true">
                        <form action="{xen:link threads/quick-update, $thread}" method="post" class="AutoValidator">
                            <ul class="secondaryContent blockLinksList checkboxColumns">
                            <xen:contentcheck>
                                <xen:if is="{$canLockUnlockThread}">
                                <li><label><input type="checkbox" name="discussion_open" value="1" class="SubmitOnChange" {xen:checked $thread.discussion_open} />
                                    {xen:phrase open_thread}</label>
                                    <input type="hidden" name="set[discussion_open]" value="1" /></li></xen:if>
                                <xen:if is="{$canStickUnstickThread}"> 
                                <li><label><input type="checkbox" name="sticky" value="1" class="SubmitOnChange" {xen:checked $thread.sticky} />
                                    {xen:phrase sticky}</label>
                                    <input type="hidden" name="set[sticky]" value="1" /></li></xen:if>
                            </xen:contentcheck>
                            </ul>
                            <input type="hidden" name="_xfToken" value="{$visitor.csrf_token_page}" />
                        </form>
                        </xen:if>
                        <xen:if is="{$thread.canInlineMod}">
                        <form action="{xen:link inline-mod/thread/switch}" method="post" class="InlineModForm sectionFooter" id="threadViewThreadCheck"
                            data-cookieName="threads">
                            <label><input type="checkbox" name="threads[]" value="{$thread.thread_id}" class="InlineModCheck" /> {xen:phrase select_for_thread_moderation}</label>
                            <input type="hidden" name="_xfToken" value="{$visitor.csrf_token_page}" />
                        </form>
                        </xen:if>
                    </div>
                </div>
            </xen:if>
            <xen:if is="{$canWatchThread}">
                <a href="{xen:link 'threads/watch-confirm', $thread}" class="OverlayTrigger" data-cacheOverlay="false">{xen:if $thread.thread_is_watched, '{xen:phrase unwatch_thread}', '{xen:phrase watch_thread}'}</a>
            </xen:if>
        </div>
    
    
        <xen:pagenav link="threads" linkdata="{$thread}"
            page="{$page}" perpage="{$postsPerPage}" total="{$totalPosts}"
            unreadlink="{$unreadLink}" />
    </div>
    
    
    <xen:include template="ad_thread_view_above_messages" />
    
    
    <xen:hook name="thread_view_form_before" params="{xen:array 'thread={$thread}'}" />
    
    
    <form action="{xen:link 'inline-mod/post/switch'}" method="post"
        class="InlineModForm section"
        data-cookieName="posts"
        data-controls="#InlineModControls"
        data-imodOptions="#ModerationSelect option">
    
    
        <ol class="messageList" id="messageList">
            <xen:foreach loop="$posts" value="$post">
                <xen:if is="{$post.message_state} == 'deleted'">
                    <xen:include template="post_deleted_placeholder" />
                <xen:else />
                    <xen:include template="post" />
                </xen:if>
            </xen:foreach>
            <xen:edithint template="attached_files" />
        </ol>
    
    
        <xen:if is="{$inlineModOptions}">
            <div class="sectionFooter InlineMod Hide">
                <label for="ModerationSelect">{xen:phrase perform_action_with_selected_posts}...</label>
    
    
                <xen:include template="inline_mod_controls">
                    <xen:set var="$text">{xen:phrase post_moderation}</xen:set>
                    <xen:set var="$options">
                        <xen:if is="{$inlineModOptions.delete}"><option value="delete">{xen:phrase delete_posts}...</option></xen:if>
                        <xen:if is="{$inlineModOptions.undelete}"><option value="undelete">{xen:phrase undelete_posts}</option></xen:if>
                        <xen:if is="{$inlineModOptions.approve}"><option value="approve">{xen:phrase approve_posts}</option></xen:if>
                        <xen:if is="{$inlineModOptions.unapprove}"><option value="unapprove">{xen:phrase unapprove_posts}</option></xen:if>
                        <xen:if is="{$inlineModOptions.move}"><option value="move">{xen:phrase move_posts}...</option></xen:if>
                        <xen:if is="{$inlineModOptions.merge}"><option value="merge">{xen:phrase merge_posts}...</option></xen:if>
                        <option value="deselect">{xen:phrase deselect_posts}</option>
                    </xen:set>
                    <xen:set var="$checkboxTitle">{xen:phrase select_deselect_all_posts_on_this_page}</xen:set>
                    <xen:set var="$selectedItemsPhrase">{xen:phrase selected_posts}</xen:set>
                </xen:include>
            </div>
        </xen:if>
    
    
        <input type="hidden" name="_xfToken" value="{$visitor.csrf_token_page}" />
    
    
    </form>
    
    
    <xen:if hascontent="true">
        <div class="pageNavLinkGroup">
            <xen:contentcheck>
                <xen:if is="{$canQuickReply}">
                    <xen:if is="{$postsRemaining}">
                        <div class="linkGroup">
                            <xen:if is="{$postsRemaining} == 1">
                                <a href="{xen:link threads, $thread, 'page={xen:calc "{$page} + 1"}'}" class="postsRemaining">{xen:phrase 1_more_message}...</a>
                            <xen:else />
                                <a href="{xen:link threads, $thread, 'page={xen:calc "{$page} + 1"}'}" class="postsRemaining">{xen:phrase x_more_messages, 'count={xen:number $postsRemaining}'}...</a>
                            </xen:if>
                        </div>
                    </xen:if>
                <xen:else />
                    <div class="linkGroup">
                        <xen:if is="{$canReply}">
                            <a href="{xen:link 'threads/reply', $thread}" class="callToAction"><span>{xen:phrase reply_to_thread}</span></a>
                        <xen:elseif is="{$visitor.user_id}" />
                            <span class="element">({xen:phrase no_permission_to_reply})</span>
                        <xen:else />
                            <label for="LoginControl"><a href="{xen:link login}" class="concealed element">({xen:phrase log_in_or_sign_up_to_reply})</a></label>
                        </xen:if>
                    </div>
                </xen:if>
                <div class="linkGroup"{xen:if '!{$ignoredNames}', ' style="display: none"'}><a href="javascript:" class="muted jsOnly DisplayIgnoredContent Tooltip" title="{xen:phrase show_hidden_content_by_x, "names={xen:helper implode, $ignoredNames, ', '}"}">{xen:phrase show_ignored_content}</a></div>
    
    
                <xen:pagenav link="threads" linkdata="{$thread}"
                    page="{$page}" perpage="{$postsPerPage}" total="{$totalPosts}"
                    unreadlink="{$unreadLink}"
                />
            </xen:contentcheck>
        </div>
    </xen:if>
    
    
    <xen:include template="ad_thread_view_below_messages" />
    
    
    <xen:hook name="thread_view_qr_before" params="{xen:array 'thread={$thread}'}" />
    
    
    <xen:if is="{$canQuickReply}">
        <xen:include template="quick_reply">
            <xen:set var="$formAction">{xen:link 'threads/add-reply', $thread}</xen:set>
            <xen:set var="$lastDate">{$lastPost.post_date}</xen:set>
            <xen:set var="$showMoreOptions">1</xen:set>
        </xen:include>
    </xen:if>
    
    
    <xen:hook name="thread_view_qr_after" params="{xen:array 'thread={$thread}'}" />
    
    
    {xen:raw $threadStatusHtml}
    
    
    <xen:include template="share_page">
        <xen:set var="$url">{xen:link 'canonical:threads', $thread}</xen:set>
    </xen:include>
  6. thanhnguyenplus

    thanhnguyenplus Top 9

    Gia nhập:
    13/11/13
    Bài viết:
    58
    Đã được thích:
    3
  7. doibanglaixe

    doibanglaixe Top 9

    Gia nhập:
    17/12/14
    Bài viết:
    72
    Đã được thích:
    1
    Web:
    hôm trước mình cũng tham gia diễn đàn này
  8. luyện văn trường

    luyện văn trường Top 7

    Gia nhập:
    22/8/15
    Bài viết:
    368
    Đã được thích:
    739
    mình nhìn khó hiểu quá trời luôn bạn ơi? có thể làm cho nó ngắn gọn dễ hiểu hơn được không vậy bạn
  9. vanbacad

    vanbacad Top 7

    Gia nhập:
    26/7/15
    Bài viết:
    438
    Đã được thích:
    742
    Web:
    ôi cái này bạn tự thu thập hay j mà đủ chất quá vậy bạn
    mesonnuoc79 thích bài này.
  10. Lê Xuân Thái

    Lê Xuân Thái Top 7

    Gia nhập:
    31/8/15
    Bài viết:
    351
    Đã được thích:
    735
    ôi mấy cái này giờ cũng không còn quan trọng nữa rồi bạn ơi
    vanbacadmesonnuoc79 thích bài này.
  11. mesonnuoc79

    mesonnuoc79 Top 7

    Gia nhập:
    5/3/14
    Bài viết:
    319
    Đã được thích:
    529
    Web:
    chắc bạn seo pro lắm có đúng không vậy? chỉ giáo cho mình được không bạn
    Lê Xuân Tháivanbacad thích bài này.
  12. sơn expo

    sơn expo Top 9

    Gia nhập:
    22/5/15
    Bài viết:
    32
    Đã được thích:
    3
    Web:
    nhìn đống code này muốn choáng
  13. jangnam_it

    jangnam_it Top 9

    Gia nhập:
    13/8/14
    Bài viết:
    60
    Đã được thích:
    6
    Web:
    choáng không hiểu đâu, đang tìm cái đoạn này ma khó ghê ai giúp mình với
  14. lamngheanhem

    lamngheanhem Top 9

    Gia nhập:
    16/10/15
    Bài viết:
    88
    Đã được thích:
    0
    Web:
    những cái mà này nhìn khó hiểu quá vì mình mới học được 1 khóa seo còn non tay nên cũng không được hiểu hết những vấn đề trên
  15. azorakt

    azorakt Top 9

    Gia nhập:
    18/12/15
    Bài viết:
    107
    Đã được thích:
    6
    Nơi ở:
    HCM
    Web:
    Mình đã up thử và chạy thấy cũng không thay đổi gì nhỉ, trang của mình mới mở cignaexpatsdemo.com/diendan/ mọi người xem và góp ý nhé,
  16. Thanh An

    Thanh An Seo Newbie

    Gia nhập:
    16/6/16
    Bài viết:
    2
    Đã được thích:
    0
    Nơi ở:
    34 - 36 Nam Kỳ Khởi Nghĩa
    Web:
    mình mới tập seo trên diễn đàn, độc mình không hiểu, bạn có bài nào chi tiết hơn k bạn?
  17. sơn expo

    sơn expo Top 9

    Gia nhập:
    22/5/15
    Bài viết:
    32
    Đã được thích:
    3
    Web:
    diễn đàn dạo này chết nhiều quá, bù link không kịp nỗi, khổ cho dân SEO
  18. xuanthanh13

    xuanthanh13 Top 9

    Gia nhập:
    7/5/16
    Bài viết:
    124
    Đã được thích:
    12
    Web:
    Với người dốt code như mình thì đúng là ma trận, có lẽ cần đầu tư học thêm về code thôi.
  19. phuclxr

    phuclxr Seo Newbie

    Gia nhập:
    21/5/16
    Bài viết:
    15
    Đã được thích:
    0
    Có Cách nào mà ko cần cài tinhte tag ko nhỉ ?

    Từ xenforo 1.5.1 trở đi là nó có sẵn tags rồi thì phải
  20. lehan100

    lehan100 Top 9

    Gia nhập:
    7/1/16
    Bài viết:
    113
    Đã được thích:
    10
    Web:
    Thank bạn nhé, cài addon tag tinh tế cả buổi. Mình làm được rồi

Nội quy khi thảo luận:

Dù bạn có cố tình spam bằng cách nào khi BQT diễn đàn phát hiện sẽ lập tức banned nick và xoá toàn bộ bài viết của bạn. Ngoài ra khi phát hiện ra Spam hãy gửi thông báo cho BQT diễn đàn. Hãy suy nghĩ trước khi hành động..!
✓ Khi muốn trả lời ai đó, bạn gõ @ cộng thêm nick diễn đàn của người đó phía sau @, giống như tag tên trên Facebook.
✓ Yêu cầu khi bình luận, bạn phải gõ chữ rõ ràng, không viết tắt, gõ tiếng Việt đầy đủ dấu câu.
✓ Nên dùng font chữ mặc định của diễn đàn, không tô màu lòe loẹt hay dùng size chữ quá lớn khi bình luận.
✓ Bài viết, comment... không được phép quảng cáo dịch vụ, rao vặt, pr... Loại trừ ở chuyên mục Rao vặt đã cho phép.
✓ Nghiêm cấm các chủ đề dạng: Cứu em với, help me, giật tít, câu view... dưới mọi hình thức.
✓ Tất cả các thành viên tham gia diễn đàn cần đọc kỹ Nội quy chung và nghiêm túc tuân thủ.


Chia sẻ trang này

Đang tải...