- סטטוס
- נפתר
- דווח עבור
- WPML Multilingual CMS 4.6.8
- נפתר בגרסה
- WPML 4.6.9
- תגיות נושא
- Bug
סקירה כללית של התקלה
אם יש לך משתמש עם “תפקיד מותאם אישית”, לדוגמה “מנהל חנות” המבוסס על התפקיד “עורך”, הוא לא יוכל לערוך תרגומים קיימים.
פתרון עוקף
1. בקובץ wp-content/plugins/sitepress-multilingual-cms/vendor/wpml/wp/classes/User.php בשורה 217, שנה את המתודה – \WPML\LIB\WP\User::isEditor ל:
public static function isEditor(WP_User $user = null) {
$capability = "editor";
$capability = apply_filters('wpml_editor_capability', $capability );
return self::hasCap( $capability, $user );
}
2. בקובץ functions.php של ערכת העיצוב הוסף את הקוד הבא:
add_filter('wpml_editor_capability', 'my_editor');
function my_editor(){
$user = wp_get_current_user();
if (in_array('second_custom_role', (array)$user->roles, true)){
return 'second_custom_role';
}
}
שנה את החלק second_custom_role לשם התפקיד המותאם אישית שלך, בדוגמה זו shop_manager.