Hướng dẫn tạo nhiều layout giống trang chủ XenPorta

Thảo luận trong 'XenForo Development' bắt đầu bởi Lil.Tee, 28/4/13.

1votes
5/5, 1 vote

  1. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    1. Đối với phiên bản XenPorta từ 1.5.7 trở xuống

    Bước 1: Vào ACP > XenPorta > Options > Click vào 'Article (article-# > article > portal) Categories (articles-#slug > articles > portal)'

    [​IMG]

    Bước 2: Vào Layout
    + type: chọn articles
    + ID: ten-muc (cái này không được viết có dấu)
    Sau đó ấn Customize New Layout

    [​IMG]

    Bước 3: Kéo thả những block bạn cần dùng cho Layout này. Save lại.

    [​IMG]

    Bước 4: Vào lại ACP > XenPorta > Options và bỏ click 'Article (article-# > article > portal) Categories (articles-#slug > articles > portal)' rồi save lại.
    Xong rồi đó.

    [​IMG]

    Bạn vào domain.com/articles/ten-muc/ để kiểm tra nhé.
    Chú ý: Khi gõ trên trình duyệt, phải có dấu / cuối link. Không được: domain.com/articles/ten-muc
    Và ở đây không dùng được block RecentNews nếu bạn đã sử dụng block này ở trang chủ. Bạn có thể tạo block RecentNews khác để sử dụng, và nó hoạt động bình thường nhé :D
    Bước 5: Tiếp theo, trong template EWRporta_Portal tìm đoạn
    PHP:
            <xen:h1>{$xenOptions.boardTitle}</xen:h1>
    Thay bằng
    PHP:
    <xen:if is="{$category} == 'ten-muc'"// Nếu link có dạng http://domain.com/articles/ten-muc/ thì sẽ hiện tiêu đề và thẻ h1 như bên dưới
            
    <xen:h1>Tên mục 1</xen:h1>
            <
    xen:title>Tên mục 1</xen:title>
    <
    xen:elseif is="{$category} == 'ten-muc-2' "/> // Nếu link có dạng http://domain.com/articles/ten-muc-2/ thì sẽ hiện tiêu đề và thẻ h1 như bên dưới
            
    <xen:h1>Tên mục 2</xen:h1>
            <
    xen:title>Tên mục 2</xen:title>
    <
    xen:else /> //Nếu không phải mấy cái trên thì hiện thẻ h1 mặc định
    <xen:h1>{$xenOptions.boardTitle}</xen:h1>
    </
    xen:if>
    2. Đối với phiên bản XenPorta 1.5.8

    Bước 1: Vào ACP > XenPorta > Options > Click vào
    'Article (article-# > article > portal) Categories (articles-#slug > articles > portal)'
    Sau đó save lại.

    [​IMG]

    Bước 2: Vào ACP > XenPorta > Categories > Click vào "Creat New Category"
    + category: Tên của mục bạn muốn đặt
    + Link URL: ten-muc (ví dụ ở hình: vat-li-dai-cuong) (*)
    Sau đó ấn Save Category

    Bước 3: Vào Layout
    + type: chọn articles
    + ID: ten-muc (phải giống hệt với (*), tức là phải ghi là : vat-li-dai-cuong)
    + Ấn Customize New Layout

    [​IMG]

    Bước 4: Kéo thả những block bạn cần dùng cho Layout này. Save lại.

    [​IMG]

    Bước 5: Vào lại ACP > XenPorta > Options và bỏ click 'Article (article-# > article > portal) Categories (articles-#slug > articles > portal)' rồi save lại.

    [​IMG]

    Bạn vào domain.com/articles/ten-muc/ để kiểm tra nhé.

    Nhận xét: Bước 2 ở bản 1.5.8 chính là bước 5 ở bản 1.5.7. Bản 1.5.8 tích hợp luôn title nên chúng ta không phải sửa code nữa.
    Đề mô cho nó đủ bộ:
    http://tanghaituan.com/
    http://tanghaituan.com/articles/bat-dang-thuc/
     
    VXF, Sơn Phạm, dongdaik and 2 others like this.
    Đang tải...
  2. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Làm cái này hình như chỉ sự cho category thì phải, mình đã từng áp dụng vào forum nhưng nó kg cập nhật bài viết mới, nếu caches 1p' thì nó cập nhật xong rồi biến mất block luôn!
     
  3. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Nói chung cách làm thế này thuận lợi cho việc tạo nhiều page portal, đồng ý với phương thức này thuận lợi để làm 1 site báo, tin tức CSM chẳng hạn. Liked mạnh :D
     
    xe84.com thích bài này.
  4. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    Bác làm thử đi, được đó, bài mới cập nhập liên tục luôn ạ, như ở dưới là em tạo 1 block Recent News mới trích xuất bài viết ở mục khác với trang chủ.
    Demo http://tanghaituan.com/articles/bat-dang-thuc/
     
  5. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Cái của bạn chỉ là dùng article, và phải dùng link của article đã đặt ra luôn! Cho nên chỉ thuận tiện làm những tab menu có tên gì gì đó, rồi đặt link cho nó wa những article này! Phần nội dung hiển thị sẽ là các nội dung của trang, ví dụ như các forum con của 1 tab rồi là xã hội, ta cho nó thể hiện những recentnew về giao dục, phóng sự chẳng hạn. Và đây là 1 cách biến tấu để xenforo trở thành 1 CSM đúng nghĩa nhưng kg mất đi bản sắc của 1 forum :D
     
  6. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Để làm xong cái forum rồi build 1 nhát CSM cho mấy bác thích site tin tức, làm luôn auto leech link full sạch bán chắc ngon à =))
     
    Lil.Tee thích bài này.
  7. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    Chuẩn lun bác, với lại cái articles này có thể dùng route change để đổi thành tên khác mình muốn bác nhỉ :D.
     
  8. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Có thể! Mình đang từng test tạo layout cho forum nhưng thất bại với các block rencent! Hy vọng sau time này, test chuẩn lại thì việc xây dựng 1 site xenforo về "hình thù" CMS kg còn là khó khăn nữa =))
     
    Lil.Tee thích bài này.
  9. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    Update vài cái ảnh cho sinh động.
     
  10. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Chọn xong rồi lại bỏ à *.*
     
  11. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    Đúng bác ạ, k nó sẽ bị lỗi hiển thị ở threads views. Chọn cái đó mục đích để làm bước 2 thui :D
     
  12. Kid

    Kid VIP Member

    Bài viết:
    863
    Likes :
    947
    Mã:
    <xen:if is="{$category} == 'ten-muc'"> // Nếu link có dạng http://domain.com/articles/ten-muc/ thì sẽ hiện tiêu đề và thẻ h1 như bên dưới
            <xen:h1>Tên mục 1</xen:h1>
            <xen:title>Tên mục 1</xen:title>
    <xen:elseif is="{$category} == 'ten-muc-2' "/> // Nếu link có dạng http://domain.com/articles/ten-muc-2/ thì sẽ hiện tiêu đề và thẻ h1 như bên dưới
            <xen:h1>Tên mục 2</xen:h1>
            <xen:title>Tên mục 2</xen:title>
    <xen:else /> //Nếu không phải mấy cái trên thì hiện thẻ h1 mặc định
    <xen:h1>{$xenOptions.boardTitle}</xen:h1>
    </xen:if>
    Code này em nghĩ nên thay bằng, như vậy là được luôn chứ ko cần ten-muc-1 ten-muc-2 gì hết anh ạ


    Mã:
    <xen:if is="{$category}">
    //Nếu có tồn tại tên {$category}
    <xen:title>{$category.title}</xen:title>
     
    <xen:if is="{$category.description} AND @threadListDescriptions">
    <xen:description class="baseHtml">{xen:raw $category.description}</xen:description>
     
    </xen:if>
    <xen:else />
    <xen:h1>{$xenOptions.boardTitle}</xen:h1>
    </xen:if>
    //Nếu không tồn tại tên category thì đề về mặc định
    // Nếu có tồn tại cả phần miêu tả cho Category thì hiển thị luôn cả miêu tả (tốt cho SEO)
     
    Lil.Tee thích bài này.
  13. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    Anh thử cái đó rùi nhưng không được em ạ.
    Cái $category.title không hiển thị.
     
  14. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
    Ế con nhà ông Ẩm :))
     
  15. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    hàng này ngon đó lee, đang tìm ca1ci menu active cho xenforo để làm 1 site tổng hợp mà tìm chưa ra!
     
    Lil.Tee thích bài này.
  16. nttruong

    nttruong Well-Known Member

    Bài viết:
    1,518
    Likes :
    776
    Cái hướng dẫn của Lil.Tee là thay thẻ h1, vậy giờ mình muốn thay cái header của phần articles đó thì làm thế nào Lee?
     
  17. xe84.com

    xe84.com Member

    Bài viết:
    239
    Likes :
    24
    ngon qua, dung hang minh can
     
  18. Lil.Tee

    Lil.Tee Member

    Bài viết:
    405
    Likes :
    116
  19. xe84.com

    xe84.com Member

    Bài viết:
    239
    Likes :
    24
    da lam duoc .thank cac ban nhieu
     
  20. KenExpress

    KenExpress New Member

    Bài viết:
    45
    Likes :
    7
    Bạn nào giúp mình với, mình cài xong xenporta thì web không vào được luôn


    Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.
     
comments powered by Disqus

Chia sẻ trang này

Đang tải...