Help:TemplateData/vi



TemplateData là gì?
TemplateData luôn lưu các thông tin về một template và các thông số của nó, do đó VisualEditor có thể truy hồi và hiển thị nó trong template editor, điều này giúp cho việc chỉnh sửa template được dễ dàng hơn.

Cú pháp của TemplateData cho phép người dùng viết một ít dữ liệu có cấu trúc vào một trang template, hoặc chuyển nó thành trang template (như trên một trang template tài liệu). Do một template có chứa dữ liệu có cấu trúc, nó có thể được hiển thị đúng trong VisualEditor. Nghe có vẻ khá phức tạp, thực tế nó lại rất dễ.



Trình biên tập TemplateData
Có một công cụ cài sẵn cho việc biên tập TemplateData theo một cách dễ dàng hơn.

Để sử dụng trình biên tập TemplateData, vào trang template (hoặc các trang tài tiệu con của nó) và nhấn vào nút "Edit". Khi đó sẽ xuất hiện một nút nói rằng ", nằm bên trên cửa sổ biên tập vừa mở: Click vào nút này để vào công cụ GUI để biên tập TemplateData Trình biên tập này cho phép bạn thêm vào một hàng trên một thông số template và đặt hầu hết các thuộc tính chung. Nếu trang mà bạn biên tập đã chứa một khối TemplateData, thì thông tin đã được biên tập sẽ tự động hiển thị lên khi bạn mở đúng trong trong trình biên tập TemplateData. Trong hộp đầu tiên, bạn có thể thêm hoặc cập nhật một đoạn miêu tả ngắn về template đó trong một đoạn văn bản đơn thuần. Sau đó, bạn có thể sử dụng các nút "các thông số nhập vào" và "các thông số thêm vào" để biên tập tên và các thông số của các tham số mà template sử dụng.

Bạn có thể liệt kê tên của các tham số, bất kì bí danh nào cho nó, nhãn và miêu tả sẽ được hiển thị cho người dùng. Trường bắt buộc duy nhất là Tên (trường đầu tiên của mỗi hàng), là nơi mà bạn phải ghi chính xác, phân biệt chữ hõa chữ thường của các tham số. Trong menu pop-up, bạn có thể chọn loại nội dung mà tham số sẽ nhận được, như là một chuỗi (cho các câu trả lời đơn thuần là văn bản), trang (cho các liên kết tới các trang khác), hoặc ngày tháng. Template sẽ tạo ra một lỗi nếu tham số này để trống, xin hãy đánh dấu nó là "Required" (bắt buộc). Nếu tham số là thường sử dụng hoặc khuyến cáo nên dùng, thì đánh dấu là "Suggested" (khuyến cáo). Nút "Remove" (loại bỏ) sẽ xóa nội dung của tham số từ trong TemplateData.

Khi bạn kết thúc việc chỉnh sửa mỗi tham số, click vào nút "Apply" để chêm vào TemplateData đã định hình sẵn vào hộp biên tập đang mở. Bạn vẫn phải lưu trang này lại, sử dụng nút "Save" bình thường ở phía dưới cửa sổ biên tập.

Lưu ý: Trình biên tập TemplateData sẽ thay TemplateData trong hoặc là trang template howjc trong một trang tài liệu con. Bạn xác định nơi mà TemplateData sẽ được thêm vào bởi cách mở(biên tập) trang mà bạn muốn TemplateData sẽ được đặt vào. Tuy nhiên, nếu nhiều khối TemplateData được đặt vào cùng template, thì chỉ một trong số khối TemplateData sẽ được sử dụng. Nếu đã có một TemplateData trong trang này, thì bạn cần phải biên tập trang mà TemplateData đã được đặt trước đó để tránh việc tạo thành ngẫu nhiêu nhiều khối TemplateData.



Cấu trúc của TemplateData
Cấu trúc của TemplateData dựa trên tiêu chuẩn JSON, và khá là đơn giản. Chú ý rằng toàn bộ các miêu tả trong TemplateData phải ở dạng thuần văn bản (không wikitext, không link, ...).

Điều đầu tiên phải là là đánh lại cặp, bất kể ở đâu trong trang tài liệu con của template, như vầy:

Điều này với phần mềm rằng mọi thứ giữa 2 tag là TemplateData, và phải được tham khảo khi template được sử dụng.



Ví dụ
The descriptions inside TemplateData follow a standard layout; let's say that you have a template called "Commons" for linking to a Commons category about a topic. It takes one mandatory parameter: the name of the category on Commons. The TemplateData would look something like this:

This would display, in the template, like so: {       "description": "A template for linking to a commons category about an article", "params": { "1": {                       "label": "Commons category", "description": "The commons category you want to link to.", "default": "Category:CommonsRoot", "type": "string", "required": true }       } }



Description and parameters
Once you're done, hit "save". If you've made errors, it will not let you save (which is disruptive, but means you can't break anything). Should you run into errors, explain on the feedback page what you were trying to do, and we will be happy to help.

Note that each bit of information is enclosed in quotation marks (except for  and  ), and separated from the next bit by a comma (unless it's the last one).



Parameter aliases
Some templates allow a same parameter to have different names.

For example,  could also be written as   or.

To add this information to TemplateData, you simply need to add the aliases to the parameter's information:



Auto value
You can specify an "autovalue" for a parameter. When users add the template to a page, this value will be added automatically. For example, many clean-up templates need to have the date added; if you specify an autovalue for the template's date parameter, then the date will be filled in automatically.

To add this information to TemplateData, simply add the autovalue to the parameter's information. You will probably want to use  to make the values stick:



Multiple parameters
If you have multiple parameters, just repeat each section (starting from the "1" tag) and fill it out as you see fit. Note that if a template has multiple parameters, you need to separate them with a comma in the templatedata, like so:



Similar parameters
When a template has multiple parameters, sometimes some of them can be of the same kind. In this case, you only need to provide full properties for the first one, and the others can "inherit" their properties from it.



Blank boilerplate
You can copy the blank boilerplate below to add new TemplateData to a template. Only the most common tags are included.



Limitations and questions

 * Missing features — TemplateData is very much an example of tool that was made available with few features, in hope that users would help to guide development of features that they desired. If you'd like to request new features for TemplateData, please let us know.
 * Delays in showing in templates — After adding TemplateData to a template, the metadata should be visible immediately when the template is opened in VisualEditor. However, it is possible that it takes hours before the metadata show. You can force an update by making a null edit to the template page itself (not the documentation subpage). To perform a null edit, open the template page for editing, and save the page without making any change.
 * Current issues — A list of current bugs and feature requests is available in bugzilla.



Các công cụ khác

 * TemplateDataEditor — Một user script khiến quá trình thêm TemplateData dễ dàng hơn. Hiện tại nó có trong tiếng Pháp (bao gồm các bản dịch tiếng Anh, Italia, Nhật, Hàn), và có thể dễ dàng dịch sang các ngôn ngữ khác.
 * TemplateData Wizard — Một công cụ tạo ra TemplateData thông qua một giao diện tương tác.
 * Skeleton TemplateData generator — Một công cụ đọc mã nguồn wikicode của một template, cố gắng tìm tất cả các tham số đã sử dụng và xuất ra một tài liệu sường với các tham số được liệt kê.
 * JSONLint — Một công cụ cho phép bạn hợp lệ hóa JSON tự viết để tìm các lỗi trong cú pháp.
 * Danh sách toàn bộ các template với TemplateData trên wiki này