Help:TemplateData/id

 adalah sebuah cara menyimpan informasi mengenai templat teks wiki beserta parameternya, sehingga penyunting visual dapat mengambil dan menampilkannya dalam penyunting templat mereka, yang akan mempermudah dalam penyuntingan halaman yang menggunakan templat tersebut. Ini juga digunakan di lain tempat seperti skrip, perkakas, dan alat.

Ekstensi DataTemplat terpasang pada seluruh wiki yang dioperasikan oleh Wikimedia Foundation. Jika Anda mempunyai wiki Anda sendiri, maka Anda perlu memasang Extension:TemplateData.

Sintaks DataTemplat memungkinkan pengguna untuk menuliskan sedikit data terstruktur ke halaman templat, atau untuk ditransklusikan ke dalam halaman templat tersebut (seperti pada halaman dokumentasi templat). Setelah templat memiliki data terstruktur ini, ia akan dapat ditampilkan dengan tepat di penyunting visual. Meski ini mungkin terdengar rumit, namun sebenarnya sangat mudah.

Penyunting DataTemplat
Terdapat perkakas bawaan untuk menyunting DataTemplat dengan cara yang lebih sederhana.

Untuk menggunakan penyunting DataTemplat, buka halaman templat tersebut (atau subhalaman dokumentasinya), lalu tekan tombol "Sunting". Anda akan melihat sebuah tombol yang bertuliskan "", tepat di atas jendela penyuntingan yang terbuka:

Klik tombol ini untuk memasuki perkakas antarmuka pengguna grafis untuk menyunting DataTemplat.

The editor allows you to add template parameters and to set the most common attributes. If the page you edited already contains a block of TemplateData, then the information already documented will automatically be shown when you open the correct page in the TemplateData editor. In the first box, you can add or update a short description of the template in plain text. After that, you can use the "Add suggested parameter(s)" and "Add parameter" buttons to document the names and attributes of the parameters that the template uses.

If the template page is protected, you can copy-and-paste the template code in the subpage, use the "Add suggested parameter(s)" button there, copy the TemplateData content, edit back the subpage to get rid of the template code and then paste the TemplateData content. To know where to paste the TemplateData content inside the subpage, you can edit TemplateData without adding anything; you can then replace the and tags and their content by pasting over them.

You can list the name of the parameter, any aliases for it, the label and the description that will display to users. You can also provide an example how to use the parameter. The only required field is Name (the first field in each row), which is where you record the exact, case-sensitive name of the parameter. In the "Type" dropdown menu, you can choose the type of content that the parameter should receive, such as a string (for plain-text answers), page (for links to other pages), or dates. If the template will produce an error if this parameter is left blank, please mark it as "Required". If the parameter is commonly used or recommended, then mark it as "Suggested". The "Remove parameter information" button will delete the parameter's entry from TemplateData.



When you are finished documenting each of the parameters, click "Apply" to insert the pre-formatted TemplateData into the open editing box. You must still save the page, using the normal "Save" button underneath the editing window.

Caution: The TemplateData editor will place TemplateData on either the template page or on a documentation subpage. You determine where the TemplateData will be added by opening (editing) the page that you want the TemplateData to be placed on. However, if multiple TemplateData blocks are placed on the same template, then only one of those TemplateData blocks will be used. If there is already TemplateData on a page, then you need to edit the page where the TemplateData was previously placed to avoid accidentally creating multiple blocks of TemplateData.

Batasan dan tilikan

 * Missing features — TemplateData is an example of a 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 the visual editor. However, it is possible that it will take several hours before the metadata will 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 and without adding any edit summary.
 * Current issues — Daftar kekutu dan permintaan fitur saat ini tersedia di pelacak kekutu Wikimedia.

Lokasi DataTemplat
DataTemplat harus berada pada halaman yang mendeskripsikannya, atau ditransklusikan ke dalamnya. In a template, it shall typically be wrapped into tags. On normal page rendering, it displays autogenerated documentation as shown in #Example.

Struktur DataTemplat
Struktur DataTemplat kurang lebih berlandaskan pada standar JSON. Harap perhatikan, semua deskripsi dalam DataTemplat harus berupa teks biasa (tanpa teks wiki, tanpa tautan, dsb.).

The first thing to do is to type out a pair of  tags, anywhere on the template's documentation subpage, like so:

This tells the software that everything between the two tags is TemplateData, and should be referenced when the template is used.

Contoh
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 }   } }

Deskripsi dan parameter
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).

Format ubahsuaian
When editing custom format strings in the TemplateData editor you can either type  or press the enter key to represent a newline; in either case it will display as   in the entry field.

{| class="wikitable" ! style="width:25%" | Objective ! Format string ! Output each template on its own line
 * + Examples of formats you can use
 * Inline formatting
 * Block formatting
 * No space before the parameter name,
 * Block formatting
 * No space before the parameter name,
 * Block formatting
 * No space before the parameter name,
 * No space before the parameter name,
 * No space before the parameter name,
 * No space before the parameter name,
 * Indent each parameter
 * Align all parameter names to a given length
 * Align all parameter names to a given length
 * Align all parameter names to a given length
 * Align all parameter names to a given length
 * Align all parameter names to a given length
 * Pipe characters at the end of the previous line
 * Inline style with more spaces, must be at start of line
 * Inline style with more spaces, must be at start of line
 * Inline style with more spaces, must be at start of line
 * Inline style with more spaces, must be at start of line
 * Inline style with more spaces, must be at start of line
 * Template at the start of a line, indent-aligned parameters, pipe beforehand
 * dapat ditulis juga menjadi  atau.
 * dapat ditulis juga menjadi  atau.

Untuk menambahkan informasi ini ke DataTemplat, Anda cukup menambahkan alias-alias (aliases) ini ke informasi parameter:

Nilai otomatis
Anda dapat menentukan "nilai otomatis" (autovalue) untuk suatu parameter. Ketika pengguna menambahkan templat tersebut ke dalam halaman, nilai ini akan ditambahkan secara otomatis. Misalnya, banyak templat pemeliharaan harus disertai dengan tanggal; jika Anda menentukan nilai otomatis untuk parameter tanggal pada templat ini, maka tanggal tersebut akan terisi secara otomatis.

Untuk menambahkan informasi ini ke DataTemplat, Anda cukup menambahkan nilai otomatis ini ke informasi parameter. Anda mungkin ingin menggunakan awalan  (subst:) pada nilainya untuk membuatnya ditetapkan:

Parameter berganda
Jika Anda memiliki banyak parameter, cukup ulangi setiap bagiannya (mulai dari tag "1") lalu isikan sesuai kebutuhan. Perhatikan bahwa jika suatu templat memiliki banyak parameter, Anda harus memisahkannya dengan tanda koma pada DataTemplat, seperti ini:

Parameter serupa
Ketika suatu templat memiliki banyak parameter, terkadang beberapa di antaranya memiliki rupa yang mirip. Dalam hal ini, Anda hanya perlu menyediakan properti lengkap pada parameter pertamanya, sedangkan parameter lainnya dapat "mewarisi" (inherits) properti dari parameter pertama tersebut.

Papan cetakan kosong
Anda dapat menyalin papan cetakan kosong di bawah ini untuk menambahkan DataTemplat baru ke dalam templat. Hanya tag yang paling umum yang disertakan.

Perkakas lainnya

 * : Sebuah jendela dialog bilah alat untuk memasukkan teks wiki templat melalui formulir yang dibuat berdasarkan DataTemplat.
 * TemplateData Wizard: Sebuah perkakas yang menghasilkan DataTemplat melalui antarmuka interaktif.
 * Skeleton TemplateData generator: Sebuah perkakas yang membaca kode wiki sumber dari templat, mencoba menemukan semua parameter yang digunakan, dan mengeluarkan dokumen kerangka dengan parameter yang tercantum.
 * JSONLint: Sebuah perkakas yang memungkinkan Anda untuk memvalidasi JSON yang ditulis secara manual untuk membantu menemukan galat dalam sintaks.
 * Daftar seluruh templat dengan DataTemplat di wiki ini
 * Dengan DataTemplat templat dewiki, data templat ditampilkan dalam sebuah kotak, dan templat tersebut ditambahkan ke dalam kategori berisi templat dengan DataTemplat