2014-05-21 7 views
0

나는 학생 후견인 관계가있는 웹 사이트에서 일하고 있습니다. 따라서 보호자가 학생 프로필을 방문 할 때 그는 사용자 자신이 할 수있는 모든 필드를 편집하고 삭제할 수 있어야합니다. 나는 buddypress를 사용하고 rtmedia 플러그인을 사용했다. 예를 들어, 학생은 미디어, 이미지를 업로드합니다. 기본적으로 다른 사용자는 미디어를 삭제하거나 편집 할 수 없습니다. 그러나 저의 경우, 보호자는 학생 미디어를 편집하고 삭제할 수 있어야합니다. 후견인에게 관리자 역할을 할당하면 학생 프로필을 볼 때 문제가 해결 될 수 있다고 생각합니다. 하지만 사용자 amdin 역할을 할당하는 방법을 모르겠습니다. 감사합니다wordpress에서 사용자에게 관리 역할을 할당하는 방법은 무엇입니까?

+0

업로드 버튼 bp_displayed_user_id() == get_current_user_id()에 대한 조건을 변경하고 보호자 용으로 수정했습니다. 이제 보호자보기 학생 프로필, 업로드 버튼이 표시되지만 작동하지 않습니다. 클릭하면 아무 일도 일어나지 않습니다. 그런 다음 편집, 삭제 및 업로드 버튼을 위해 html을 복사하여 붙여 넣습니다. 이렇게하면 보호자가 미디어를 편집 할 수 있지만 보호자가 무언가를 삭제하려고하면 "Ooops !!! 액세스가 잘못되었습니다. 넌센스를 찾을 수 없습니다 !!"라는 메시지가 나타납니다. – Riz

+0

이제 보호자는 미디어를 편집 및 삭제할 수 있지만 업로드 할 수는 없습니다. – Riz

답변

0

나는 워드 프레스 사본에서 사용자 관리 화면에 읽는 것이 좋습니다 :

https://codex.wordpress.org/Users_Screen#Change_Roles_to 그것은 기존에 역할을 할당뿐만 아니라, 기존 사용자에 대한 역할을 전환하는 방법을 설명합니다

:

https://codex.wordpress.org/Users_Add_New_Screen

+0

이 링크에서 사용자는 수동으로 역할을 부여해야합니다. 보호자가 자신의 학생 프로필 만 방문하면 학생 프로필을 편집 할 수 있어야하고 다른 사용자의 프로필을보고있는 경우이 권한이 없어야하므로 코드에서이 기능이 필요합니다. 시간 내 줘서 고마워. – Riz

0

당신은 관리자에게 그들에게 역할을주고 싶지 않아.

학생/보호자 관계를 확인하고 수정 권한이 있는지 확인하고 싶습니다.

이러한 액세스를 허용하려면 BP에서와 같이 다양한 작업을 수행해야하며, 편집을 허용하려면 프로필 화면 루프를 필터링하십시오.

+0

감사합니다. 프로필 화면을 필터링하는 방법을 알려주시겠습니까? 코드를 알려주시겠습니까? 감사 – Riz

0

는 플러그인 디렉토리에 PHP 파일을 만들고 http://code.tutsplus.com/articles/wordpress-roles-and-capabilities-the-basics--wp-25921

활성화 플러그인에 따라 기능에 대한

더 추가 할 수 있습니다 더 많은 기능 위의 내용

<?php 
/* Plugin Name: Add role */ 
function add_roles() { 
$result = add_role(
    'admin', 
    __('Admin'), 
    array(
    'edit_posts' => true, // true allows this capability 
     'read'   => true, 
     'delete_posts' => false, // Use false to explicitly deny 
     ) 
); 
if ($result !== null) { 
    echo 'New role created'; 
} 
else { 
    echo 'Role already exists..'; 
} 

    } 
    register_activation_hook(__FILE__, 'add_roles'); 

아래에 추가하고 관리자를 지정하는 사용자에 따라 확인 역할

(보호자 역할 용) 미디어를 삭제하거나 편집하는 기능을 할당합니다.

(학생 프로필을 방문한 후 사용자 자신이 할 수있는 모든 입력란을 수정하거나 삭제 한 후) 관리자 역할을 할당하고 플러그인 기능을 편집하여 학생과 동일한 기능을 할당하십시오. 그런 다음 플러그인을 다시 활성화하십시오.