Cách tốt nhất để ghi đè tệp index.php từ mẫu j Joomla


7

Tôi đang sử dụng protostar làm mẫu cho trang web 3.3.1 của mình. Tôi đã thay đổi index.php để thiết kế lại các vị trí mô-đun và thêm nhiều vị trí khác.

Tôi vừa cập nhật trang web của mình lên Joomla 3.3.3 và ... Tôi đã mất tất cả các chỉnh sửa của mình. (Tôi có một bản sao lưu nên không phải là vấn đề lớn).

Vì vậy, bây giờ tôi tự hỏi cách tốt nhất để ghi đè index.php là gì để không mất các chỉnh sửa của tôi mỗi khi tôi cập nhật. Dường như không thể ghi đè lên tệp index.php của tôi trong template/protostar/htmlthư mục như các phần ghi đè khác.

Tôi tìm thấy trong một diễn đàn rằng tôi phải tạo một bản sao của thư mục protostar và đổi tên nó thành (giả sử) protostarperso. Đó có phải là cách tốt nhất để làm điều đó?

Cảm ơn rất nhiều!

Câu trả lời:


9

Có, cách tốt nhất là sao chép mẫu mong muốn của quản trị viên Joomla. Đi đến Extensions > Template Manager > Templatesvà nhấp vào mẫu mong muốn.

Trình quản lý mẫu :: Mẫu

Sau đó bấm vào Copy Templatevà nhập tên mới.

nhập mô tả hình ảnh ở đây

Sau đó làm cho nó mặc định và làm việc trên các index.phptập tin.

Ghi chú bên:

Lý do tại sao các thay đổi của bạn bị ghi đè là do sicne bản phát hành ban đầu của mẫu Protostar với Joomla 3.0.0, một số bản sửa lỗi đã được thực hiện và bây giờ mọi gói cập nhật đều chứa tất cả các bản cập nhật kể từ 3.0.0, mẫu Protostar sẽ luôn được cài đặt từ đầu.

Chỉ cần nhớ rằng những gì bạn đã làm là một ví dụ điển hình về lý do tại sao chỉnh sửa các tệp cốt lõi là một ý tưởng tồi. Tôi biết một số người đã sửa đổi nhiều tệp lõi và không có bản sao lưu và do đó khá khó chịu khi họ không thể lấy lại các thay đổi của mình.


2
Ahh chỉ cần loại bỏ câu trả lời của tôi. Rõ ràng việc sao chép phong cách không giống với việc sao chép quảng cáo mẫu sẽ không được bảo vệ chống lại ghi đè. Đã thêm một số ghi chú bên lề từ câu trả lời của tôi cho bạn giống như một phần bổ sung
Lodder

Cảm ơn rất nhiều Fari cho màn hình in. Tôi đã không biết về feaures phụ trợ này. Biết, nhờ có bạn, tôi được bảo vệ khỏi mất các chỉnh sửa của mình!
MagTun

@Lodder, cảm ơn các ghi chú bên lề, tôi sẽ cẩn thận hơn với phần ghi đè ngay bây giờ (đôi khi tôi thực hiện chúng, nhưng không phải tất cả các lần)
MagTun

@Lodder Tôi vừa nghĩ rằng nếu tôi sao chép mẫu protostar thì tôi sẽ mất tất cả các bản sửa lỗi được thực hiện trong Protostar trong phiên bản Joomla mới. Nhưng tôi đoán không có cách nào khác ngoài việc chỉnh sửa tệp lõi / tạo bản sao lưu / cập nhật / chỉnh sửa các tệp lõi với các thay đổi trước đó (một chút rắc rối, nhưng vẫn giữ các bản sửa lỗi được thực hiện) HOẶC sao chép mẫu (đơn giản nhưng tôi mất sửa lỗi). Có lẽ có một cách thứ ba để làm điều đó?
MagTun

2

Cũng có thể sử dụng các lệnh khác nhau của Linux / UNIX để lưu trữ các thay đổi mà bạn đã thực hiện đối với các tệp lõi của mẫu để bạn có thể dễ dàng áp dụng lại chúng vào mẫu khi được cập nhật.

Để tạo một tệp vá có chứa tất cả các thay đổi bạn đã thực hiện đối với các tệp lõi mẫu:

  1. Cài đặt phiên bản mới nhất của mẫu (cài đặt sạch).
  2. Sử dụng thủ tục Sao chép mẫu để sao chép mẫu vào một thư mục mới.
  3. Chỉnh sửa các tệp lõi mẫu trong thư mục mới.
  4. Hãy chắc chắn rằng bạn đang ở trong thư mục j Joomla_root / template.
  5. diff -rupN template_origen / template_new /> template.patch

Để áp dụng tệp vá cho mẫu được cập nhật gần đây:

  1. Cập nhật mẫu với phiên bản mới nhất.
  2. Sử dụng thủ tục Sao chép mẫu để sao chép mẫu vào một thư mục mới.
  3. Hãy chắc chắn rằng bạn đang ở trong thư mục j Joomla_root / template / template_new.
  4. bản vá -p1 <template.patch

Tôi hy vọng rằng điều này sẽ giúp.

Hướng dẫn mười phút để tìm và vá

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.