თქვენი განლაგების ფორმა. როგორ შევქმნათ კარგი სარეგისტრაციო გვერდი WordPress Multisite-ში მაინტერესებს რა არის „აპოთეოზი“ სხვა ლექსიკონებში

გოლოვნა / კონტაქტები

საშუალებას გაძლევთ მოიგოთ ერთი WordPress ინსტალაცია რამდენიმე საიტისთვის ერთ საათში. ამ სკინით, საიტი ამოიღებს მონაცემთა ბაზის ძალაუფლების ცხრილებს უნიკალური პრეფიქსით.

ცხრილები კორესპონდენტების რეგისტრაციის მონაცემებით და ჩანაწერები რეგიონის ყველა საიტისთვის. ეს არის მუდმივი პლიუსი და ერთხელ დარეგისტრირებით შეგიძლიათ მიიღოთ წვდომა უამრავ საიტზე. უფრო მეტიც, კანის ადგილზე ერთი და იგივე ირიბი ჩანაწერი შეიძლება იყოს განსხვავებული უფლებებით. მაგალითად, ერთ საიტზე კორესპონდენტი შეიძლება იყოს რედაქტორი, მეორე საიტზე კი ადმინისტრატორი.

AT პირველადი ინსტალაცია WordPress რეგისტრაციის გვერდი, ავტორიზაცია და პაროლის ამოღება შეიყვანეთ wp-login.php ფაილი.

  • wp-login.php - ავტორიზაცია
  • wp-login.php?action=რეგისტრაცია - რეგისტრაცია
  • wp-login.php?action=lostpassword - დაკარგული პაროლი

Multisite რეჟიმში WordPress-ის ბირთვი სამჯერ მაინც დაიწყებს ქცევას და როდესაც გადახვალთ wp-login.php?action=register-ზე, გადამისამართდებით wp-signup.php-ზე. Tse storіnka რეგისტრაცია თქვენი merezhі, ისევე როგორც umovchannya є WordPress.

ყირიმის სასწრაფო რეგისტრაცია კორისტუვაკის გარეგნობის ჩანაწერებითქვენ შეგიძლიათ შექმნათ ახალი საიტი მასზე, როგორც სუპერადმინისტრატორმა გაზარდა ასეთი შესაძლებლობა ქსელის დაყენებაში (ქსელის ადმინისტრატორი → პარამეტრები → ქსელის პარამეტრები).

რეგისტრაციის მესამე მხარე არ გამოიყურება კარგად. არსებობს უამრავი თემა, რომელიც შექმნილია CSS-ჩარჩოების გამოყენებით, მაგალითად, Bootstrap, და გვერდებზე სხვადასხვა ელემენტების სტილისთვის სპეციალური კლასები, ამიტომ მნიშვნელოვანია ერთი HTML-ის დაწერა, რომელიც ყველასთვის ერთნაირია.

ალე არ ბრაზდება, თითქოს მხარეს ჩანდა ნეოხაინო. ფაილი wp-signup.php vіdmіnna vіdmіnna vіch vіch pochatku, თუ არ გაქვთ დრო, რომ შეიმუშაოთ საიტის კანის დეტალები — შეგიძლიათ ფოკუსირება სხვა უფრო მნიშვნელოვან მხარეებზე და შინაარსზე.

თუ მზად ხართ შექმნათ თქვენი საკუთარი სარეგისტრაციო გვერდი, wp-signup.php იქნება შესანიშნავი ინსტრუმენტი და ხელსაწყო ფუნქციების ფართო სპექტრზე ადვილად წვდომისთვის, როგორიცაა WordPress კორისტუვაჩების მიერ შეყვანილი მონაცემების დამუშავებისა და გადაწერისთვის და ახალი ღრუბლოვანი ჩანაწერების შესაქმნელად.

მთავარი საიტი merezhі

WordPress-ის პოპულარიზაციისთვის, თქვენ ქმნით სარეგისტრაციო გვერდს (wp-signup.php) საწარმოს მთავარ დომენზე (საიტზე). ტიმი არ არის ნაკლები, შეგიძლიათ შექმნათ სარეგისტრაციო გვერდები merezhі-ის კანის საიტისთვის, ასე რომ სურნელება შეგიძლიათ.

ჩვენ ვუყურებთ განსხვავებას, თუ ქსელის ყველა საიტზე არის ერთი თემა, მაგრამ მათ კანზე არის რეგისტრაციის გვერდი. საიტები გამოყოფილია ჩემით (ინგლისური და რუსული), ასე რომ რეგისტრაციის მხარე გამოჩნდება, როგორც "მშობლიური" ჩემი საიტისთვის. იმ შემთხვევაში, როგორც საიტები vikoristovuyut raznі tems, ყველაფერი შემორჩენილია, yakі tse tse these, chi pіdіyde їm იგივე განლაგება (vіdmіnna სიტუაცია, იაკი შეიძლება გიბიძგოთ თქვენი ყველა თემის გაერთიანებაში) ან varto opratіvіvі.

functions.php ალტერნატივა

ფაილის შეკვეთა

MU-პლაგინებს შეუძლიათ შეცვალონ ნებისმიერი რაოდენობის ფაილი იმავე სტრუქტურაში, როგორც თქვენთვის შესაფერისია. დავასრულებ დაახლოებით შემდეგ იერარქიას:

| mu დანამატები | load.php | | სელენას ქსელი | | | რეგისტრაცია | | | | plugin.php | | ... | | | jetpack | | | | plugin.php

load.php ფაილს აქვს თარგმანები და ყველა საჭირო "პლაგინი":

// MU plugins-ის თარგმანის ჩატვირთვა load_muplugin_textdomain("selena_network", "/selena-network/languages/"); // ფუნქციონალური რეგისტრაციისთვის საჭიროა WPMU_PLUGIN_DIR. "/selena-network/signup/plugin.php"; // კიდევ ერთი დანამატი // მოითხოვს WPMU_PLUGIN_DIR ...

სელენის ქსელის დირექტორიების შუაში, დანამატის საქაღალდეები ინახება. სკინს აქვს საკუთარი plugin.php, რომელსაც ჩვენ load.php-ში ვაერთიანებთ. Tse იძლევა მოქნილობას და შესაძლებლობას, მარტივად ჩართოს და ჩართოს სხვა კომპონენტები სამუშაო პროექტში საგანგებო სიტუაციის შემთხვევაში.

რეგისტრაციის გვერდი

დალაგების შემდეგ და როგორ უნდა დაწეროთ კოდი, შეგიძლიათ გააგრძელოთ რეგისტრაციის მხარის შექმნა.

ჩვენ ვქმნით მხარეს მისამართით example.org/signup/ სტანდარტული ინტერფეისის საშუალებით. როგორც მისამართი, შეგიძლიათ გადაატრიალოთ ის URL მისამართზე, როგორც თქვენი პროექტის დამატება.

გადამისამართება საჭირო რეგისტრაციის გვერდზე

იმისათვის, რომ WordPress-მა იცოდეს ჩვენი ახალი სარეგისტრაციო გვერდის შესახებ, მასზე გადამისამართებით, როდესაც დააჭირეთ შეტყობინებას „რეგისტრაცია“, მოწმდება wp_signup_location ფილტრი. შეგიძლიათ იპოვოთ იგი wp-login.php-ის შუაში და გადამისამართდეთ wp-signup.php-ზე საკეტისთვის.

შემთხვევა "რეგისტრაცია" : if (is_multisite()) (wp_redirect(apply_filters("wp_signup_location", network_site_url("wp-signup.php"))); გასვლა; // ...

როგორც გახსოვთ, საკეტის უკან, სარეგისტრაციო მხარე ნაჩვენებია საზღვრის მთავარ დომენზე. ამიტომ იგებს network_site_url().

დაამატეთ თქვენი ხელმოწერა ფილტრში mu-plugins/selena-network/signup/plugin.php , რომელიც არის რეგისტრაციის მხარის მისამართი ნაკადის საიტზე:

ფუნქცია selena_network_signup_page($url) ( return home_url ("signup"); ) add_filter ("wp_signup_location", "selena_network_signup_page", 99);

selena_network - პრეფიქსი, რომელსაც ვიყენებ ყველა ფუნქციის სახელში ჩემს საიტზე არსებული MU-პლაგინების შუაში, რათა თავიდან ავიცილო შეთქმულება და შემდეგ შევცვალო ის შენი უნიკალური პრეფიქსით. ფილტრის დამატების პრიორიტეტია 99, რათა სხვა დანამატებმა, მაგალითად, bbPress-მა და BuddyPress-მა შეძლონ ამ მისამართის ფაილზე გადაწერა (MU-პლაგინები ადრეა აღებული, ქვედა სახელების დანამატები, დივ. უფრო მაღალი).

ყურადღება მიაქციეთ იმას, თუ რა იმარჯვებს home_url()-ში, რადგან network_site_url()-ში ხედავთ ნაკადის საიტის მისამართს და არა merezhі-ის მთავარ საიტს.

ფუნქციონალობა wp-signup.php

wp-signup.php ფაილს ბევრი ფუნქცია და კოდი სჭირდება. სურათის მთლიანობაში დასახატავად, შეგიძლიათ სწრაფად ჩაწეროთ კოდი. როგორც წესი, ინგლისურად მას კოდის დასაკეცი ეწოდება.

ფაილის ზედა ნაწილში 1-დან 80 სტრიქონამდე (4.1.1 ვერსიაში) ტარდება სხვადასხვა ხელახალი შემოწმება და ნაჩვენებია "დაწყების" მხარე get_header()-ის დახმარებით.

ჩვენ მივეცით უხმოდ და მათ თვალწინ, ასე რომ, ჩვენ შეგვიძლია ვიმუშაოთ მათთან, ვარტო როზე, კანის ფუნქციის გასაუმჯობესებლად. სიმდიდრის შუაგულში, სხვა ფუნქციები wpmu_ პრეფიქსით ხშირად არის მონიშნული, მთელი სუნი დაფარულია wp-includes/ms-functions.php ფაილით. Tsey razdіl მნიშვნელოვანია გვესმოდეს, არ bachachi კოდი დამოუკიდებლად. ქვემოთ მოცემულია გასათვალისწინებელი ძირითადი ფუნქციების მცირე აღწერა, რათა სირთულეები დააბრალოთ.

  • wpmu_signup_stylesheet() - დამატებითი CSS-ის ჩვენება რეგისტრაციის მხარეს.
  • show_blog_form() - ველები საიტის რეგისტრაციისთვის (მისამართები, დასახელების ხილვადობა poke სისტემებისთვის).
  • validate_blog_form() - შეყვანილი საიტის მისამართის და სახელის ვალიდაცია დამატებითი wpmu_validate_blog_signup() .
  • show_user_form() - კორესპონდენტის რეგისტრაციის ველები (შესვლა და ელექტრონული ფოსტის მისამართი).
  • validate_user_form() - შეყვანილი შესვლისა და ელექტრონული ფოსტის მისამართის ვალიდაცია. სთხოვეთ wpmu_validate_user_signup() დახმარებას.
  • signup_another_blog() — ველები დახმარებისთვის ახალი საიტების დასარეგისტრირებლად show_blog_form() იმ რეგისტრაციისთვის, რომლებიც უკვე დარეგისტრირებულნი არიან საიტზე.
  • validate_another_blog_signup() - შეამოწმეთ საიტის მისამართი და სახელი დამატებითი validate_blog_form() .
  • signup_user() - სარეგისტრაციო მხარის ველების ჩვენების მთავარი ფუნქცია.
  • validate_user_signup() - ხელახლა შეამოწმეთ შესვლა და ელექტრონული ფოსტის მისამართი. იხილეთ validate_user_form() დახმარებისთვის.
  • signup_blog() - ველები მისამართის შეყვანისთვის, საიტის ხილვადობის დასახელებისთვის (სხვა რეგისტრაცია) show_blog_form() დახმარებისთვის.
  • validate_blog_signup() - შეამოწმეთ შესვლა, ელექტრონული ფოსტის მისამართი. გამომიგზავნე მისამართზე და მე დავასახელებ საიტს.

wp-signup.php ფაილის ბოლოში (სტრიქონი 646 ვერსიაში 4.1.1) არის რეესტრის მუშაობის ძირითადი ლოგიკა, ისევე როგორც ყველა ზემოთ აღწერილი მეთოდი. კოდის ეს ნაწილი არ არის პასუხისმგებელი ფუნქციაზე. მაგალითად, get_footer() ეწოდება.

კოპირების ფუნქცია wp-signup.php

შემდეგი, აღწერილი იქნება wp-signup.php MU დანამატში კოპირების და ჩანგალში ცვლილებების შეტანის პროცედურა. Mozhlivo, tse mozhe zdatisya არ არის სწორი გზა. შესაძლებელია დაწეროთ თქვენი საკუთარი ფუნქციები ნულიდან, რათა ხელახლა გადაამოწმოთ და აჩვენოთ ვიკარიული კლასის ფორმები, და არა პირველადი ფუნქციები. ჩემი აზრით, wp-signup.php-ს უკვე აქვს ყველა საჭირო ლოგიკა ჩვენი მხარისთვის, რჩება მცირე ცვლილებების შეტანა.

WordPress-ის განახლებისას, ზოგჯერ wp-signup.php ასევე იცვლება, მაგრამ ეს არ ნიშნავს იმას, რომ თქვენ შეძლებთ თქვენი „ფორკის“ სინქრონიზაციას კანის გამოშვებასთან. wp-signup.php-ის შუაში არსებული ფუნქციები ძირითადად ჩართულია HTML-ის რენდერირებაში, მონაცემთა გადაწერაში, ღრუბლოვანი ჩანაწერების შექმნაზე და საიტების დამუშავება ხდება wpmu_ პრეფიქსით, გაჟღერებული ms-functions.php-ში.

ვიზრუნოთ ფუნქციების შექმნაზე, თითქოს გვერდზე ვქმნით სარეგისტრაციო ფორმას. ვისთვისაც დააკოპირეთ wp-signup.php WordPress root-დან mu-plugings/selena-network/signup/. ჩართეთ იოგა mu-plugins/selena-network/signup/plugin.php-ის შუაში.

საჭიროა WPMU_PLUGIN_DIR. "/selena-network/signup/wp-signup.php";

როგორც ჩანს, დაკოპირებული ფაილის თავიდანვე, ყველა მოხმარება და არასაჭირო ხელახალი შემოწმება. ვერსია 4.1.1 აქვს ყველა კოდი 1-დან 80-მდე.

ახლა ჩვენ მზად ვართ შევქმნათ მთავარი ფუნქციასარეგისტრაციო ფორმის სანახავად. ამისთვის 646-ის ჩატვირთვის მთელი ლოგიკა და ფაილის ბოლომდე გადადის ფუნქციაზე სახელად selena_network_signup_main. მაგალითად, შეგიძლიათ იხილოთ ორი მრუდი

(722 და 723 რიგები), ასევე get_footer() ვიკი.

ძალიან cob-ზე selena_network_signup_main()-ის შექმნისას, აქტიური_signup-ის გლობალური ცვლილება შეიცვლება, ასე რომ დაიწერება ამ ფაილის ყველა სხვა მეთოდი. І dodamo wiki დააწკაპუნეთ წინა_რეგისტრაციის_ფორმის ქვეშ, მე ვნახე ფაილის თავიდანვე.

ფუნქცია selena_network_signup_main() ( გლობალური $active_signup; do_action ("fore_signup_form"); // ... )

ახლა არ არის საჭირო განლაგების შეცვლა ყველა სფეროში, სადაც ეს აუცილებელია და რეგისტრაციის გვერდი მზად არის.

Visnovok რეგისტრაციის ფორმა

აქ არის მინიმუმ ორი ვარიანტი. მეტი ხელით გზა- შექმენით მოკლე კოდი და გააფართოვეთ იგი გვერდით შესანიშნავი რედაქტორის საშუალებით.

// შექმენით shortcode network_signup add_shortcode("network_signup", "selena_network_signup_main");

კიდევ ერთი ვარიანტია page-signup.php გვერდის შაბლონის შექმნა საბავშვო თემების საქაღალდეში. სიტყვის „რეგისტრაცია“ ჩანაცვლება შეიძლება შეიცვალოს უნიკალური ID-ით, ხელის ჩამორთმევით. დაამატეთ შაბლონისთვის საჭირო განლაგება და შექმენით selena_network_signup_main() ზარი საჭირო ზონისთვის.

შედეგად, ჩემი რეგისტრაციის გვერდი უფრო მდიდარი და სუფთა გახდა.

გააქტიურების გვერდი

მალსახმობების მიღმა WordPress მენტალურად ყოფს Multisite-ში რეგისტრაციის პროცესს ორ საფეხურზე - შეავსეთ ფორმა საიტზე და გაააქტიურეთ ირიბი ჩანაწერი, როდესაც მიდიხართ მოთხოვნაზე, გაუგზავნეთ ელექტრონული ფურცელი. ამის შემდეგ, წინა განყოფილებაში შექმნილი ფორმის შევსებისას, WordPress აჭარბებს ფურცელს მცირე ინსტრუქციით და ირიბი ჩანაწერის გასააქტიურებლად.

აქტივაციის მხარის სანახავად შეგიძლიათ ნახოთ wp-activate.php ფაილი, შეამოწმეთ იგი WordPress-ის root დირექტორიაში. wp-activate.php შეიძლება ისევ შეიცვალოს. პროცესი მსგავსია, რაც ჩვენ უკვე გავაკეთეთ wp-signup.php-ისთვის.

მოდით შევქმნათ მაგალითი.org/activate/side მარტივი ინტერფეისის გამოყენებით. როგორც მისამართი, დაამარცხეთ ნებისმიერი URL, რომელიც მოგეცემათ.

დააკოპირეთ wp-activate.php ფაილი თქვენს MU-დანამატში და დაამატეთ იგი mu-plugins/selena-network/signup/plugin.php-ში.

საჭიროა WPMU_PLUGIN_DIR. "/selena-network/signup/wp-activate.php";

შუაში არც ისე მდიდარი სამაგიეროდ, wp-signup.php-ზე. ფაილი სრულდება ერთი ოპერაციით - ირიბი ჩანაწერის გააქტიურება ისე, რომ სწორი გასაღები ამოღებულ იქნეს და გამოჩნდეს შეტყობინებები შეწყალების ან წარმატებულ ვიკონანსოპერაციები.

როგორც ჩანს, ყველა არასაჭირო რევიზია და მოითხოვს - 1-დან 69-მდე სტრიქონიდან WordPress 4.1.1. მაგალითად, ავიღოთ საძიებელი get_footer() . რაც დარჩა გადატანილია selena_network_activate_main() ფუნქციაში.

Tsіkavo vіdmіtiti, scho აქ WordPress-ის წინსვლამდე (wp-load.php) WP_INSTALLING მუდმივი იყო გაოგნებული. WordPress-ის აშკარაობა არ აბნევს დანამატებს.

რეგისტრაციის შებრუნებისთანავე რჩება განლაგების გასწორება იქ, სადაც ეს აუცილებელია. თქვენ ასევე შეგიძლიათ შეცვალოთ საჩვენებელი ტექსტი (თუ აირჩევთ, არ დაგავიწყდეთ თქვენი MU-პლაგინების ტექსტური დომენის დამატება ყველა თარგმანის ფუნქციისთვის, კლავიშების დაბლოკვისთვის არ არის ჩასმული).

დასრულებული ფუნქცია შეიძლება გამოსახული იყოს წინა მხარეს მოკლე კოდის ან ბავშვის თემისთვის მორგებული შაბლონის გამოყენებით.

აქტივაციის ფურცლები სწორი შეტყობინებებით

აქტივაციის გვერდი მზად არის წასასვლელად, მაგრამ WordPress-მა არ იცის ამის შესახებ და, როგორც ადრე, აძლიერებს აქტივაციის სიას wp-activate.php-ზე გაგზავნით. wp-signup.php ხედზე არ არის ფილტრი, რომელიც საშუალებას გაძლევთ შეცვალოთ მისამართი. აუცილებელია დაწეროთ საკუთარი ფუნქცია, როგორც სუპერძალა სწორი ინსტრუქციებით.

შევსების მომენტში, WordPress-ის რეგისტრაციის გვერდზე არსებული ფორმის გადაჭარბება დააწკაპუნეთ wpmu_signup_ მომხმარებელი() ან wpmu_signup_ ბლოგი() ჩამოვარდნილ ტიპში რეგისტრაციის ტიპის მიხედვით. შეტევითი ფუნქციები ქმნის ახალი ჩანაწერი wp_signups ცხრილში თქვენ უნდა შეავსოთ საჭირო თანხა, რომლის შუაში არის ანგარიშის გააქტიურების გასაღები.

ამის შემდეგ, შედით ფუნქციაში, დარეკეთ wpmu_signup_ მომხმარებელი _notification() ან wpmu_signup_ ბლოგი _შეტყობინება(). შეურაცხმყოფელ ფუნქციებს შეიძლება ჰქონდეთ მსგავსი ფუნქციონირება - გენერირება და აიძულებს ფურცელს, რომელსაც აქვს გააქტიურება, მაგრამ ასევე მიიღოს სხვადასხვა არგუმენტები. ორივე ¢ ფილტრში ფსკერის გადასასვლელად.

თუ (! application_filters ("wpmu_signup_user_notification", $user, $user_email, $key, $meta)) დააბრუნებს false;

შექმნილი ბლოგებისთვის საჯარო პოსტების გასააქტიურებლად:

თუ (! apply_filters("wpmu_signup_blog_notification", $domain, $path, $title, $user, $user_email, $key, $meta)) ( return false; )

თქვენ არ გჭირდებათ საკუთარი ფორმების დაწერა, რომელთა შუაში თქვენ არედაქტირებთ სიებს wp_mail()-ის საშუალებით და, მაგალითად, ენა იცვლება false-ზე, რათა WordPress არ დაარედაქტიროს აქტივაციის ფურცელი ორისთვის - ერთისთვის. თქვენი, წინააღმდეგ შემთხვევაში - wp-activate.php-ზე შეტყობინებების ჩაკეტვის სია.

ფუნქცია selena_network_wpmu_signup_user_notification($user, $user_email, $key, $meta = array()) (// ფურცლის სათაურის, ტექსტის და სათაურის გენერირება // ... // ფურცლის შეცვლა ან Cron სამუშაოს დამატება ფურცლის გასაუმჯობესებლად wp_mail($user_email, wp_specialchars_decode($subject), $message, $message_headers); // უნდა იყოს false, რათა WordPress-მა არ დაამატოს ორობითი აქტივაციის ფურცელი, დააბრუნოს false;

თუ SMTP სერვერის საშუალებით აძლევთ ფოთლებს, წინააღმდეგ შემთხვევაში რეგისტრაციების რაოდენობა უკვე დიდია, თქვენ უნდა იზრუნოთ მათზე, რათა არ გადალახოთ ფოთლები მიტევო. თქვენ შეგიძლიათ დაამატოთ Cron სამუშაო WordPress Cron-ის დახმარებისთვის.

ჩვენ ვბლოკავთ წვდომას wp-signup.php და wp-activate.php

რეგისტრაციისა და აქტივაციის ძალაუფლების შექმნის შემდეგ, შესაძლოა დაგჭირდეთ „ორიგინალების“ დახურვა. მაგალითად, როგორც მესამე მხარის რეგისტრაციაში არის დამატებითი ველები, ასე რომ თქვენ უნდა გახსოვდეთ. ასევე, WordPress-ის ბევრი საიტი ექვემდებარება სპამის რეგისტრაციას.

თქვენ შეგიძლიათ გადაჭრათ ორი პრობლემა ერთი პრობლემის შემთხვევაში, თუ სთხოვთ Apache-ს 404 სხვაგვარად მისცეს. რისთვისაც უმჯობესია დაამატოთ რამდენიმე დამატებითი RewriteRule კონფიგურაციის ფაილში ან .htaccess.

RewriteEngine On RewriteBase / # რეგულარული გამონათქვამების ცოდნა არასოდეს მიიღება :) END WordPress

ვისნოვოკი

WordPress-დან ინტერნეტამდე დაკავშირებული tsієї და სხვა „პრობლემებისთვის“, სხვა გამოსავალი არ არსებობს. მაგალითად, სარეგისტრაციო პარტიების შესაქმნელად და გასააქტიურებლად, საჭიროა გადაწეროთ ორიგინალი wp-signup.php და wp-activate.php. რატომ არ უნდა იმუშაოთ, რადგან WordPress-ის განახლებისას თქვენ დახარჯავთ ყველა ცვლილებას, რაც გააკეთეთ ფაილებამდე და ვერ შეძლებთ დახმარებისთვის შეცვალოთ ბირთვის მთლიანობა.

როდესაც rozrobtsі იყოს-ნებისმიერი დამატება, იმ ან გადაწყვეტილებები უნდა დახარჯოს სამი საათი იმ, schob razrobatis z tim, scho in WordPress. რისთვისაც არსებობს უპიროვნო ყავისფერი ინსტრუმენტები.

P.S.

ახალ დამსაქმებლებს სხვადასხვა როლების ავტომატურად მინიჭებისთვის, შეგიძლიათ აირჩიოთ Multisite User Management მოდული.

თუ თქვენ გაქვთ რაიმე შეკითხვა კვებასთან დაკავშირებით, ან რთულია რეგისტრაციის გვერდების შექმნა და სტატიის წაკითხვის შემდეგ გააქტიურება, გთხოვთ დატოვოთ კომენტარები და კომენტარები ამის შესახებ.

27.03.2015 27.03.2015

WordPress საცალო ვაჭრობა. გიყვარდეს წესრიგი ყველაფერში და გაიგოს ახალი ინსტრუმენტები. შთაგონებულია Symfony კომპონენტების არქიტექტურით.

  • ჩვენ ვქმნით ავტორიტეტულ სარეგისტრაციო გვერდს მულტისაიტისთვის, რომელიც ანაცვლებს სტანდარტულ wp-signup.php-ს.

    WordPress-ის ნორმალური ინსტალაციისთვის, რეგისტრაციის მხარე (ავტორიზაცია, პაროლის გადატვირთვა) უნდა აჩვენოს wp-login.php ფაილი.

    მრავალსაიტიანი wp-login.php-ისთვის, თქვენ უნდა იყოთ ჭკვიანი. ასე რომ, როდესაც მიდიხართ /wp-login.php?action=რეგისტრაციაზე WordPress მრავალსაიტზე, გადამისამართდებით /wp-signup.php მხარეს. მდიდარ თემებში მხარე არც ისე სასიამოვნოდ გამოიყურება, მე შევძლებ მის გაკონტროლებას.

    მთავარი საიტი merezhі

    WordPress-ის პოპულარიზაციისთვის, თქვენ ქმნით სარეგისტრაციო გვერდს (wp-signup.php) საწარმოს მთავარ დომენზე (საიტზე). პროტე, თქვენ შეგიძლიათ შექმნათ სარეგისტრაციო გვერდი ვაჭრის დერმალური ვებსაიტისთვის, რათა მათ განსხვავებული თემები ჰქონდეთ. ჩვენ ვხედავთ განსხვავებას, თუ მერეჟას ყველა საიტს აქვს საკუთარი პირადი რეგისტრაციის გვერდი, მაგრამ არჩეულია იგივე თემა და საიტები აღარ არის ჩემი. როგორც vykoristovuyutsya სხვადასხვა თემები, აუცილებელია მეტი კოდის დაწერა.

    functions.php?

    ნი. Im'ya ფაილი, zdaєtsya, zgaduєtsya be-yakіy statti WordPress-ის შესახებ. ჩვენი აზრით, თუ გადავხედავთ მათ, ვისაც აქვს საიტის ქვირითის დაზღვევის დარეგისტრირების ფუნქციონალობა, არ არის მიზეზი, რომ იოგას დავაბრალოთ MU-პლაგინები, რადგან ისინი იბნევიან, როდესაც ისინი წერენ საიტზე.

    ლირიკული ჩანაწერი

    Wart მიუთითებს იმაზე, რომ MU-პლაგინები უფრო ადრეა დაკავებული მეორადი დანამატებისთვის და სანამ WordPress ბირთვი სრულად დაიკავებს, მაშინ ამ ფუნქციების რამდენიმე დაწკაპუნებით შეიძლება გამოიძახოთ ფატალური შეწყალება PHP-ზე. მსგავს „ადრეულ“ წინსვლას შეიძლება ჰქონდეს თავისი პლიუსები. ვთქვათ, თუ თქვენ მათ შუაში ხართ, ვერ გადახვალთ ზოგიერთ მოქმედებებზე, ასე რომ თქვენ შეგიძლიათ სცადოთ მათთან ერთად შეხვიდეთ functions.php ფაილში. რომლის მაგალითი შეიძლება იყოს მოქმედებები Jetpack მოდულისგან jetpack_module_loaded_related-posts სახით (related-posts - მოდულის სახელი), რომლის დახმარებითაც შეგიძლიათ შეამოწმოთ მოდულების აქტივობა Jetpack-ში. ამ მოქმედების დაწყებამდე შეუძლებელია ფაილზე „მიმაგრება“ იმათთან, რომლითაც მოქმედება უკვე დაკავებულია მათ მიერ - დანამატები ადრეა დაკავებული. თქვენ შეგიძლიათ ნახოთ WordPress-ის ჩართულობის შეკვეთის დიდი სურათი კოდის სამოქმედო მითითების მხარეს.

    ფაილის შეკვეთა

    MU-პლაგინებს შეუძლიათ შეცვალონ ნებისმიერი რაოდენობის ფაილი იმავე სტრუქტურაში, როგორც ეს ლოგიკურად გეჩვენებათ. დავასრულებ დაახლოებით შემდეგ იერარქიას:

    |-mu-plugins |-|-load.php |-|-|-selena-network |-|-|-|-რეგისტრაცია |-|-|-|-|-plugin.php |-|-|-| -|-... |-|-|-|-jetpack |-|-|-|-|-plugin.php

    load.php ფაილი შეიცავს ყველა საჭირო დანამატს ჩვენი საზომისთვის:

    // ჩატვირთეთ ტრანსლატები ყველა დანამატისთვის load_muplugin_textdomain("selena_network", "/selena-network/languages/"); // ქსელის რეგისტრაცია მოითხოვს WPMU_PLUGIN_DIR. "/selena-network/signup/plugin.php"; // სხვა დანამატები // საჭიროებს WPMU_PLUGIN_DIR ...

    selena-network საქაღალდის შუაში შენახულია დანამატის საქაღალდეები, სკინს აქვს თავისი plugin.php , ამიტომ ჩვენ მას load.php-ში ჩავრთავთ. Tse მისცეს gnuchkіst რომ mozhlivіst shvidko vіdklyuchati და მოიცავს deakі speechі.

    რეგისტრაციის მხარის მისამართები

    რეგისტრაციის მხარის მისამართის დასაზუსტებლად არჩეულია wp_signup_location ფილტრი. თქვენ შეგიძლიათ იპოვოთ იგი wp-login.php ფაილის შუაში და შეგიძლიათ გადამისამართდეთ თავად wp-signup.php-ზე.

    შემთხვევა "რეგისტრაცია" : if (is_multisite()) (wp_redirect(apply_filters("wp_signup_location", network_site_url("wp-signup.php"))); გასვლა;

    დაამატეთ თქვენი ფუნქცია mu-plugins/selena-network/signup/plugin.php , რათა შეიყვანოთ რეგისტრაციის მხარის მისამართი ნაკადის საიტზე:

    ფუნქცია selena_network_signup_page ($url) ( return home_url () . "/signup/"; ) add_filter ("wp_signup_location", "selena_network_signup_page", 99);

    selena_network - პრეფიქსი, რომელსაც ვიყენებ ყველა ფუნქციის სახელში ჩემს საიტზე არსებული MU-დანამატების შუაში, რათა თავიდან ავიცილო შეთქმულება და შემდეგ შევცვალო ის შენი უნიკალური პრეფიქსით. ფილტრის დამატების პრიორიტეტია 99, რათა სხვა დანამატებმა, მაგალითად bbPress-მა და BuddyPress-მა შეძლონ ამ მისამართის ფაილზე გადაწერა (MU-პლაგინები ადრეა აღებული, ქვედა სახელების დანამატები, დივ. უფრო მაღალი). პატივი ეცით, რომ home_url() იმარჯვებს network_site_url()-ის ნაცვლად, რათა არ შეამოწმოთ იგივე დომენი. მისამართის მსგავსად, შეგიძლიათ გადაატრიალოთ ის URL-ზე.

    გვერდითი დასაკეცი

    ახლა მოდით შევქმნათ მხარე site.com/signup/ მისამართით მორგებული ინტერფეისის საშუალებით და მშობლის საქაღალდეში, ჩვენი შაბლონი. ახალი მხარე- page-signup.php. სიტყვა "რეგისტრაცია" შეიძლება შეიცვალოს უნიკალური ID-ით.

    ახალი შაბლონის შიგნით, სარეგისტრაციო ფორმის საჩვენებლად აუცილებელია გამოიძახოთ selena_network_signup_main() ფუნქცია.

    გთხოვთ გაითვალისწინოთ, რომ მთელი პროცესი არ არის შეზღუდული შაბლონებით და ამის ნაცვლად შეგიძლიათ შექმნათ თქვენი საკუთარი მოკლე კოდი, რომელიც ასევე მოუწოდებს selena_network_signup_main() ფუნქციას.

    wp-signup.php და wp-activate.php

    ახლა გადავხედოთ ფუნქციების შექმნას, თითქოს სარეგისტრაციო ფორმას ვქმნიდით. ვისთვისაც დააკოპირეთ wp-signup.php და wp-activate.php ფაილები WordPress root-დან mu-plugings/selena-network/signup/-ზე (და არ დაგავიწყდეთ მათი ჩართვა mu-plugins/selena-network-ის შუაში. /signup/plugin.php) . ფაილებთან შემდგომი მანიპულაციები კიდევ უფრო თანმიმდევრულია და შეიძლება დიდი ხნის განმავლობაში იყოს აღწერილი; მე მხოლოდ აღვწერ რაზეც მე მჭირდება მუშაობა და ჩემი პროექტის გარე ფაილების გამოქვეყნება:

    1. ფაილის ზედა ნაწილში, იხილეთ ყველა მოთხოვნა, სწრაფი დაწკაპუნებით ფუნქციები და სხვა კოდი ფუნქციების უკან.
    2. გადაარქვით ყველა ფუნქცია სახელებს უნიკალური პრეფიქსების დამატებით.
    3. შეახვიეთ wp-signup.php კოდის ქვედა ნაწილი selena_network_signup_main ფუნქციით და დაწერეთ გლობალური $active_signup კობზე; .
    4. შეცვალეთ განლაგება vlasnu-ზე საჭირო ადგილებში.

    wp-activate.php შიგნით, თქვენ უნდა დაამატოთ დაახლოებით იგივე:

    1. იხილეთ მთელი კოდი ფუნქციებით, გადაიტანეთ განლაგება სხვა ფუნქციის გარშემო.
    2. შეცვალეთ განლაგება იმ ადგილებში, სადაც ეს აუცილებელია.

    ფაილი wp-activate.php განიხილება ირიბი ჩანაწერის აქტივაციის მხარისთვის. როგორც რეგისტრაციის მესამე მხარე, ამისათვის თქვენ უნდა შექმნათ მორგებული შაბლონი, გამოიყენეთ იგივე ზარის ფუნქცია wp-activate.php ფაილში.

    ნადსილაემოს ფოთლის გააქტიურება

    რეგისტრატორი ახორციელებს ფურცლის მიღებას ობლიკოვის ჩანაწერის გააქტიურების მოთხოვნით. wpmu_signup_user_notification() ფუნქცია ms-functions.php ფაილიდან ზრუნავს cym zapping-ზე. Її ფუნქციონირება შეიძლება დაინიშნოს თქვენი საკუთარი ფუნქციისთვის. მიზეზი, ამ ფუნქციის შესაცვლელად, არის ის, რომ აუცილებელია იძულებითი ჩანაწერის გააქტიურება wp-activate.php-დან. "გამორთეთ" ეს ფუნქცია, შეგიძლიათ გამოიყენოთ დამატებითი wpmu_signup_user_notification ფილტრი, რომელიც მაინც ყალბია (ასე რომ არ გამორთოთ, აქტივაციის ფურცელი ორჯერ დარედაქტირდება, კარგი, მართლა ორი განსხვავებული ფურცელი).

    ფუნქცია armyofselenagomez_wpmu_signup_user_notification($user, $user_email, $key, $meta = array()) (// ... // wpmu_signup_user_notification() ფუნქციის კოდი wp_mail($user_email, wp_specialcharss_decode;) add_filter("wpmu_signup_user_notification", "armyofselenagomez_wpmu_signup_user_notification", 10, 4);

    შედეგად, სელენას თემებში სარეგისტრაციო გვერდი უფრო მდიდარი და მოწესრიგებული გახდა.

    ვისნოვოკი

    სხვა არ არის ინტერნეტში სწორი გზაუფრო მეტიც, როგორ გააკეთოთ ეს თავად - Apache გადამისამართებები, AJAX-ფორმები, რომლებიც არ მუშაობს Java Script-ის გარეშე და ა.შ.

    პატივს ვცემ, რომ გულდასმით არედაქტიროთ ფაილები და არ აურიოთ ზედმეტად არდადეგების დროს, ასე რომ, მომავალში, WordPress-ის მსგავსად, შეცვალეთ wp-signup.php და wp-activate.php ფაილები, უფრო ადვილი იქნება ზრუნვა. საკუთარ თავს ცვლილებისთვის.

    არ დაგავიწყდეთ გაოცდეთ სხვა ფუნქციების ყველა აღწერილობის გამომავალი კოდით, ასე რომ მე შევძლებ გავარკვიო რა არის კოდის შუაში.

    ბონუსი. დამცველი სპამერებისგან

    WordPress-ზე საუკეთესო საიტების პოვნა ხშირად იღებთ უამრავ სპამის რეგისტრაციას. თქვენ შეგიძლიათ დაწეროთ რამდენიმე გონება ბოტების გაფილტვრისთვის, ხშირად უფრო ჰგავს ინტელექტის შექმნის მცდელობას 🙂 (მე არ ვარ ექსპერტი აპაჩის პერსონალიზაციაასე რომ, ჩემი წესები შეიძლება არ იყოს სწორი).

    RewriteEngine On RewriteBase / RewriteRule ^wp-signup\.php - RewriteRule ^wp-activate\.php - # BEGIN WordPress # Wordpress-ის ნახვის წესები არ საჭიროებს ჩაკეტვას :) # ... # END WordPress

    პ.ს ვცდილობ რაც შეიძლება დეტალურად აღვწერო მესამე მხარის გამოსვლების აქტები, რომ თუ დავიწყებდი, ერთი საათის განმავლობაში შესაძლებელი იყო ვინმეს ეთქვა და აეხსნა ბევრი გამოსვლები. ასე რომ, მე პატივს ვცემ, რომ მსგავსი მცირე ინდუქციები სხვა მასალებზე შეიძლება გაუმჯობესდეს რაიმე ახლის შესაქმნელად და თქვენი ცოდნის გაფართოებისთვის. RewriteRule ჩანაწერებს აქვს რეგულარული ხაზები, სუნი არ არის დასაკეცი, მაგალითად, სიმბოლო ^ ნიშნავს მწკრივის ყურს.

    APOTHEOZIS APOTHEOZIS (ბერძნული აპოთეოზის ტიპი - დამწვარი); 1) ელინისტურ საბერძნეთსა და ძველ რომში მას იბადება სუვერენული ბოროტმოქმედების, გმირის, იმპერატორის გაღმერთება, ბუნების ღვთაებრივი არსი. რენესანსის ეპოქაში ფენომენის სახელწოდება მხატვრობაში, თეატრში გამოსახულებიდან გადავიდა. დღევანდელ როზმარინს აქვს აპოთეოზი - გმირის განდიდების საბოლოო მუსიკალური ან დრამატული სცენა, ეფექტური "ცოცხალი სურათი", რომელიც პლასტიკურად გამოხატავს სახეობის მთავარ იდეას. აპოთეოზის ფორმა (ისევე როგორც პანეგირიული სპექტაკლი, რომელიც აპოთეოზის ჟამს ღრიალის მსგავსი იყო) დაიშალა დასავლეთ ევროპის თეატრებში და XVI-XVIII საუკუნეების რუსეთის სასამართლო თეატრში; ის ასევე განვითარდა რევოლუციური ეპოქების თეატრში - საფრანგეთში, მაგალითად, მე -18 საუკუნეში, რუსეთში ჟოვტნევის რევოლუციის შემდეგ. 2) ფართო მნიშვნელობით - განდიდება, დიდებულება, იქნება ეს ინდივიდი, პოდიუმი, გამოვლინება.

    თანამედროვე ენციკლოპედია. 2000 .

    სინონიმები:

    საინტერესოა, რა არის "APOTHEOOSIS" სხვა ლექსიკონებში:

    წიგნები

    დივ... სინონიმების ლექსიკონი

    ბაინკი, იმმ. მიზანი. (ბავშვი). დაიძინე. ბობები გინდა? დაწექით, ნაბიჭვრებო. უშაკოვის ტლუმაჩნის ლექსიკონი. დ.მ. უშაკივი. 1935 1940... უშაკოვის ტლუმაჩნის ლექსიკონი

    რობიტის / რობიტის ისტორიები (მშვიდობით). ჯარგ. მოვლავი. შატლი. დაიძინე. მაქსიმოვი, 21 წლის… რუსული შეკვეთების დიდი ლექსიკონი

    ვიწინასწარმეტყველებ. როზგ. ძილის ბანაკის შესახებ (ბავშვის მოძრაობისთვის chi rozmovі გაიზარდა іz dіtmi). II ინტ. როზგ. Vykoristovuєtsya, როგორც კოლისკის სიმღერის კომპონენტი. ეფრემის ტლუმაჩნის ლექსიკონი. T.F. ეფრემოვა. 2000... ეფრემოვას თანამედროვე პირქუში ლექსიკონი

    ნახვამდის-ბაი, მე... რუსული მართლწერის ლექსიკონი

    ნახვამდის- უცვლელობა... რუსული ფილმების ორთოგრაფიული ლექსიკონი

    mizh., at funkt. მითხარი. \u003d ბაი ბაი (II ნიშანი) ... ენციკლოპედიური ლექსიკონი

    ნახვამდის- საერთაშორისო; ფუნქციაზე. მითხარი. = ნახვამდის 2)… ბაგათიოჰ ვირაზივის ლექსიკონი

    ნახვამდის- ba/ink/i, შორის... მორფემული ორთოგრაფიული ლექსიკონი

    წიგნები

    --- აირჩიეთ საწყობი --- Buffalo Grove IL 60089 USA (Buffalo Grove IL 60089 USA) 60035 P.O Box 723 №24 Istanbul(Istanbul,Gençturk Cad.15, Birlik Han. k-5.d. 51 № Nişantaşı-Valikonağı cd-Şehit İsmet Armağan sk- No 3 / 17) Madrid 92200 Neuilly-sur-Seine Republica Moldova , Falesti(s.Fagadau) South Kensington(Bute street) Adler(Tikhiy provulok Kubedest 2, Akthiy provulok (Akbedest) ოლქი) Aktyubinskaya 47/2) Almetievsk (m. Almetyevsk, st. 13, office 306) Anapa (St. Terska 88, 3 on top) Astrakhan (st. Komunistichna bud. 17, office 4) Atirau (m. Atirau, Azattik Ave. 42, ოფისი 206) ბერდიანსკი (ზაპორიჟჟიას რაიონი) ბიშკეკი (მ. ბიშკეკი, ჩუის გამზ. 32B სავაჭრო ცენტრი "იზუმრუდი" ოფისი C-5) ბლაგოვიშენსკი (სტ. 575) ბუგურუსლანი (ჩერვონოპრაპორნას ქ. 47/2) ველიკი ვესტიუგი (მ. ვულ. ჩერვონა, კვირტი 61 (2 ზევით) ქალაქის ცენტრი) ვლადივოსტოკი (ქ. სვიტლანსკა 147 ოფისი 2/4) ოლგოგრადი (ვოლგოგრადის ქ. საწყობი 23) დიურტიული (ქ. აგიდელი, 4 კვ.2) იეისკი (წმ. კარლ-მარქსი 42/1) ეკატერინბურგი (in ქ. Pershotravneva 56, office 308) ეკატერინბურგი (St. Mamin-Sibiryaka 10, office 3) Ivanovo (Sheremetievskiy prospect, 85G, ბიზნეს ცენტრი "Premium Plaza" 2 overhead, office 212) Izhevsk (Lenina 21, office 304) Forum" (Chapa) 4 ინდ. 368501) ირკუტსკი (ირკუტსკი, გირსკას ქ. 4 (შეკვეთა კარამელის სავაჭრო ცენტრიდან) ოფისი 407) იშიმბაი (ზორგე, 18 ბუდინოკი) იოშკარ-ოლა (ლენინას გამზ. 24v, ოფისი 318) ყაზანი 10, მეტრო სადგური "Kozya" Sloboda" so-so ქ. Dekabristiv, 85 "B" 401) კიევი (st. Olevska 9 kv. from Komsomolskaya budіvlі.) Kostroma (prospekt Miru 51, office 15) Krasnodar (st. Chervona 124 office 302) Krasnoyarsk (pr. (Akushskіnogo 9v) Miass (vul. 30 rokiv VLKSM 85) მინსკი (Korzhenevskogo): VDNG, ქ. იაროსლავსკა, 10, კორპუსი 4 ოფისი 10 6) მოსკოვი (სიმფეროპოლსკის ბულვარი) მოსკოვი (Glazovskiy provulok d.5 artsy, შესასვლელი კარი). zliv და მეტროსადგური: სმოლენსკი-500მ, კროპოტკინსკა-1კმ., პარკი კულტურა-1კმ.) მოსკოვი (მ. ჩეხოვსკაია, პუშკინსკაია, ტვერსკაია. პრისტრასნის ბულვარი, 6 კორპუსი 1, დილოვის ცენტრი, ოფისი 421) მოსკოვი (მ. ლობნია, მაიაკოვსკოგოს ქ., 4A, TP1, Z ზედა, ოფისი 301) მოსკოვი (მეტრო სადგური Molodijna.vulitsia Yartsevskaya budinok 27 building 9 Wellness center "Chotiri S. „) მოსკოვი (ჩერვონა პრესნია 38-45) მოსკოვი (მ. მოსკოვის მ. ლენინსკის პერსპექტივა, ვავილოვას 9A, კორპუსი 6, ოფისი 10 B, 3 ზემოთ) მოსკოვი (მ. მოსკოვი, ქ. რადიო ბუდინოკი 5 სართული 4.2 ზედნადები, 201 კაბინეტი (შესაძლებელია 3 ზედ ბუდინოკის ღირებულება)) ჭოვნის სანაპიროები (პუშკინა ქ შ.უსმანოვა, 122 კბ. 111 1 ზემოთ) ნალჩიკი (მ. ნალჩიკი, ქ. კიროვა 292a, 2 ზე, ოფისი 6) ზნაჰიდკა (ქ. პრიკორდონა დ. 6, ოფისი (მ. გორკოვსკა, ქ. 3, ძვ.წ. "Nova Ploshcha", 2 over, office 239) Nizhniy Tagil (Chervonoarmiyska d.42a, 3 over office 4) Nizhniy Tagil (Nizhniy Tagil, ქ. Papanina 5, office 1, m.Kushva, st. Gornyakova 2/ 11) მიკოლაივი (Ryumina vul. 5/1) ნოვოროსიისკი (კრასნოდარის ტერიტორია) ქ. Zolota ribka, 15) Novorosijsk (St. Murata Akhedzhak bud. 4) Novosibirsk (Vul, Zhovtneva 42 office 601, Business Center Orientovno Lenina Square, Mayakovsky cinema) ნოვოსიბირსკი (გოგოლის ქუჩა 33/1. 20 მეტრში მეტროსადგურ „Markishna“ , სავაჭრო ცენტრი „გოგოლზე“.) ნოვოტროიცკა (ქ. 144 კვ. 26) ნოვი ურენგოი (დრუჟბას მიკრორაიონი, ბუდინოკი 4/3, კვ. 183) ნორილსკი (ლენინსკის პროსპექტ 47ა ოფისი 79) ნურ-სულთანი (ასტანა) (Beibitshilik 1). , BC Marden, office 708) Odesa (b) -r French 60 მდიდარი სარეაბილიტაციო სანატორიუმი "SARTUS") Generala Batkivshchina st., d56 kv60) Oren, პირველი ზევით, მარჯვენა მხარეს.) Orsk (ლენინას გამზირი, 93) პავლოდარი. (71 Satpaeva ქ., ოფისი 107) პერმი (Radyanska d.52, office 1) Perm (Druzhby budinok st., 34 office 305) Pit-Yakh (Microdistrict 5, budinok 5) P'yatigorsk (st. 3 office 209, 2 ზევით) სამარა (ქ. ნოვო-სა dova 106, office 804, livy lift, 8 top) სანქტ-პეტერბურგი (მეტრო: Vasileostrovskaya, ვასილევსკის კუნძულის მე-13 ხაზი, 78, ოფისი 182) სანკტ-პეტერბურგი (მ. დოსტოევსკა (5 მეტრი) და მეტრო Volodimirska (300 მეტრი) VOLODYMIRS PASAGE 3 ზემოთ, ცენტრალური შესასვლელი PERSH GALLERY, 19 Volodimirsky Ave. სავაჭრო ცენტრი "ADMIRAL". მალა მორსკას ქუჩა, 4/1) სანკტ-პეტერბურგი (მ. სინნა, მ. სადოვა, მ) სპასკა 1 xv.pishki ქ. ეფიმოვა 1, ტოპ 2, ოფისი 4, ბიზნეს ცენტრი "სინა 4", კაფე "პივნიჩის" შესასვლელი , ოფისი 29/2) სნიჟინსკი (ს. ზაბაბაჰინა 19 ა) სოჭი (მ. სოჭი კო. დონსკა ბუდინოკი 15.) სოჭი (ქ. რადიანსკა 42 ოფისი 204) სტავროპოლი (ქ. ლომონოსოვის 21 ოფისი) 18) სტერლიტამაკი (სტ. ხუდაიბერდინას 85, 3 ზემოთ) სურგუტი (ვულ. 30 როკივი პერემოგი დ.64) ტობოლსკი (მ. ტობოლსკი, 6 მიკროოკ 11, ბუდინის 6 მიკრორაიონი. , ოფისი 39 (შესასვლელი კომსომოლსკის პროსპექტის მხრიდან)) ტოგლიატი (40 rokiv Peremogi, d.50, office 212a, TD Veselka 1 over) Tomsk (m. Tomsk street Radyanska 84) Tuymazi (st. Michurina d.15 office 2 ) ტიუმენი (ქ. გერცენა 72 ოფისი 214) ულიანოვსკი (ქ. . გორკოგო 57 ოფისი 213) უფა (ვერხნეტორგოვას მოედანი, 6 (ბიზნეს ცენტრი NESTERIV)) ხაბაროვსკი (პოსტიშევას ქ., 16 of. z 108) ხანტი-მანი ხანტი-მანსიისკი, ქ. კარლ მარქსი 15, 2 ზედა. ) ჩიტა (ბაბუშკინას ქ., 104 ოფისი 425) ჭიშმი (ქილცევას 17) ჭიშმი (პრ. DRUZH, 1B) შვეიცარია (Arosio via Terra Sotto, 1 6939) Shymkent (Kolgospna st. 47) Pivdenno-Sakhalinsk (ანგარსკის შესახვევი 21) იაკუტსკი (ძერჟინსკის ქ. 8/3b) იაკუტსკი (იაკუტალაემბანკ, 5) SEC "შადრევანი, 4 თავზე) Yanaul (vul. Radyanska, bud. 23, office N 8 budivlya Berizka) Yaroslavl (57 Showroom) Yaroslavl (St. Chkalova bud. 2) m. Birsk Bashkortostan () ?>
  • © 2022 androidas.ru - ყველაფერი Android-ის შესახებ