Làm thế nào để di chuyển trang con từ dev multisite sang multisite sản xuất


12

Tôi đang tìm cách tốt nhất và an toàn nhất để phát triển cục bộ một số trang con sử dụng multisite và chuyển chúng sang môi trường sản xuất khi chúng sẵn sàng.

Tôi đã di chuyển toàn bộ cài đặt nhiều trang với trang con đầu tiên hiện đang hoạt động. Tôi muốn phát triển các trang web khác trên máy chủ cục bộ vì vậy tôi để máy chủ sản xuất một mình nhưng rõ ràng tôi không thể thực hiện di chuyển hoàn toàn một lần nữa.

Tôi đã tìm kiếm một giải pháp nhưng tất cả mọi thứ tôi tìm thấy là về việc chuyển một trang web sang đa trang hoặc theo cách khác, không có "chuyển trang con từ multisite sang multisite".

Tôi muốn giữ mọi thứ: cài đặt, vật dụng và vân vân.


1
Tôi nghĩ rằng plugin BackupBuddy thương mại có thể làm điều này, nhưng tôi sẽ quan tâm đến việc xem các câu trả lời chung chung hơn cho vấn đề này.
Hết

Do các chuỗi nối tiếp trong cơ sở dữ liệu, nó không phải là dễ dàng để làm điều đó. Tôi chưa thấy một plugin cho một di chuyển thuần túy cho đến nay, nhưng đó hoàn toàn là một việc nên làm. Việc duy nhất là chuyển "hầu hết" các phần của blog này sang blog khác là thông qua cơ chế xuất / nhập XML, nhưng bạn vẫn phải sửa rất nhiều đường dẫn sau đó.
2ndkauboy

1
Tùy chọn tốt nhất bạn có là làm điều đó với truy vấn sql trực tiếp. Tôi đã thực hiện nó hơn một lần và nó hoạt động tốt nếu bạn đủ cẩn thận.
krembo99

@ krembo99, bạn có thể giải thích thêm một chút về tecnique của bạn không?
molokom

@Rarst, liên quan đến BackupBuddy, đây là từ Câu hỏi thường gặp của họ: "Không. Hỗ trợ Multisite BackupBuddy là thử nghiệm. Nó không được khuyến nghị cho các trang web sản xuất và không được hỗ trợ chính thức."
molokom

Câu trả lời:


4

Điều này có thể hơi tẻ nhạt, nhưng hy vọng điều này sẽ giúp. Càng ít thay đổi từ môi trường này sang môi trường tiếp theo, quá trình này sẽ càng ít đau đớn. Đặc biệt, nếu tên miền, id trang web, đường dẫn tệp vẫn giữ nguyên, quá trình này sẽ ít đau đớn hơn.

Bài đăng này giả định một số kiến ​​thức về quản lý cơ sở dữ liệu. Đây không phải là một bước hoàn chỉnh bởi vì bạn nên tìm kiếm các diễn đàn và có thể tạo một chủ đề cụ thể cho bất kỳ bước nào bạn gặp khó khăn, ví dụ, nếu bạn cần trợ giúp để xuất bảng cơ sở dữ liệu.

Điều quan trọng nhất cần làm là sao lưu toàn bộ cơ sở dữ liệu và tệp của bạn cho cả trang dev cục bộ và vị trí mới trong trường hợp có sự cố. Mong đợi một cái gì đó đi sai. Hãy ngạc nhiên nếu nó không.

Di chuyển các tập tin chủ đề của bạn nên khá đơn giản. Tải các tệp chủ đề của bạn lên thư mục wp-content / Themes và kích hoạt nó như bình thường. Tôi cho rằng đây là một chủ đề được chia sẻ mà tất cả các blog đều có quyền truy cập.

Tải tập tin plugin lên wp-content / plugin tại vị trí mới. Đừng kích hoạt chúng.

Lưu ý rằng bất kỳ nội dung nào dành riêng cho blog bạn đang di chuyển sẽ được đặt trong một thư mục trông giống như wp-content/blogs.dir/2/files2 là id trang web. Nếu có thể duy trì ID trang web này tại vị trí mới, việc này sẽ giúp giảm thiểu xung đột trong cơ sở dữ liệu sau khi di chuyển đến vị trí mới. Nếu không, bạn sẽ phải cập nhật cơ sở dữ liệu của mình để phản ánh đường dẫn mới.

Bạn sẽ cần xuất các bảng nhiều trang liên quan đến blog bạn đang cố gắng di chuyển và nhập chúng vào vị trí mới. Bạn sẽ phải chỉnh sửa các bảng lưu trữ dữ liệu liên quan đến blog bạn đang di chuyển. Đảm bảo rằng tiền tố của các bảng này giống nhau ở vị trí mới.

Ví dụ: bảng wp_bloss cho blog của bạn chứa id blog, id trang web, tên miền và đường dẫn cho phép nhiều trang WordPress nhận ra và làm việc với blog của bạn. Chỉnh sửa bất kỳ trong số này không còn đúng để phản ánh vị trí mới, nhưng vui lòng đọc phần còn lại của bài đăng này trước khi thử làm như vậy.

Xem tổng quan về bảng nhiều trang

Để di chuyển cài đặt WordPress và plugin của bạn cho blog cần chuyển , bạn sẽ cần hủy kích hoạt tất cả các plugin cục bộ, sau đó xuất các bảng cụ thể trên trang web của bạn (tham chiếu codex), bao gồm cả các plugin cho plugin của bạn. Nhập các bảng này vào cơ sở dữ liệu của vị trí mới.

Đảm bảo vị trí mới sử dụng tiền tố cơ sở dữ liệu giống như các bảng bạn đang nhập. Tiền tố sẽ chứa id trang web cho blog của bạn và trông giống như vậy wp_2_options, wp_2_posts, wp_2_postmeta.
Xem Khám phá WordPress Multisite của Lisa Sabin-Wilson

Tôi giả sử bạn biết cách nhập / xuất qua phpmyAdmin hoặc bằng lệnh mysqldump trong thiết bị đầu cuối của bạn. Điều đó hơi vượt quá phạm vi của bài đăng này, nhưng đây là một ví dụ xuất khẩu sẽ giúp ích.

Từ làm thế nào để bạn mysqldump bảng cụ thể? (Cú pháp được chỉnh sửa một chút để rõ ràng hơn.):

Nếu bạn đang bán các bảng t1, t2 và t3 từ cơ sở dữ liệu có tên mydb

mysqldump -u <username> -p <password> mydb t1 t2 t3 > mydb_tables.sql

Trước khi kích hoạt bổ trợ trên trang web mới, hãy chuyển đến cài đặt permalink của bạn trong cp quản trị và lưu cài đặt để cập nhật các tệp cơ sở dữ liệu vào url trang web mới. Kích hoạt plugin của bạn và xem nếu có bất kỳ vấn đề.

Một vấn đề bạn có thể gặp phải là với việc tuần tự hóa dữ liệu trong các bảng của bạn.

"[...] Các tham chiếu đến tên miền hoặc vị trí cũ sẽ vẫn còn trong cơ sở dữ liệu và điều đó có thể gây ra sự cố với liên kết hoặc hiển thị chủ đề.

Nếu bạn thực hiện tìm kiếm và thay thế trên toàn bộ cơ sở dữ liệu của mình để thay đổi URL, bạn có thể gây ra sự cố với tuần tự hóa dữ liệu, do thực tế là một số chủ đề và tiện ích lưu trữ giá trị với độ dài URL được đánh dấu. " Khi Tên miền hoặc URL của bạn được đánh dấu." Thay đổi

Hãy nhớ rằng tuần tự hóa dữ liệu cũng có thể gây ra xung đột trong các bảng cơ sở dữ liệu liên quan đến các plugin của bạn. Thay vì thực hiện tìm kiếm thủ công và thay thế trên url được lưu trữ trong cơ sở dữ liệu, hãy sử dụng tìm kiếm cơ sở dữ liệu và thay thế tập lệnh được đề xuất trong liên kết mã trước đó. Nếu chỉ có một vài trường hợp tuần tự hóa trong cơ sở dữ liệu, bạn có thể chỉnh sửa chúng theo cách thủ công thông qua phpMyAdmin hoặc bất kỳ tùy chọn nào của bạn để quản lý cơ sở dữ liệu của bạn.

Một vấn đề nữa mà bạn có thể gặp phải là bất kỳ đường dẫn tệp không chính xác nào được lưu trữ trong các bảng cơ sở dữ liệu sẽ cần phải được cập nhật để phản ánh vị trí mới. Đây có thể là trường hợp cho các thư mục phương tiện hoặc thư mục được sử dụng bởi các plugin tùy thuộc vào cách plugin được thiết kế. Một lần nữa, bạn sẽ muốn sử dụng tập lệnh tìm kiếm và thay thế để đảm bảo không có xung đột nối tiếp trong khi cập nhật đường dẫn tệp. Ngoài ra, bạn có thể đi qua các bảng của mình và cập nhật chúng theo cách thủ công.


Cảm ơn! Vì vậy, có vẻ như không có lợi ích thực sự khi làm việc theo cách này: đó là một túi tổn thương. Nó sẽ được phát triển tốt hơn trang web địa phương duy nhất và di chuyển vào môi trường multisite?
molokom

Bạn có thể gặp phải nhiều vấn đề tương tự, nhưng nó sẽ yêu cầu ít bảng hơn mà bạn cần di chuyển. Chỉ cần cung cấp cho bạn một ý tưởng, đây là một hướng dẫn phù hợp cho cái đó được gọi là Di chuyển một blog hiện có vào nhiều trang web WordPress . Tôi sẽ để lại cho bạn để xác định cái nào hiệu quả hơn cho bạn với tư cách là nhà phát triển.
iyrin

0

Bạn không thể sử dụng các tính năng Xuất và Nhập có sẵn của WordPress phải không? Sau đó, vấn đề chỉ là chuyển chủ đề từ cài đặt này sang cài đặt tiếp theo qua FTP. Nó diễn ra khá nhanh chóng và bạn có thể di chuyển một trang web giữa các lần cài đặt trong vòng chưa đầy 5 phút.

Bạn có thể đồng bộ thông tin người dùng sử dụng một plugin tiện lợi gọi là tài Syncronization .

Tôi chưa sử dụng nó, nhưng ManageWP có một công cụ nhân bản và triển khai thân thiện với người dùng để đi từ một trang web hiện có sang một trang mới ... thật đáng để xem xét.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.