익명 사용자가 노드를 게시 할 수 있습니다. 게시 노드 후 사용자는 등록으로 리디렉션됩니다. 등록 후, 이전에 제출 된 노드는 새로 등록 된 사용자와 연결되어야합니다. 규칙과 엔티티로 게임을했는데 올바르게 작동하지 못했습니다. 어떤 아이디어?노드 작성자 자동 변경
2
A
답변
5
맞춤 모듈을 작성 하겠지만 (나만) 모듈은 hook_node_insert
을 구현하고 nid
을 SESSION
에 저장해야합니다. 그런 다음 hook_user_insert
에서 변경 작업을 수행 할 수 있습니다. 테스트되지 않은 코드 :
function foo_node_insert($node) {
$_SESSION['mynodes'][] = $node->nid;
}
function foo_user_insert($edit, $account) {
if (!empty($_SESSION['mynodes'])) {
foreach ($_SESSION['mynodes'] as $nid) {
$node = node_load($nid);
$node->uid = $account->uid;
// This saves the revision as the current user uid but that's just what we wanted.
node_save($node);
}
}
}
편집 : 등록 후까지 unset($_SESSION['mynodes']);
0
저장 노드의 데이터를 잊고 다음을 게시하지 않습니다.
0
모듈은 Anonymous Node Create입니다.
모듈을 사용하면 익명 사용자가 노드를 만들 수 있습니다. 그러나 '익명'은이 모듈에서 의심 스럽습니다. 이 모듈은 저장 단추 앞에 끝에 두 개의 필드 그룹을 추가하여 익명 사용자에 대한 노드 양식을 변경합니다.
첫 번째 필드 그룹에는 사용자가 새 계정을 만들 수있는 필드가 있습니다. 이 새 계정은 생성 된 새 노드의 작성자입니다.
완벽하게 작동합니다. 감사합니다. – user506259