কীভাবে প্রোগ্রামক্রমে ব্যবহারকারী নাম (ব্যবহারকারী_লগিন) পরিবর্তন করবেন?


15

শিরোনাম হিসাবে, কিভাবে প্রোগ্রামক্রমে ব্যবহারকারী লগইন পরিবর্তন?

আমি wp_insert_userফাংশনটি ব্যবহার করতে চেয়েছিলাম , তবে এটি প্রদর্শিত হয় যে বর্তমান ব্যবহারকারী আপডেট করার সময় এটি তাদের ব্যবহারকারীর নাম পরিবর্তন করে না। আমি কি তার $wpdb->updateজন্য ব্যবহার করব ? যদি হ্যাঁ, ব্যবহারকারীর নাম পরিবর্তন করার কোডটি কেমন হবে? ওয়ার্ডপ্রেস এপিআই ব্যবহারকারীর নাম পরিবর্তন করার অনুমতি দেয় না তা ব্যবহারকারীর লগইন পরিবর্তন করে কী পরিণতি ঘটতে পারে?

উত্তর:


21

আমি নিশ্চিত ছিলাম যে wp_update_userফাংশনটি এটি করা উচিত ( http://codex.wordpress.org/Function_References/wp_update_user )।

এমনকি এটি ইউজার_লগিনকে পরম হিসাবে পেয়েছে, তবে আপনি যখন এই প্যারামটি সেট করেন তখন মনে হয় এটি এটিকে উপেক্ষা করে।

সুতরাং এই কোডটি ঠিক আছে বলে মনে হচ্ছে তবে এটি আপনার ইচ্ছা মতো কাজ করে না :(:

wp_update_user( array ( 'ID' => $user_id, 'user_login' => $new_login ) ) ;

ইউজার_লগিন আপডেট করার জন্য আপনাকে কাস্টম এসকিউএল কোয়েরি কল করতে হবে:

$wpdb->update($wpdb->users, array('user_login' => $new_user_login), array('ID' => $user_id));

এটি ঠিক আছে এবং আমি মনে করি না এর কোনও মারাত্মক পরিণতি হয়েছে বলে আমি মনে করি না, কারণ ডাব্লুপি ব্যবহারকারীর কাছে পোস্ট / মন্তব্য (এবং আরও কিছু) বরাদ্দ করতে ব্যবহারকারী আইডি ব্যবহার করে।

কেবলমাত্র আমি ভাবতে পারি যে এই ব্যবহারকারী বর্তমানে লগইন হয়ে গেলে ব্যবহারকারী_লগিন পরিবর্তনের পরে লগ আউট হয়ে যাবে।


1
সত্যই নয়, এই ফাংশনের জন্য নোটগুলি পরীক্ষা করুন (পাশাপাশি কোডটি): দয়া করে নোট করুন যে আমরা এই ফাংশনের মাধ্যমে ব্যবহারকারীর নাম পরিবর্তন করতে পারি না, বাস্তবে ব্যবহারকারীর নামগুলি অ্যাডমিন ড্যাশবোর্ড থেকে পরিবর্তন করা যায় না যেহেতু ওয়ার্ডপ্রেস ব্যবহারকারীর নামগুলিকে অনুমতি দেয় না আপডেট করা।
মাতেউস হাজাদজিওনি

ধন্যবাদ, এটি দুর্দান্ত কাজ করে! লগ ইন করা ব্যবহারকারীদের সম্পর্কে কোনও উদ্বেগ নেই, যদিও আমি কেবল লগ আউট করা ব্যবহারকারীদের (ই-মেইলের মাধ্যমে অ্যাকাউন্ট সক্রিয়করণ) ব্যবহারকারীর নাম পরিবর্তনের অনুমতি দিই।
মাতেউস হাজাদজিওনি

@ পোগকিং আপনি যে বিষয়টি বিবেচনা করতে চাইতে পারেন তা হ'ল ব্যবহারকারী বা লেখক পারমলিংকগুলি ব্যবহারকারীদের ব্যবহারকারীর নাম পরিবর্তন করতে সক্ষম করার পরে ভেঙে যেতে পারে যদি সুন্দর পারমালিকগুলি সক্ষম করা থাকে, সুতরাং এর ক্ষতিপূরণ দেওয়ার জন্য আপনার উদ্যোগের প্রয়োজন হতে পারে।
আহমদ এম

1
আমার গ্লোবাল $ wpdb যুক্ত করা দরকার; এটি কাজ করতে
মাউ

4
পুরাতন পোস্ট, তবে আমি নিজেই এটি দেখছি, আপনার সাইটে একই ব্যবহারকারী_লগিন সহ নিবন্ধিত অন্য কোনও ব্যবহারকারী নেই বলে এটি পরীক্ষা করে দেখার মতো হবে যে লগইন ফর্মটি অবশ্যই অ্যাকাউন্টগুলি খুঁজে পেতে এবং পাসওয়ার্ডের সাথে সম্পর্কিত হ্যাশগুলির জন্য এই মানটি ব্যবহার করে
haxxxton

4

আপনি এসকিউএল কোয়েরির মাধ্যমে ব্যবহারকারীর_নাম নামটি পরিবর্তন করার বিষয়টি বিবেচনা করতে পারেন। এটি হয়ে গেলে, সমস্ত পারমলিক্স এবং অন্যান্য ফাংশন নিখুঁতভাবে কাজ করবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.