- Trạng thái
- Đã giải quyết
- Được báo cáo cho
- WPML Multilingual CMS 3.1.9.5
- Đã giải quyết trong
- 3.1.9.7
Tổng quan về lỗi
- Truy cập menu và tạo một menu bằng ngôn ngữ mặc định.
- Thử tạo menu bằng ngôn ngữ phụ.
- Sau khi lưu, bạn sẽ gặp lỗi 404.
Giải pháp tạm thời
Sự cố này đã được giải quyết trong WPML 3.1.9.7
Bạn nên cập nhật lên phiên bản WPML gần đây để khắc phục sự cố này
Nếu bạn không muốn hoặc không thể cập nhật WPML, vui lòng làm theo các hướng dẫn sau:
- Tải xuống phiên bản đã cập nhật của iclNavMenu.class.php
- Sử dụng nó để thay thế cho
sitepress-multilingual-cms/inc/wp-nav-menus/iclNavMenu.class.php:
Rất có thể điều này có nghĩa là bạn nên sử dụng ứng dụng khách FTP của mình và tải tệp lênsitepress-multilingual-cms/inc/wp-nav-menus: nếu được yêu cầu ghi đè lên tệp hiện có, hãy thực hiện.
Trong trường hợp gặp sự cố
Trong trường hợp bạn gặp bất kỳ sự cố nào sau đây:
Fatal error: Call to undefined method SitePress::get_setting() in /wp-content/plugins/sitepress-multilingual-cms/inc/wp-nav-menus/iclNavMenu.class.php on line 121PHP Fatal error: Call to undefined function wpml_prepare_in() in /wp-content/plugins/sitepress-multilingual-cms/inc/wp-nav-menus/iclNavMenu.class.php on line 548- Trang trắng/trống
Hãy thực hiện các bước sau:
- Đi tới “WPML” -> “Hỗ trợ”
- Nhấp vào ”thông tin gỡ lỗi“: bạn sẽ thấy một hộp văn bản màu xám, với rất nhiều thông tin (đó là một đối tượng json)
- Sao chép nội dung của hộp văn bản vào một tệp văn bản và đặt tên tệp đó theo ý muốn của bạn: tốt hơn nếu bạn sử dụng phần mở rộng “json”, nhưng điều này không bắt buộc
- Tạo một người dùng WordPress mới có quyền quản trị viên để tôi gỡ lỗi sự cố
- Cài đặt plugin “Duplicator” miễn phí (tại đây).
Bạn có thể sử dụng một plugin khác nếu muốn, nhưng các hướng dẫn sau đây dành riêng cho Duplicator (mặc dù chúng có thể dễ dàng điều chỉnh cho các plugin khác) - Tạo một gói mới:
- Đi tới “Duplicator” -> “Gói”
- Nhấp vào “Tạo mới”
- Tiếp tục với trình hướng dẫn, giữ nguyên tất cả các cài đặt mặc định (nếu muốn, bạn có thể loại trừ một số tệp bạn cho là không cần thiết, hoặc có thể làm cho gói quá lớn, chẳng hạn như các tệp trong thư mục “uploads”)
- Sau khi bản chụp nhanh đã sẵn sàng, hãy tải xuống cả hai tệp “installer” và “package”
- Tạo một thư mục và đưa vào các tệp ở bước 3 và 6.4 (tức là tệp văn bản chứa thông tin gỡ lỗi, tệp installer và tệp package).
- Nén thư mục đó thành tệp zip và tải lên Google Drive, Dropbox hoặc một dịch vụ tương tự (hoặc tải toàn bộ thư mục lên mà không cần nén và chia sẻ nó)
- Đi tới diễn đàn hỗ trợ của chúng tôi và tạo một phiếu hỗ trợ với tiêu đề sau “Workaround issues – Saving menus in non default language leads to 404 error”: chúng tôi sẽ yêu cầu bạn chia sẻ riêng tư các tệp bạn đã lưu ở bước #8.
Nếu bạn đang sử dụng phiên bản WPML quá cũ, giải pháp tạm thời này có thể không hoạt động.
In these cases, you may get a white page, or this errors: PHP Fatal error: Call to undefined function wpml_prepare_in()
Để khắc phục lỗi cụ thể này, vui lòng làm theo các bước sau:
mở'wp-content/plugins/sitepress-multilingual-cms/inc/functions.php'
và tìm kiếmwpml_prepare_in
- Nếu bạn không thể tìm thấy, hãy thêm phần này vào cuối tệp:
function wpml_prepare_in( $items, $format = '%s' ) { global $wpdb; $items = (array) $items; $how_many = count( $items ); if ( $how_many > 0 ) { $placeholders = array_fill( 0, $how_many, $format ); $prepared_format = implode( ",", $placeholders ); $prepared_in = $wpdb->prepare( $prepared_format, $items ); } else { $prepared_in = ""; } return $prepared_in; }