প্রথমত, আমি এই প্রক্রিয়াটিতে বেশ কয়েকটি পোস্ট পড়েছি । যাইহোক, বিভিন্ন কারণে, এমনকি বিমূর্ত উদাহরণের অভাব, বা খুব বিমূর্তভাবে অভাবের কারণে প্রক্রিয়াটি কার্যকর করা বা সমস্যা সমাধান করা কঠিন হয়ে পড়ে। এবং কয়েকটি "না করতে পারে" এমন পোস্ট রয়েছে যা প্রায় 3.5 এর সাথে অনুসরণ করা হয়, আপনি এখন "সাবধানতা অবলম্বন" করতে পারেন, তবে কোনও সন্দেহ দ্বিধাহীন, যদিও সন্দেহ নেই।
সারসংক্ষেপ:
কীভাবে একটি ওয়ার্ডপ্রেস মাল্টিসাইট (ডাব্লুপিএমএস) কে ডট কম থেকে রুট / ব্লগে সরানো যায়?
এই উদাহরণের জন্য, আমরা একটি "ডাব্লুপিএমএস" "ডটকম" থেকে "রুট.com/ ব্লগস" এ চলেছি
আমি বুঝতে পারি যে আমার ডাটাবেস এবং wp-config.php সঠিকভাবে আপডেট করতে হবে। মনে হচ্ছে আমারও .htaccess আপডেট করতে হবে? আমি অনুসন্ধান / প্রতিস্থাপন এবং মাইএসকিউএল কোয়েরি আপডেটের সাথে সিরিয়ালাইজেশন ইস্যু সম্পর্কেও সচেতন।
আমার একটি ডাব্লুপিএমএস রয়েছে যা আমি 3.5 এ আপডেট করেছি। আমি ডোমেন এবং পথের তথ্য সহ নিম্নলিখিত সারণীগুলি পেয়েছি
উপ-ডিরেক্টরিতে সরানোর আগে বিদ্যমান কার্যকারী কনফিগারেশন
1. wp_blogs
select blog_id, domain, path from wp_blogs;
+---------+-------------+--------+
| blog_id | domain | path |
+---------+-------------+--------+
| 1 | root.com | / |
| 2 | root.com | /matt/ |
+---------+-------------+--------+
2. wp_site
select * in wp_site;
+----+-------------+------+
| id | domain | path |
+----+-------------+------+
| 1 | root.com | / |
+----+-------------+------+
৩. ব্লগ_আইডি ডাব্লুপিপি _ # _ বিকল্পের সারণীর সাথে সম্পর্কিত যা এতে রয়েছে:
select option_name,option_value from wp_2_options
where option_name = 'home' or option_name = 'siteurl';
+-------------+--------------------------+
| option_name | option_value |
+-------------+--------------------------+
| home | http://root.com/matt/ |
| siteurl | http://root.com/matt/ |
+-------------+--------------------------+
4. আমার সালে WP-config.php আমি নিম্নলিখিত WPMS-নির্দিষ্ট লাইন আছে:
define('WP_ALLOW_MULTISITE', true);
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false);
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'root.com' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
৫. অবশেষে, আমার .htaccess এ আমার কাছে রয়েছে:
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
সাইটটি সরানোর জন্য আপডেটগুলি প্রয়োজন
আমার কাছে মনে হয় যে আমার সাইটটি / ব্লগগুলিতে সরাতে আমি চাই:
1. wp_blogs এ আপডেট করুন
mysql> update wp_blogs set domain=concat(domain, '/blogs'), path=concat(path, 'blogs/');
select blog_id, domain, path from wp_blogs where blog_id < 3;
+---------+-------------+--------------+
| blog_id | domain | path |
+---------+-------------+--------------+
| 1 | root.com | /blogs/ |
| 2 | root.com | /blogs/matt/ |
+---------+-------------+--------------+
2. wp_site আপডেট করুন
update wp_site set domain=concat(domain, '/blogs'), path=concat(path, 'blogs/');
select * from wp_site;
+----+-------------+------------+
| id | domain | path |
+----+-------------+------------+
| 1 | root.com | /blogs/ |
+----+-------------+------------+
3. wp _ # _ বিকল্পগুলি
+-------------+--------------------------------+
| option_name | option_value |
+-------------+--------------------------------+
| home | http://root.com/blogs/matt/ |
| siteurl | http://root.com/blogs/matt/ |
+-------------+--------------------------------+
4. wp_config.php
define('WP_ALLOW_MULTISITE', true);
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false);
$base = '/blogs/';
define( 'DOMAIN_CURRENT_SITE', 'root.com' );
define( 'PATH_CURRENT_SITE', '/blogs/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
দ্রষ্টব্য: এই পদক্ষেপটি কীভাবে যথাযথভাবে আপডেট করা হয়েছে তা আমি পরিষ্কার করছি না
5. .htaccess
আমি অস্পষ্ট "আপডেট .htaccess যথাযথভাবে" নির্দেশাবলী পেয়েছি, তবে সুনির্দিষ্ট নয়। পুনর্লিখনকে আপডেট করবেন? রুট ডট কমকে ব্লগ ব্লগগুলিতে সরিয়ে নিয়ে যাওয়ার সময় আমি কোন লাইনটি আপডেট করব?
উপরের প্রক্রিয়াটি থেকে অনুপস্থিত হ'ল পোস্টগুলিতে পাথগুলি পাওয়া যাবে। আমার ড্রাথাররা অনুসন্ধানের ব্যবহার করতে হবে এবং তার জন্য সরঞ্জামটি প্রতিস্থাপন করবে, আমি এই আরও মৌলিক আপডেটগুলি করার পরে; আমি নাকি ভুল করছি?
আপডেট বাংগেশিয়া পরামর্শ দেয় যে, হ্যাঁ, আমি রিভারাইটবেজকে "ব্লগগুলি" উপ-ডিরেক্টরিতে নির্দেশ করেছি, অর্থাৎ,
RewriteBase /Blogs
শেষ অবধি, আপনি যদি http://interconnectit.com/products/search-and-replace-for-wordpress-databases/ সম্পর্কে জানেন না । এটা দুর্দান্ত।
update wp_blogs set domain=concat(domain, '/blogs'), path=concat(path, 'blogs/');
বরং হওয়া উচিতupdate wp_blogs set path=concat('/blogs',path);