Mình muốn hiển thị view tin liên quan nhưng muốn loại bỏ đi tin tại node/nid hiện tại

Events happening in the community are now at Drupal community events on www.drupal.org.
scorpions0502's picture

Mình muốn hiển thị view tin liên quan nhưng muốn loại bỏ đi tin tại node/nid hiện tại. Ví dụ mình muốn view tin liên quan nhưng ko biết làm thế nào loại bỏ đi tin của view đó. Ví dụ tại node/90 thì tại view ko hiện thị tại node view của nid=90 đó. Ai biết cách view hiển thị tin liên quan tại node/nid thì ko hiển thị view của node/nid đó ko chỉ mình với.
Mình cảm ơn các bạn rất nhiều

Comments

Bạn thêm argument là Node Id,

thiennguyen's picture

Bạn thêm argument là Node Id, rồi chọn exclude nó đi là OK

scorpions0502's picture

Vẫn ko được, mình view block và sử dụng Arguments, node url alia, mình thấy trang thongtincongnghe.com làm thế. Mình làm vẫn hiện thị view tại node đó. Mình dùng view block. Ai có cách nào loại bỏ như trang thongtincongnghe.com ko chỉ mình với

Nếu đang ở node page thì hoàn

thiennguyen's picture
  • Nếu đang ở node page thì hoàn toàn có thể lấy node id từ url, dùng views có thể tạo các tin bài mới, các bài viết cùng nhóm ...
  • Hoặc bạn có thể đưa vào node.tpl.php để lấy tham số cho views.
    VD:
    if ($page) {
    echo views_embed_view('ten_views', 'default', $node->nid);
    }

Cảm ơn bạn nhiều.

scorpions0502's picture

Mình chưa biết dùng echo views_embed_view(' ', ...). Giờ mới biết cảm ơn bạn rất nhiều
Và có thể sử dụng

<?php
foreach ($node->taxonomy as $key => $tobj) {
 
$tid = $key;
}
if(
$tid==số)
{
echo
views_embed_view('view_name', 'block_1', $node->nid);
}
?>

để thay cho từng nhóm
Giờ mới biết cảm ơn bạn rất nhiều

Mình tạo một Views và hay làm

Nothing4ever's picture

Mình tạo một Views và hay làm thế này để lấy bài viết cùng chuyên mục và khác với tin hiện tại (Dp6)

  • Đầu tiên lấy các tin cùng chuyên mục
    Add Argument là TermID, chọn PHP code như sau

    if (arg(0) == 'node' && is_numeric(arg(1)) && is_null(arg(2))) {
    $node = node_load(arg(1));
    $vid=1;
    //$vid lấy id của vocabulary chứa term đó, để loại trừ khả năng 1 node thuộc nhiều vocabulary khác nhau
    $terms = taxonomy_node_get_terms_by_vocabulary($node, $vid);
    if ($terms) {
        foreach ($terms as $term) {
           
           return $term->tid;
       }
    }

    }
  • Loại bỏ tin hiện tại
    Add NId từ Argument
    Chọn provide default argument là Node id from url
    Chọn Exclude argument phía dưới (quan trọng là cái này để nó exclude cái nid hiện tại ra khỏi danh sách)

Vậy thôi. OK để xem kết quả
Mọi người có cách nào đó thì share anh em học hỏi thêm nhé

tạo mới thêm trường thôi !

topiclaw's picture

tạo mới thêm trường thôi ! cách này đơn giản nhất. còn k thì cũng khó lắm

I am a drupal user, and that's the resion i am here !

See: cong ty luat | maxitalk and my blog

Thank!

FPT Quy Nhơn's picture

Cảm ơn các bạn đã comment trên đặc biệt bạn Nothing4ever