اتصال بخش کاربران چند وب سایت وردپرسی به یکدیگر + آموزش ویدیویی
سلام دوستان امیدوارم حالتون خوب باشه. امروز با یه مقاله جذاب دیگه در خدمتتون هستم. خیلی از دوستانی که چند تا وب سایت وردپرسی دارن میخوان کاری کنن که کاربر هاشون با ثبت نام در یکی از این وب سایت ها قادر به ورود به سایر وب سایت ها هم باشه. همراه ما باشین تا با اتصال بخش کاربران چند وب سایت وردپرسی علاوه بر قابلیت ورود، قابلیت ثبت نام و چندین تا ویژگی جذاب دیگه رو به وب سایت وردپرسی خودمون اضافه کنیم.
استفاده از افزونه WP Remote Users Sync
برای اینکار از پلاگین WP Remote Users Sync استفاده میکنیم. این افزونه که از امنیت خوبی برخوردار هست به ما اجازه میده تا با وصل کردن دو تا وب سایت وردپرسی بهم، قسمت کاربران اون هارو باهم همگام کنیم.
قابلیت های این پلاگین
این افزونه به ما اجازه میده تا تعیین کنیم دو تا از چند تا وب سایتی که به اون اضافه میکنیم چه ویژگی هایی شون باهم هماهنگ یا در اصطلاح سینک شه. مثلا من میخوام دو تا وب سایتم فقط ثبت نامش باهم سینک و همگام شه ولی دو تا وب سایتم علاوه بر ثبت نام بحث ورودشون هم همگام شده باشه که این افزونه به ما اجازه میده تا موارد دلخواهمون رو تیک بزنیم. موارد قابل انتخاب توی این افزونه : ورود، خروج، ثبت نام، بهروزرسانی شناسه، حذف، تغییر رمز عبور، نقشها و متا دیتا میشه.
نصب و راه اندازی افزونه
برای نصب مثل بقیه پلاگین های وردپرس باید به پیشخوان وب سایت وردپرسی خودمون مراجعه کنیم.
از منو سمت راست قسمت افزونهها » افزودن رو انتخاب کرده و در قسمت جستجو با سرچ کردن عبارت «Remote User Sync» و کلیک رو گزینه نصب از وردپرس میخواییم تا این افزونه رو برای ما نصب کنه.
تنظیم کردن افزونه WP Remote Users Sync
بعد از نصب شدن این افزونه با مراجعه به قسمت تنظیمات » WP Remote Users Sync وارد تنظیمات این افزونه میشیم… از بین زبانه های موجود، زبانه Security رو انتخاب میکنیم.
همونطور که داخل عکس بالا هم مشخص کردم گزینه های 3 و 4 باید دو تا Key بنویسم :
- Action Encryption Key
- Action Signature Key
این دو مورد یه جورایی حالت پسورد مانند هستن و برای رمز نگاری اطلاعات موقع رد و بدل شدن اطلاعات بین وب سایت های وردپرسی اتفاق میوفته.
پیشنهاد میکنیم از سایت های تولید کننده رشته های تصادفی یا String Random Generator استفاده کنید. پیشنهاد ما سایت random.org هست.
- مستطیل قرمز : تعداد رشته هایی که نیاز داریم (2 عدد)
- مستطیل زرد : طول هر رشته تولیدی (20 عدد)
- مستطیل آبی : کاراکتر های مورد استفاده در رشته تولیدی (همه موارد – اعداد و حروف بزرگ و کوچک)
- مستطیل بنفش : تکراری نبودن رشته های تولیدی (همین مورد انتخاب شه)
- مستطیل سبز : تولید رشته های تصادفی
بعد از تنظیم بر اساس مقادیر بالا روی دکمه سبز رنگ میزنیم و دو رشته تصادفی برای ما تولید میشه…
همونطور که داخل ویدیو هم انجام دادیم؛ از یکی از رشته ها برای Action Encryption Key و از دیگری برای Action Signature Key استفاده میکنیم. کافیه که رشته های رو کپی و پیست کنید و در نهایت گزینه Save رو بزنید. این کار رو باید در هر دو سایت وردپرسی خودتون انجام بدین…
روشن کردن Activity Logs
برای اینکه بعد از تست کردن ببینیم آی پی های ما به چه صورت هست بهتره این گزینه رو فعال کنیم. مشابه تصویر زیر به زبانه Activity Logs مراجعه کنید.
به ترتیب تیک گزینه Enable Logs رو بزنید و بعدش گزینه Save رو بزنید. اینکار رو باید در همه وب سایت های خودتون انجام بدین.
تنظیم و اضافه کردن آدرس سایت ها، قدم آخر در تنظیم این پلاگین
بعد از تنظیم کردن Key ها در همه وب سایت ها و روشن کردن Activity Logs اون ها داخل وب سایت اولتون به تنظیمات » عمومی مراجعه کنید از قسمت نشانی وردپرس آدرس سایت خودتون رو کپی کنید.
بعد از کپی کردن آدرس به وب سایت دوم خودتون مراجعه کنید و در قسمت Remote Sites از افزونه ای که نصب کردیم مطابق قسمت قرمز تصویر زیر وب سایت خودتون رو اضافه کنید.
قسمت آبی برای مواردی هست که از سایتی که آدرسش رو وارد کردیم به این وب سایت ارسال میشه و قسمت زرد رنگ برای مواردی هست که از این وب سایت به وب سایتی که آدرسش رو وارد کردیم ارسال میشه. بستگی به نیازمون داره که چه مواردی رو تیک میزنیم.
اینکار رو توی اون یکی وب سایت خودتون هم انجام بدین. و همینطور سیو کردن تنظیمات هم فراموشتون نشه!
تست و اطمینان حاصل کردن از تنظیمات
در نهایت؛ با زدن دکمه Test برای یکی از موارد Incoming و Outgoing میتونید عملکرد افزونه رو تست کنید. داخل ویدیو هم اشاره کردیم که نیازی نیست همه موارد تست شن، و تست کردن فقط یکی از موارد Incoming و Outgoing کافی هست.
تنظیم IP Whitelist (اختیاری)
این مورد اختیاری هست و برای افزایش امنیت این افزونه کاربرد داره. اما تنظیم نکردنش تاثیری در کارکرد افزونه نداره. با زدن دکمه Test توی مرحله قبل، Log و تاریخچه کاری که انجام دادیم داخل زبانه Activity Logs ذخیره شده.
کافیه به اینجت مراجعه کنیم و آیپی وب سایت خودمون رو از اونجا کپی و توی قسمت IP Whitelist افزونه در سایت مورد نظر قرار بدین.
اینکار باعث میشه اگر یه نفر به Action Encryption Key و Action Signature Key ما هم دسترسی داشته باشه نتونه با وب سایت ارتباط برقرار بکنه. چرا که وب سایت فقط از آی پی ای که ما وارد کردیم اطلاعات رو پذیرش میکنه…
تست کردن ارتباط بین دو سایت
بعد از تنظیم همه موارد میتونید با مراجعه به قسمت کاربران » افزودن یک کاربر آزمایشی به کاربر خودتون اضافه کنید و ببینید در سایت دیگر هم این کاربر به طور خودکار اضافه میشه! داخل ویدیو این موضوع رو ملموس تر توضیح دادیم. اگه دوست داشتین میتونید نگاهش کنید. 😉
بازم مثل همیشه تشکر میکنم که تا آخر این مقاله همراه ما بودین. امیدوارم که تونسته باشید وب سایت هاتون رو بهم متصل کنید. اگه انتقادی، پیشنهادی، سوالی چیزی داشتین خوشحال میشم توی قسمت نظرات با ما در میون بزارید.
سلام من افزونه را نصب کردم ولی خطای زیر را میدهد تست دو سایت هم اوکی بود
2024-01-11 19:17:00 – Warning – Failed to renew token for – retrying…
درود بر شما؛
حتما ابتدا از وجود ارتباط بین دو سایت اطمینان حاصل کنید و سپس مجددا تلاش کنید.
سلام وقت بخیر
تمام مراحل رو انجام دادم و فقط یکی از سایت ها به درستی متصل شده اند ولی یکی کامل ارور میده
ارور : [0] => http_request_failed cURL error 60: SSL: no alternative certificate subject name matches target host name ‘site name’
ممنون میشم بفرمایید مشکل از کجاست
سلام وقت شما هم بخیر،
هر دو سایت SSL فعال دارن و مشکلی از این نظر ندارن؟
سلام خدا قوت
یه سوال برای ادغام کردن دوتا سایت که کیف پول هاشون یکی بشه امکان پذیر هست یه افزونه دیگه ای رو اطلاع دارید باشه برای ادغام کیف پول.
ممنون میشم راهنمایی کنید.
سلام، پلاگینی برای اینکار وجود نداره، این مورد باید شخصی سازی بشه و در حالت عادی امکان پذیر نیست.
در صورت تمایل برای شخصی سازی میتونید با ما ارتباط بگیرید.
سلام خداقوت آموزش عالی . از اونجایی که این افزونه باید دائم روی وردپرس ها نصب باشه و الان حدودا 9 ماه آپدیت نشده ، آیا مشکل امنیتی پیش نمیاد ؟ اطلاع دارید نویسنده این پلاگین همچنان از این افزونه پشتیبانی و بررسی انجام میده ؟
سوال بعدی ، تنها این افزونه هست که اینکار انجام میده ؟ هیچ نمونه ای دیگری یا پرمیومی نداره ؟
بهترین انتخاب فعلا همین هست محمد جان.
سلام محمد جان سلامت باشی. نه موردی نداره میتونید استفاده کنید.
عالی بود
آموزش بی نقص بود
سلام سارا جان، ممنون از اینکه برامون نظر گذاشتی.
عالی بود واقعا خیلی دنبال چنین چیزی بودم
کاملا درست کار میکنه، ممنونم
سلام هومن جان، ممنونم از نظر لطفت، خوشحالم که بدردت خورده…
سلام. لطفا اطلاعاتی که امکان جابه جابب دارند رو بفرمایید.
مثلا شماره تماس، نام و نام خانوادگی، آدرس، و… آیا جابه جا میشه؟
سلام، فیلد های پایه وردپرس همگی جابهجا می شوند. برای سایر فیلد ها و متا ها می بایستی تست بفرمایین.
آرین عزیز ممنون بابت این آموزش کاربردی عالی
فقط سوالی دارم که :
سایت اول من چون همکاری نویسنده با سایت داریم و مطلب ارسال میکنن، نقش پیشفرض کاربری که عضو سایت میشه نویسنده هست/
اما سایت دوم چون انجمن داریم با بادی پرس، نقش پیشفرض کاربر عضو جدید سایت مشارکت کننده هست.
وقتی این دو سایت باهم سینک بشن، چه اتفاقی می افته ؟ بهم نمی ریزه؟
کدام بخش تنظیمات همسان سازی رو باید چطور تنظیم کنم که هردوسایت کاربرانشون همون نقشی که تابحال پیش بینی شده بوده بمونه؟ میشه؟
سلام حسین جان، خواهش می کنم. ممنون از نظر لطف شما.
حسین جان برای اطلاع دقیق از پرسش شما پیشنهاد می کنیم یکبار این مورد رو روی localhost خودتون تست بفرمایین.
اما بر طبق چیزی که ما میدانیم، زمانی که کاربر از سایت اول ثبت نام شه، در سایت دوم هم همون نقش سایت اول (یعنی نویسنده) رو میگیره و زمانی که از سایت دوم ثبت نام کنه تو سایت اول هم نقش سایت دوم (یعنی مشارکت کننده) رو میگیره…
درباره سوال آخرتون، متاسفانه در حال حاضر موردی برای این موضوع تو افزونه اضافه نشده…
با سلام
ممنون از آموزش عالی تون.
یک سوال اینکه من میخوام بخش ثبت نام هر دو سایت یکی بشه یعنی وقتی کاربر میخواد ثبت نام کنه فقط به بخش ثبت نام یک سایت منتقل بشه و اونجا ثبت نام کنه و از اینجا به بعد با لینکم بین سایتها جابجا بشه ؟
یه سوال دیگه اینکه اگه یک افزووه مشترک بین دو سایت داشته باشم ، مثلا کیف پول ، آیا میتونه مجموع موجودی کیف پولها را باهم برای کاربر حساب کنه؟
سلام آقا حمید ممنون از نظر قشنگی که برامون گذاشتین.
درباره سوال اولتون بله میشه. درباره سوال دومتون متاسفانه خیر.
سلام
با سپاس آموزش خوب و کاربردی تان، آیا می توان زمانیکه از افزونه های عضویت یا پروفایل ساز برای ثبت نام در سایت استفاده می کنیم با این افزونه عملیات sync شدن در هر دو سایت و لاگین شدن اتفاق بیفتد یا باید از افزونه دیگری استفاده نمود؟
سلام، متشکرم از نظر زیباتون. با این افزونه میشه عملیات ثبت نام رو Sync کرد ولی اینکه مثلا فیلد های موجود در پروفایل ساز که از افزونه ی جدا میان به احتمال زیاد بین دو وب سایت Sync نمیشن. چرا که این افزونه فقط قابلیت های پایه وردپرس رو Sync میکنه.
سلام و سپاس
ممنون از آموزش خوبتون
من در دو سایتم این کار رو انجام دادم هر دو سایت هم روی یک هاست هستند
در سایت اول همه تست ها هم ورودی و هم خروجی اکی هست ولی در سایت دوم ارور میده
“Login” action is not activated on http s://…………..ir with remote IP ……………….. (incoming).
ای پی سایت اول رو هم در سایت دوم ست کردم ولی باز هم درست نشد
سلام خواهش میکنم اقا عرفان خوشحالم که راضی بودین.
این ارور علتش این هست که Login توی اون یکی وب سایت فعال نیست و وقتی تست میکنید با ارور مواجه میشید.
ممنونم از توضیحات خوبتون
مدتها بود دنبال چنین چیزی میگشتم…حتیبا نصب دو وردپرس در یک دیتابیس کار رو انجام دادم اما گاهی سایتی داشتم که دامنه خاش متفاوت بود و گیر میکردم…. خلاصه که خیلی کارم راه افتاد.
اما یک سوال: افزونه ای هست که همین کار رو با پست ها بکنه؟؟ یعنی تمام جزئیات اعم از متن و عنوان و عکس و تگ ها و …
سلام خواهش میکنم.
ممنون از شما که سایت مارو انتخاب کنید. خوشحالیم که کارتون راه افتاده.
درباره پست ها چیزی نشنیدیم ولی اگر ببینیم همچین افزونه ای هست حتما آموزشش رو قرار میدیم.
سلام بینهایت ممنون از آموزش عالیتون
فقط من طبق آموزش پیش رفتم اما زمان تست گفت
Error contacting the remote site: Payload error – Syntax error
سایت اول من نرمال هست و سایت دوم من روی ساب دامین همون سایت هست آیا به خاطر ساب دامین بودن این مشکل وجود داره؟
سلام خواهش میکنم ممنون از شما که مطالعه کردین. جناب پیمان عزیز این ارور مرتبط با اینکه سایت دوم شما روی ساب دامین وجود داره نیست و یک جایی مشکل وجود داره.
این ارور میتونه مربوط به تنظیم نبودن SSL و یا تنظیم نبودن درست رمز عبور های افزونه در بین دو سایت باشه. این دو مورد رو بررسی کنید اگر وب سایت وردپرسی تون به هم متصل نشدند همین جا بفرمایین تا بیشتر خدمتتون راهنمایی کنم.
باسلام
من هم به همین مشکل برخوردم ولی تنها از یک طرف. یعنی یک طرف تست به خوبی انجام میشود ولی از طرف دیگر که تست میگیرم این خطا نمایش داده میشود.
هیچ SSL ای هم در طرفین ندارم. KEYهای طرفین نیز مثل هم میباشد و از این جهت هم خطایی وجود ندارد.
اگر مقدور هست لطفاً راهنمایی فرمایید. باتشکر
سلام در صورتی که همه تنظیمات رو درست انجام بدین باید کار کنه، مجدد بررسی کنید در صورتی که مشکلی بود بفرمایین.
همینطور قسمت آی پی هارو خالی بزارین تا فیلتر آیپی انجام نشه!
باسلام
دوباره از اول تنظیمات را انجام دادم ولی مشکل همچنان وجود دارد! یعنی یک سایت مان بخوبی TEST تأیید میشود ولی سایت دیگر موقع TEST ، خطای زیر را میدهد:
Error contacting the remote site: Payload error – Syntax error
باسلام و صلوات برمحمد و آل محمد
الحمدلله مشکلمان حل شد، گویا یکی از افزونه های سایتمان، با این افزونه تداخل داشت و بخاطر همین خطا میداد. آن افزونه را حذف کردم و مشکل حل شد. باتشکر از شما
خدا قوت!
سلام، میتواند این مورد از فایروال و حتی این باشد که یک هاست در ایران و هاست دیگر در خارج است. بررسی کنید چون افزونه مشکلی نداره حتما باید اوکی شه…
سلام ممنون از آموزش خوبتون
این روش ارتباط بین دو سایت برقراره؟
یعنی کسانی که در سایت اول ثبت نام کنند به دو سایت دسترسی دارند و کسانی که در سایت دوم ثبت نام کنند به دو سایت دسترسی دارند؟
سلام خواهش میکنم. بله دقیقا به همین شکل هست که خودتون نوشتین و در صورت تنظیمات صحیح در افزونه یک کاربر با ثبت نام در یک وب سایت در دو سایت دسترسی داره.
یک سوال مهم برام پیش اومد
1- من یک سایت با حدود 5 هزار کاربر دارم
و سایت دومم هم الان حدود 2 هزار کاربر داره
اگر این افزونه را نصب بکنم آیا کاربر های قدیمی در سایت دوم سینک میشوند
و اگر می شود
نکته مهماینجاست : اگر تعدادی کاربر داشته باشم که در سایت دوم قبلا ثبت نام کردند چه اتفاقی می افته
سلام مرسی که مقاله رو مطالعه کردین. پس از نصب و راه اندازی این افزونه، تنها کاربرانی که به تازگی در وب سایت شما ثبت نام می کنند سینک می شوند. برای سینک کردن کاربران قبلی میتوانید از افزونه ها درون ریز کاربر در وردپرس استفاده کنید.
نکته : پیشنهاد میشه اگر میخوایین از افزونه های درون ریز استفاده کنید، ابتدا عملیات درون ریزی و برون ریزی کاربران را در دو وب سایت انجام دهید و سپس افزونه سینک کردن کاربران را نصب و فعال سازی کنید. در این حالت با تداخل کمتری مواجه خواهید شد.