Lấy tid trong hook nodeapi when $op === 'presave'

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

Chào các bạn.
Mình đang có vấn đề là when mình dùng hook_nodeapi với $op === 'presave' mình có thể lấy được tid của term không?

if ($op === 'presave') { 
foreach ($node->taxonomy as $term) {
      if ($term->vid == 7) {
            $tid = $term->tid;
        break;
        }
        }  
/**
* process tid here
*/
}

dường như nó không hoạt động

Comments

Có vẻ như khi node chưa được

trankhaiphong's picture

Có vẻ như khi node chưa được save thì chưa thể lấy thông tin của taxonomy.

Bạn định can thiệp vào taxonomy của node thế nào vậy?

như thế này: if ($op ===

cuxi's picture

như thế này:

if ($op === 'presave') { 
if ($node->taxonomy) {
    /**
* process tid here
*/
        }  

}

nó có thể work mình chưa test nữa
Chưa hiểu câu hỏi của bạn lắm

Tran Tan
Tel : 0905 403 723
http://baogame.vn/
http://Bienhoa.vn/

Nếu node của bạn chưa tồn tại

trankhaiphong's picture

Nếu node của bạn chưa tồn tại thì không thể dùng được.

làm việc với module và view??

khuongkd's picture

Mình làm với view và module thì gặp vấn đề sau bạn chỉ cho mình nhé:

* Tạo module có form nhập thông tin, mình create table lưu thông tin đó. Làm cách nào để các thông tin này mình có thể lấy được khi tạo views?
* Mình tạo một view lấy thông tin từ một content type trong đó có trường "tên người dùng đăng nhập" mình muốn khi người dùng đăng nhập thì view hiển thị các bản ghi của người dùng đó thì làm thế nào?
* Mình muốn tạo 3 content type là trường, ngành, lớp: trong content type ngành có field lấy từ content type trường, tương tự ở lớp thì có fiedl ngành lấy từ conten type ngành thì làm thế nào? tạo một views lấy danh sách lớp thuộc trường xyz thì làm thế nào?

Cám ơn!

Hi bạn. bạn nên tạo một thảo

cuxi's picture

Hi bạn. bạn nên tạo một thảo luận riêng thì hay hơn là vào topic này.
Bạn có thể làm theo cách này:
- đưa table của bạn vào views modules bạn dùng modules table :http://drupal.org/project/tw để hỗ trợ
-thứ hai bạn dùng tham số uid trong views với việc cung cấp PHP code

if (arg(0) == 'node' && is_numeric(arg(1))) {//bạn nên change tham số url cho đúng với url của bạn
return TRUE;
} else {
return FALSE;
}

-thứ 3 bạn bật modules nodereferer lên nằm trong modules cck. bạn create filed nodereferen và chọn cái field ở content type bạn muốn.
Thân

Tran Tan
Tel : 0905 403 723
http://baogame.vn/
http://Bienhoa.vn/

Bạn chỉ rõ cho mình phần "thứ

khuongkd's picture
  • Bạn chỉ rõ cho mình phần "thứ hai" dùng php code vào đâu? trên giao diện nó hỗ trợ hay là mình vào code để sửa?
  • Phần ba: ý mình là khi tạo view ấy lấy danh sách các lớp có chung trường học