ব্যবহারকারীর নামগুলিতে কোন অক্ষরগুলি অনুমোদিত এবং সে সম্পর্কে ডকুমেন্টেশন কোথায় পাব?


11

আমি ব্যবহারকারীর নামগুলিতে স্পেস ব্যবহার করতে সক্ষম হতে চাই, তবে এটি সম্ভব বলে মনে হচ্ছে না। কোডেক্সে বা কোথাও এমন কোনও লিখনআপ রয়েছে যা ব্যাখ্যা করে যে কোন অক্ষরগুলিকে অনুমোদিত এবং কেন এটি সেটের মধ্যে সীমাবদ্ধ ছিল বা এটি কেবলমাত্র বর্ণমালা এবং চুষে খাপে আপ করা হয়?

যদি আমি ব্যবহারকারীদের কোনও শূন্যস্থান ছাড়াই ব্যবহারকারীর নাম ব্যতীত অন্য কিছু ব্যবহার করতে চাই, তবে আমার একমাত্র আসল বিকল্পটি এমন একটি প্লাগইন যা ব্যবহারকারীদের পরিবর্তে তাদের ইমেল ঠিকানাগুলি দিয়ে লগইন করতে পারে, তবে এখনও অ্যাকাউন্ট তৈরির ক্ষেত্রে কেবল একটি আলফা ব্যবহারকারীর প্রয়োজন?

ওহ, এবং আমি একটি ডাব্লুপিএমইউ / নেটওয়ার্ক সাইটে আছি।

উত্তর:


7

আপনি ব্যবহারকারীর নামগুলিতে স্পেস ব্যবহার করতে পারেন, কোনও সমস্যা নেই। ওয়ার্ডপ্রেস.অর্গ.এর বেশ কয়েকটি ব্যবহারকারীর ব্যবহারকারীর নাম ফাঁকা রয়েছে।

কঠোর মোড কেবল এই অক্ষরগুলিকে অনুমতি দেয়: a-z0-9<space>_.\-@

তবে ডাব্লুপি কঠোর মোডে ডিফল্ট হয় না।

এখন, মাল্টিসাইটের বিভিন্ন বিধিনিষেধ রয়েছে এবং এটি সেখানে ফাঁকা স্থান ফেলে দিতে পারে। এর কারণ হ'ল ব্যবহারকারীর নামগুলি স্বাধীন ব্লগ তৈরি করতে এবং যেমন মাল্টিসাইট ইনস্টলগুলিতে ব্যবহৃত হয়।


অর্থবোধ করে, এবং তবুও আমার বহু ইনস্টল আমাকে স্পেস, @, বা এর সাহায্যে ব্যবহারকারী তৈরি করতে দেয় না। নামে. আমি formatting.php তাকান এবং এটি @ অনুমতি দেয় বলে মনে হচ্ছে না। এবং স্পেস। এই চরিত্রগুলি কীভাবে প্রতিরোধ করছে তা নির্ধারণ করার জন্য আমার কোথায় অনুসন্ধান করা উচিত? আমি কেবল তাদের কেন বাধা দেওয়া হচ্ছে তা জানতে চাই।
পুরসেল

3
এটি ডাব্লুপি-অন্তর্ভুক্ত / এমএস-ফাংশন.পিপি-তে wpmu_uthorate_user_signup ফাংশনে রয়েছে এবং হ্যাঁ, এটি কেবল অক্ষর এবং সংখ্যাগুলিকে অনুমতি দেয়। অবশ্যই একটি বহুবিধ জিনিস।
অটো

5

আমি মনে করি না যে এটি সম্পর্কে কোনও অফিসিয়াল ডকুমেন্টেশন আছে, তবে আপনি এখানে sanitize_userফাংশনটি একবার দেখে নিতে পারেন wp-includes/formatting.php:

function sanitize_user( $username, $strict = false ) {
    $raw_username = $username;
    $username = wp_strip_all_tags( $username );
    $username = remove_accents( $username );
    // Kill octets
    $username = preg_replace( '|%([a-fA-F0-9][a-fA-F0-9])|', '', $username );
    $username = preg_replace( '/&.+?;/', '', $username ); // Kill entities

    // If strict, reduce to ASCII for max portability.
    if ( $strict )
        $username = preg_replace( '|[^a-z0-9 _.\-@]|i', '', $username );

    $username = trim( $username );
    // Consolidate contiguous whitespace
    $username = preg_replace( '|\s+|', ' ', $username );

    return apply_filters( 'sanitize_user', $username, $raw_username, $strict );
}

আপনি function ফাংশনটিতে প্রবেশ করতে পারেন এবং নিজের সাথে ডিফল্ট আচরণকে ওভাররাইড করতে পারেন।


Formatting.php নির্দেশ করার জন্য ধন্যবাদ। আমার মাল্টি ইনস্টল আমাকে @ স্পেস, @, বা দিয়ে ব্যবহারকারী তৈরি করতে অনুমতি দেবে না। নামে. আমি formatting.php তাকান এবং এটি @ অনুমতি দেয় বলে মনে হচ্ছে না। এবং স্পেস। এই চরিত্রগুলি কীভাবে প্রতিরোধ করছে তা নির্ধারণ করার জন্য আমার কোথায় অনুসন্ধান করা উচিত? আমি কেবল তাদের কেন বাধা দেওয়া হচ্ছে তা জানতে চাই।
পুরসেল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.