как дать пользователю разрешение на содержание страниц своих стручков только с опциями «добавить» и «редактировать»? - PullRequest
1 голос
/ 10 января 2012

Как разрешить пользователю доступ к содержимому страниц своих модулей только с опциями «добавить» и «редактировать»?Я использую PHP, Apache, MySql и WordPress.Пожалуйста, дайте мне примеры кода.

Я использую следующий код:

<?php 
$object = new Pod('dreams');
$object->ui = array('title' => 'My Pod' ,'add_fields' => array('name' ,'position','photo','bio','eom'),'edit_fields' => array('name' ,'position','photo','bio','eom','approved'));
    //load Pod
    $pod = new Pod('dreams');

    if(current_user_can('administrator')) {
        //set publicForm() visible fields for admins
       $object->ui = array('title' => 'My Dream' ,'add_fields' => array('name' ,'position','photo','bio','eom'),'edit_fields' => array('name' ,'position','photo','bio','eom','approved'));
    pods_ui_manage($object);
    } else if(is_user_logged_in()) {
    // Get the last URL variable
    $slug = pods_url_variable('1');
    $Edit = new Pod('team', $slug);
    $name = $Edit->get_field('name');
    $author_id = $Edit->get_field('author_id'); // GET AUTHOR FROM POD
     $user_id = $current_user->ID;
    global $current_user;   // GET USER INFO
    get_currentuserinfo();
$object->ui = array('title' => 'My Dream' ,'add_fields' => array('name' ,'position','photo','bio','eom'),'edit_fields' => array('name' ,'position','photo','bio','eom','approved'));
    pods_ui_manage($object);
 // $edit_listing = (($author_id == $current_user->ID) || (current_user_can('manage_options') == true) ? true : false); //

}; ?> <br/><br/>
<table>
<div><h1>Create a Dream</h1>
<p>What is this Dream, what do I want to do, accomplish, achieve?</p>
<p>Does this Dream involve someone else?</p>
<p>What tools are available to help achieve this Dream?</p>
<p>What steps can I take to help me achieve this Dream?</p>

<?php  $pod->publicForm($fields); ?>
</div></table>

Теперь пользователь также может просматривать и редактировать все остальные сообщения пользователя.Но так не должно быть.

1 Ответ

0 голосов
/ 08 февраля 2012

В вашем массиве "ui" вы хотите добавить дополнительные предложения 'where' и 'edit_where'.

'where' => 'p.author_id = ' . $user_id,
'edit_where' => array('author_id' => $user_id)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...