আমি কোনও ওয়ার্ডপ্রেস সাইটের সম্মুখ-প্রান্তে ব্যবহারকারী নিবন্ধকরণ ফর্মটি রাখার একটি সহজ উপায় সন্ধান করছি। লগইন ফর্মটি সামনের প্রান্তে রাখার জন্য আমি ইতিমধ্যে wp_login_form () ব্যবহার করেছি তবে এখন সাইনআপ ফর্মের সাথে আমারও এটি করা দরকার।
কোন ধারনা?
আমি কোনও ওয়ার্ডপ্রেস সাইটের সম্মুখ-প্রান্তে ব্যবহারকারী নিবন্ধকরণ ফর্মটি রাখার একটি সহজ উপায় সন্ধান করছি। লগইন ফর্মটি সামনের প্রান্তে রাখার জন্য আমি ইতিমধ্যে wp_login_form () ব্যবহার করেছি তবে এখন সাইনআপ ফর্মের সাথে আমারও এটি করা দরকার।
কোন ধারনা?
উত্তর:
জেফ স্টার অনেট্রিকপোনির পরামর্শ অনুসারে
অনুরূপ পদ্ধতির গ্রহণ করে ফ্রন্ট-এন্ড রেজিস্ট্রেশন, লগইন এবং পাসওয়ার্ড পুনরুদ্ধারের উপর একটি দুর্দান্ত টিউটোরিয়াল লিখেছিলেন । সুতরাং এটিকে তার উত্তরের অনুসরণ হিসাবে এবং অন্য উত্স হিসাবে গ্রহণ করুন যা আপনাকে এটি করতে সহায়তা করতে পারে: http://digwp.com/2010/12/login-register-password-code/
এখন আপনার নিজের কাছে দুটি কোড রয়েছে এবং কীভাবে এটি নিজের কোড করবেন এবং আমাকে বিশ্বাস করুন - এটি অবশ্যই এটি (আপনার নিজের) উপায়ে করা ভাল। এটি এতটা কঠিন নয় এবং এটি আপনাকে স্বাধীনতা , নমনীয়তা এবং পুনরায় ব্যবহারযোগ্যতা দেয় যা কোনও প্লাগইন অফার করতে পারে না।
আপনি যদি নিজে এটি পরিচালনা করতে চান তবে আমি যা ব্যবহার করি তা এখানে:
add_action('template_redirect', 'register_a_user');
function register_a_user(){
if(isset($_GET['do']) && $_GET['do'] == 'register'):
$errors = array();
if(empty($_POST['user']) || empty($_POST['email'])) $errors[] = 'provide a user and email';
if(!empty($_POST['spam'])) $errors[] = 'gtfo spammer';
$user_login = esc_attr($_POST['user']);
$user_email = esc_attr($_POST['email']);
require_once(ABSPATH.WPINC.'/registration.php');
$sanitized_user_login = sanitize_user($user_login);
$user_email = apply_filters('user_registration_email', $user_email);
if(!is_email($user_email)) $errors[] = 'invalid e-mail';
elseif(email_exists($user_email)) $errors[] = 'this email is already registered, bla bla...';
if(empty($sanitized_user_login) || !validate_username($user_login)) $errors[] = 'invalid user name';
elseif(username_exists($sanitized_user_login)) $errors[] = 'user name already exists';
if(empty($errors)):
$user_pass = wp_generate_password();
$user_id = wp_create_user($sanitized_user_login, $user_pass, $user_email);
if(!$user_id):
$errors[] = 'registration failed...';
else:
update_user_option($user_id, 'default_password_nag', true, true);
wp_new_user_notification($user_id, $user_pass);
endif;
endif;
if(!empty($errors)) define('REGISTRATION_ERROR', serialize($errors));
else define('REGISTERED_A_USER', $user_email);
endif;
}
ব্যবহারকারীর সাইনআপ পৃষ্ঠা থেকে কোডটি প্রায় একই রকম।
তারপরে আপনার ফর্ম্যাটটিতে আপনার ফর্মটি যুক্ত করুন:
<?php
if(defined('REGISTRATION_ERROR'))
foreach(unserialize(REGISTRATION_ERROR) as $error)
echo "<div class=\"error\">{$error}</div>";
// errors here, if any
elseif(defined('REGISTERED_A_USER'))
echo 'a email has been sent to '.REGISTERED_A_USER;
?>
<form method="post" action="<?php echo add_query_arg('do', 'register', home_url('/')); ?>">
<label>
User:
<input type="text" name="user" value=""/>
</label>
<label>
Email:
<input type="text" name="email" value="" />
</label>
<label>
Delete this text:
<input type="text" name="spam" value="some_crappy_spam_protection" />
</label>
<input type="submit" value="register" />
</form>
আপনি হয় এটির সাহায্যে একটি উইজেট তৈরি করতে পারেন, একটি শর্টকোড বা কেবলমাত্র সাধারণ পৃষ্ঠা টেম্পলেট ...
home_url()বর্তমান পৃষ্ঠার ইউআরএলটির সাথে পরিবর্তন করা দরকার কারণ আমার কোডটি ফর্মটি হোমপেজে রয়েছে বলে ধরে নিয়েছে। আমি get_current_page_url()এখানে অন্য একটি প্রশ্নে একটি ফাংশন পোস্ট করেছি , কোনটি মনে রাখবেন না
গ্র্যাভিটি ফর্ম হ'ল ওয়ার্ডপ্রেস, আইএমওর জন্য সেরা যোগাযোগের ফর্ম প্লাগইন। বিটাতে এখানে নতুন সংস্করণটিতে একটি ব্যবহারকারীর নিবন্ধকরণ অ্যাড-অন রয়েছে। আমি এটি চেষ্টা করেছি এবং এটি দুর্দান্ত কাজ করে। যদিও আপনার ব্যয় হবে ... এটি বিকাশকারী লাইসেন্সের জন্য 199 ডলার।
মূল্য নির্ধারণের পৃষ্ঠা http://www.gravityforms.com/purchase-gravity-forms/
ব্লগ পোস্টে ব্যবহারকারীর নিবন্ধকরণ সম্পর্কে অ্যাড-অন http://www.gravityhelp.com/
আমি ওয়ার্ডপ্রেস সম্প্রদায়কে এই প্লাগইনটির জন্য অত্যন্ত পরামর্শ দিচ্ছি।
বিস্তারিত বিশেষ উল্লেখ:
এখানে ব্যবহারকারী রেজিস্ট্রেশন অ্যাড-অনের কয়েকটি বৈশিষ্ট্য রয়েছে:
সাধারণ মডেল লগইন প্লাগইন ব্যবহার করে দেখুন। এটি নিবন্ধকরণ এবং লগইনকে অনুমতি দেয় (আপনার ব্যবহারকারীর নিবন্ধকরণ সক্ষম করতে হবে) এবং এটি এটি দেখতে খুব সুন্দর চেহারা পেয়েছে।
আপনি থিম মাই লগইন প্লাগইন ব্যবহার করতে পারেন
এখানে এটি করার একটি দুর্দান্ত এবং সহজ উপায়:
বর্তমান ওয়ার্ডপ্রেস নিবন্ধীকরণ ফর্ম থেকে ক্ষেত্রের নাম এবং অন্য কোনও সামগ্রী অনুলিপি করুন। নিশ্চিত হয়ে নিন যে আপনার কাস্টম ফর্মটিতে লুকানোগুলি সহ একই নামের ক্ষেত্র রয়েছে এবং তারপরে কেবল ফর্মটির ক্রিয়াটি সঠিক রেজিস্ট্রেশন ইউআরএলকে নির্দেশ করুন: http://www.yourblog.com/wp-login.php?action=register - আপনি তারপরে চাইবেন আপনি কীভাবে এটি পরিচালনা করছেন তা পছন্দ না করে নিবন্ধের পরে ফর্মটি কীভাবে পুনঃনির্দেশ করে তা পরিবর্তন করতে।
ইনসাইট লগইন নামে এই প্লাগইনটি রয়েছে যা আপনাকে নিবন্ধকরণ ফর্ম, লগইন ফর্ম এবং অন্যদের আপনার সাইটে থাকা পৃষ্ঠাগুলিতে ফেলে দেওয়ার অনুমতি দেয়: http://wordpress.org/extend/plugins/insitelogin/
প্রথম সলিউশনটি আপনাকে এটি করতে চাইলে তা করা উচিত।
আপনার রেজিস্ট্রেশন ফর্মটিতে আপনার আরও ক্ষেত্রগুলির প্রয়োজন হলে আপনি প্রোফাইল বিল্ডার প্লাগইন ব্যবহার করতে পারেন
এটি আপনাকে শর্টকোড ব্যবহারের মাধ্যমে লগইন, রেজিস্টার এবং সম্পাদনা-প্রোফাইলের জন্য ফ্রন্ট-এন্ড ফর্মগুলি যুক্ত করে আপনার ওয়েবসাইটটি কাস্টমাইজ করতে দেয়।