Cách đúng đắn để thêm chức năng vào một plugin WordPress được xuất bản là gì?


8

Vì vậy, tôi đã tìm khắp nơi để thử và tìm một số loại quy tắc, hoặc ít nhất là một số nguyên tắc lịch sự thông thường, liên quan đến vấn đề này và không thể tìm thấy bất cứ điều gì.

Về cơ bản tôi đang tự hỏi tôi nên làm gì khi tìm thấy một plugin WordPress (miễn phí, được liệt kê trong wordpress.org/plugins/ và bao gồm Giấy phép GNU GP) mà tôi nghĩ có thể có lợi ích nghiêm trọng bằng cách thêm một lượng chức năng nhất định vào nó.

Sau khi thay đổi mã và bao gồm chức năng mới, tôi có:

1) Gửi cho tác giả hiện tại của plugin và hy vọng rằng anh ấy / cô ấy thêm nó vào?

2) Gửi plugin "mới" vào danh sách plugin WordPress dưới dạng một trong những plugin của riêng tôi?

3) Tránh một trong hai lựa chọn này. Chỉ cần thay đổi plugin và chỉ sử dụng nó cho bản thân mình.

4) Làm điều gì khác không được liệt kê ở đây? (Ngụ ý rằng các đề xuất được đưa ra trong phần bình luận.)

Từ góc độ cấp phép, tôi không thể thấy bất kỳ sự cấm đoán nào đối với bất kỳ lựa chọn nào trong số này. Tôi không biết làm thế nào đạo đức để lấy mã, thay đổi mã và sau đó bán nó dưới dạng plugin cao cấp, nhưng dường như điều đó cũng không bị cấm bởi Giấy phép GP.

Thực hành tốt nhất cho tình huống này là gì? Rõ ràng là tôi không muốn xúc phạm tác giả ban đầu của plugin hoặc làm điều gì đó khiến tôi trông tệ trong cộng đồng mã hóa WordPress. Tuy nhiên, trong trường hợp này tôi chống lại, tôi nghĩ rằng plugin sẽ được hưởng lợi nghiêm trọng từ chức năng được thêm này.

Bạn nói gì?

Câu trả lời:


8

Hỏi nhà phát triển trước khi bạn bắt đầu viết mã.

  • Tính năng bạn cần có thể được triển khai, chỉ chưa được công bố.
  • Hoặc API plugin thay đổi trong phiên bản tiếp theo và mã của bạn sẽ không hoạt động nữa.
  • Có lẽ tác giả chỉ có thể thêm một hook, vì vậy bạn có thể triển khai mã của mình dưới dạng plugin riêng biệt mà không thay đổi plugin chính.

Một trong những ý tưởng cốt lõi của nguồn mở là sự hợp tác. Luôn cố gắng cải thiện cùng nhau. Tránh xuất bản một cái gì đó trùng lặp 90% với một plugin hiện có. Bạn đưa ra lựa chọn cho người dùng chỉ khó hơn.

Nhưng nếu bạn phải viết cải tiến đó và nhà phát triển plugin ban đầu chỉ từ chối làm việc với bạn, hãy công khai mã của bạn vì lợi ích của những người dùng khác.

Giấy phép của các plugin được lưu trữ trên wordpress.org sẽ luôn cho phép các thay đổi hoặc addons đó.


Đồng ý với Toscho. Cá nhân tôi luôn mở mã do người dùng gửi và sẽ luôn thêm các móc và bộ lọc bổ sung để người dùng có thể tùy chỉnh mã của tôi từ một plugin khác.
xe đạp vào

Đồng ý với Toscho và @helgatheviking. Nói chuyện cá nhân, tôi duy trì một repo git và tôi YÊU nó khi mọi người đóng góp.
Andrew Bartel

Không đồng ý ở đây với bất kỳ ai, nhưng tùy chọn tốt nhất là kiểm tra mã nguồn để xem liệu bạn có thể sửa đổi chức năng hay không bằng cách sử dụng các hook (hành động / bộ lọc) đã triển khai mà không thay đổi bất kỳ mã gốc nào từ plugin. Tùy chọn tốt thứ hai là thêm yêu cầu kéo trên kho git của plugin, yêu cầu thêm hook (yêu cầu kéo là cách có cấu trúc tốt hơn nhiều để 'liên hệ với tác giả'). Nếu cả hai đều không hoạt động, thì đã đến lúc xem xét các lựa chọn khác.
adelval
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.