Elliot 14 Posted April 14, 2018 Report Share Posted April 14, 2018 Здравствуйте друзья! У меня нет знаний php и я это стараюсь компенсировать гуглом, но гугл не особо мне помог... Хочу к этой функции прикрутить права групп пользователей, чтобы выводимая функцией вкладка, отображалась всем кроме Автора. Но увы, облазил очень много сайтов по WP и все четно, помогите пожалуйста. add_filter('rcl_tab','edit_you_author_tab_data'); function edit_you_author_tab_data($data){ if($data['id']!='you_author') return $data; $data['public'] = 1; return $data; } Заранее спасибо! Link to post Share on other sites
Elliot 14 Posted April 21, 2018 Author Report Share Posted April 21, 2018 еще актуально, решения не нашел( Link to post Share on other sites
gefard 89 Posted April 21, 2018 Report Share Posted April 21, 2018 17 минут назад, Elliot сказал: еще актуально, решения не нашел( Что $data содержит? Дамп в студию. Link to post Share on other sites
Elliot 14 Posted April 21, 2018 Author Report Share Posted April 21, 2018 Эта функция выводит вкладку в личном кабинете, метка вкладки you_author а что под $data я не знаю( Link to post Share on other sites
gefard 89 Posted April 21, 2018 Report Share Posted April 21, 2018 1 минуту назад, Elliot сказал: Эта функция выводит вкладку в личном кабинете, метка вкладки you_author а что под $data я не знаю( ну так выведи на экран function edit_you_author_tab_data($data){ echo '<pre>'; print_r($data); echo '</pre>'; if($data['id']!='you_author') return $data; $data['public'] = 1; return $data; } Link to post Share on other sites
Elliot 14 Posted April 21, 2018 Author Report Share Posted April 21, 2018 ( [id] => you_author [name] => You author? [public] => 0 [icon] => fa-question-circle [output] => menu [custom-tab] => 1 [content] => Array ( [0] => Array ( [id] => subtab-1 [name] => You author? [icon] => fa-question-circle [callback] => Array ( [name] => rcl_custom_tab_content [args] => Array ( [0] => Хотите стать автором? ) ) ) ) [supports] => Array ( [0] => cache [1] => ajax ) ) Это? Link to post Share on other sites
petroff 648 Posted April 21, 2018 Report Share Posted April 21, 2018 @Elliot, вот чесно, забудь про wp и wp-recall. Смотри в сторону dle и блого-социальных движков Я это все уже проходил, путного с вп ничего не получится Link to post Share on other sites
Elliot 14 Posted April 21, 2018 Author Report Share Posted April 21, 2018 9 минут назад, petroff сказал: @Elliot, вот чесно, забудь про wp и wp-recall. Смотри в сторону dle и блого-социальных движков Я это все уже проходил, путного с вп ничего не получится Конечно не по теме, но т.е. какие блого-социальные движки вы посоветуете? А дле, честно, он мне так же горько не нравиться как и дрюпал, может сейчас версии по лучше, но для меня он какой-то деревянный, Имхо... Link to post Share on other sites
petroff 648 Posted April 21, 2018 Report Share Posted April 21, 2018 4 минуты назад, Elliot сказал: Конечно не по теме, но т.е. какие блого-социальные движки вы посоветуете? А дле, честно, он мне так же горько не нравиться как и дрюпал, может сейчас версии по лучше, но для меня он какой-то деревянный, Имхо... MODx наверное, altocms, livestreet. Блин, но везде конечно php нужно знать хотя бы чуть выше уровня чайника Link to post Share on other sites
Elliot 14 Posted April 21, 2018 Author Report Share Posted April 21, 2018 2 минуты назад, petroff сказал: MODx наверное, altocms, livestreet. Блин, но везде конечно php нужно знать хотя бы чуть выше уровня чайника Говорят, php можно выучить за две недели, я бы учил, и не задавал тупых вопросов... Но где найти уроки строго от А до Я? Я искал, и что в итоге, такое ощущение, что выкладывают те, кто вообще не знают что это такое, типа уроки от Ж до Б.... все вперемешку, учишь то, что еще рано учить и т.д. На счет CMS, Livestreet там не немного знаний php нужно, а нормально так, ну естественно зависит от задачи но т.е. MODx пробовал, но как-то не пошло. ЗЫ. когда знаешь php, то скорее всего выбор движка - вопрос не актуален)) Link to post Share on other sites
gefard 89 Posted April 21, 2018 Report Share Posted April 21, 2018 30 минут назад, Elliot сказал: Это? function edit_you_author_tab_data($data){ if($data['id']!='you_author') return $data; else { global $current_user; if( is_author( $current_user->id ) ) $data['public'] = 0; else $data['public'] = 1; return $data; } } Как-то так думаю, сложно что-то говорить когда доков по ВП нет нормальных Link to post Share on other sites
Elliot 14 Posted April 21, 2018 Author Report Share Posted April 21, 2018 8 минут назад, gefard сказал: function edit_you_author_tab_data($data){ if($data['id']!='you_author') return $data; else { global $current_user; if( is_author( $current_user->id ) ) $data['public'] = 0; else $data['public'] = 1; return $data; } } Как-то так думаю, сложно что-то говорить когда доков по ВП нет нормальных К сожалению, вкладка отображается для всех в том числе и гостям( Link to post Share on other sites
VIP campusboy 912 Posted April 22, 2018 VIP Report Share Posted April 22, 2018 add_filter( 'rcl_tab', 'edit_you_author_tab_data' ); function edit_you_author_tab_data( $data ) { // Если наша вкладка с id = you_author if ( $data['id'] === 'you_author' ) { // Если пользователь имеет роль = автор if ( current_user_can( 'author' ) ) { $data['public'] = 0; } // Если пользователь НЕ автор else { $data['public'] = 1; } } return $data; } Если не сработало, то поменяйте 0 и 1 местами, так как я не особо понял, что в каком случае означает, лишь догадка. Link to post Share on other sites
Elliot 14 Posted April 22, 2018 Author Report Share Posted April 22, 2018 12 часа назад, campusboy сказал: add_filter( 'rcl_tab', 'edit_you_author_tab_data' ); function edit_you_author_tab_data( $data ) { // Если наша вкладка с id = you_author if ( $data['id'] === 'you_author' ) { // Если пользователь имеет роль = автор if ( current_user_can( 'author' ) ) { $data['public'] = 0; } // Если пользователь НЕ автор else { $data['public'] = 1; } } return $data; } Если не сработало, то поменяйте 0 и 1 местами, так как я не особо понял, что в каком случае означает, лишь догадка. $data['public'] = 0; - приватная вкладка, отображается только пользователю в личном кабинете, параметр 1 - вкладка отображается всем пользователям. Ваш вариант не сработал, отображается всем ролям, не зависимо от этого параметра... Link to post Share on other sites
VIP campusboy 912 Posted April 23, 2018 VIP Report Share Posted April 23, 2018 Ещё вариант: add_filter( 'rcl_pre_output_tab', 'edit_you_author_tab_data' ); function edit_you_author_tab_data( $data ) { // Если наша вкладка с id = you_author if ( $data['id'] === 'you_author' ) { // Если пользователь имеет роль = автор if ( current_user_can( 'author' ) ) { unset($data); return; } } return $data; } Elliot 1 Link to post Share on other sites
Elliot 14 Posted April 23, 2018 Author Report Share Posted April 23, 2018 2 часа назад, campusboy сказал: Ещё вариант: add_filter( 'rcl_pre_output_tab', 'edit_you_author_tab_data' ); function edit_you_author_tab_data( $data ) { // Если наша вкладка с id = you_author if ( $data['id'] === 'you_author' ) { // Если пользователь имеет роль = автор if ( current_user_can( 'author' ) ) { unset($data); return; } } return $data; } Спасибо, все работает как надо Link to post Share on other sites
kuzovbmw 587 Posted April 23, 2018 Report Share Posted April 23, 2018 В 22.04.2018 в 0:08 AM, Elliot сказал: Говорят, php можно выучить за две недели, я бы учил, и не задавал тупых вопросов... Но где найти уроки строго от А до Я? Я искал, и что в итоге, такое ощущение, что выкладывают те, кто вообще не знают что это такое, типа уроки от Ж до Б.... все вперемешку, учишь то, что еще рано учить и т.д. На счет CMS, Livestreet там не немного знаний php нужно, а нормально так, ну естественно зависит от задачи но т.е. MODx пробовал, но как-то не пошло. ЗЫ. когда знаешь php, то скорее всего выбор движка - вопрос не актуален)) Выучить php за 2 недели?) мда... Кто Вам такую чушь сказал. Хорошо допустим вы поняли основные моменты, типа переменных, циклов (foreach, for, while) Вы поняли как выводить содержимое (echo, var_dump, print_r), ок, массивы тоже разобрали, хорошо Вы поняли что такое функции и как туда передавать аргумент и тп. Но дальше то пойдет ООП, PDO, работа с базой данных и выборкой + логика + все возможные функции php, как минимум пол года уйдет по одной простой причине что Вы не сможете все узнать из мануала а только поймете по практике. Тут по мимо php Вам придется учить sql плотно, да и еще все cms работают на своих подходах к обращению к базам и тп. Когда знаешь php начинаешь учить фреймворки. И тогда во многом забываешь что такое WP, drupal, joomla и тп, у тебя все на MVC и разноситься за считанные часы, а логику уже пишешь под себя ничего лишнего, никакого мусора и тп Link to post Share on other sites
Elliot 14 Posted April 23, 2018 Author Report Share Posted April 23, 2018 4 часа назад, kuzovbmw сказал: Выучить php за 2 недели?) мда... Кто Вам такую чушь сказал. Хорошо допустим вы поняли основные моменты, типа переменных, циклов (foreach, for, while) Вы поняли как выводить содержимое (echo, var_dump, print_r), ок, массивы тоже разобрали, хорошо Вы поняли что такое функции и как туда передавать аргумент и тп. Но дальше то пойдет ООП, PDO, работа с базой данных и выборкой + логика + все возможные функции php, как минимум пол года уйдет по одной простой причине что Вы не сможете все узнать из мануала а только поймете по практике. Тут по мимо php Вам придется учить sql плотно, да и еще все cms работают на своих подходах к обращению к базам и тп. Когда знаешь php начинаешь учить фреймворки. И тогда во многом забываешь что такое WP, drupal, joomla и тп, у тебя все на MVC и разноситься за считанные часы, а логику уже пишешь под себя ничего лишнего, никакого мусора и тп Ну вот)) т.е. читал такое, что реально выучить, но походу врали)) Вот сейчас я ищу материалы по php но все как бы с середины начинается, смысл учить то, что не понимаешь... Link to post Share on other sites
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now