WPML
الحالة
محلولة
أُبلغ عنها لـ
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.

جميع المشاكل المعروفة →