LimeSurvey Manual
Menu
Navigation
Main page
Recent changes
Random page
Help
Search
Special pages
Printable version
Recent changes
Help
English
Log in
Actions
Translate
Language statistics
Message group statistics
Export
Special
Export translations
Settings
Group
Activating a survey
Adding answers or subquestions
Administering LimeSurvey
Alternatives to the LimeSurvey import function
Assessments
Backup entire database
Batch deletion
Category:Advanced Question Settings
Category:General Question Options
Category:Question Settings
Central Participant Database
Changing an active survey
Check data integrity
Check question logic
Check survey logic - Advanced
Closing a survey
ComfortUpdate
Copy question
Data encryption
Data entry
Data policy settings
DateFunctions
Default answers
Delete question
Delete survey
Display/Export survey
Edit question
Email bounce tracking system
Email templates
Export question
Export responses
Exporting results
Expression Manager
Expression Manager sample surveys
ExpressionScript - Presentation
ExpressionScript Engine - Quick start guide
ExpressionScript examples
ExpressionScript How-tos
ExpressionScript sample surveys
Extension compatibility
Failed email notifications
First login - your user preferences
General FAQ
General settings
Getting started
Global settings
Google API howto
Home page settings
How to design a good survey (guide)
Import responses
Importing a survey
Installation - LimeSurvey CE
Installation FAQ
Installation of the LimeSurvey XAMPP package
Installation security hints
Installation using a command line interface (CLI)
Installation Version 1.92 or older
Iterate survey
Label sets
LDAP settings
License
LimeSurvey Manual
LimeSurvey PRO vs LimeSurvey CE
LimeSurvey Users
LimeSurvey Video-Tutorial
LimeSurvey-compatible hosting companies
List question groups
List questions
Localization
Major version upgrade
Make your plugin compatible with LS4
Manage user groups
Manage users
Menu configuration
Menu entries configuration
Multilingual survey
New Template System in LS3.x
Not categorized and advanced features
Notifications & data
Optional settings
Overview
Panel integration
Participant settings
Plugin manager
Plugin menu
Plugins - advanced
Presentation
Preview function
Problems & solutions
Publication & access
QS:Allowed filetypes
QS:Alphasort
QS:Answer width
QS:Array filter
QS:Array filter exclude
QS:Array filter style
QS:Assessment value
QS:Autocheck exclusive option
QS:Category separator
QS:Chart type
QS:Choice column width
QS:Choice header
QS:Code filter
QS:Commented checkbox
QS:CSS Class
QS:Date max
QS:Date min
QS:Date time format
QS:Display chart
QS:Display columns
QS:Display map
QS:Display rows
QS:Display type
QS:Dropdown dates
QS:Dropdown dates year max
QS:Dropdown dates year min
QS:Dropdown prefix
QS:Dropdown prepostfix
QS:Dropdown separators
QS:Dropdown size
QS:Dualscale headerA
QS:Dualscale headerB
QS:Em validation q
QS:Em validation q tip
QS:Em validation sq
QS:Em validation sq tip
QS:Encryption
QS:Equals num value
QS:Equation
QS:Exclusive option
QS:Get order previous q
QS:Hidden
QS:Hide tip
QS:Input box size
QS:Input boxes
QS:Input max characters
QS:Label column width
QS:Location city
QS:Location country
QS:Location defaultcoordinates
QS:Location mapheight
QS:Location mapservice
QS:Location mapwidth
QS:Location mapzoom
QS:Location nodefaultfromip
QS:Location postal
QS:Location state
QS:Mandatory
QS:Max answers
QS:Max filesize
QS:Max num value
QS:Max num value n
QS:Max num value sgqa
QS:Max subquestions
QS:Maximum chars
QS:Maximum number of files
QS:Min answers
QS:Min num value
QS:Min num value n
QS:Minimum number of files
QS:Minute step interval
QS:Month display style
QS:Multiflexible checkbox
QS:Multiflexible max
QS:Multiflexible min
QS:Multiflexible step
QS:Num value int only
QS:Numbers only
QS:Other
QS:Other comment mandatory
QS:Other numbers only
QS:Other Position
QS:Other replace text
QS:Page break
QS:Prefix
QS:Preg validation
QS:Printable survey relevance help
QS:Public statistics
QS:Question theme
QS:Random group
QS:Random order
QS:Rank header
QS:Relevance
QS:Remove text or uncheck checkbox
QS:Repeat headers
QS:Reverse
QS:Samechoiceheight
QS:Samelistheight
QS:Scale export
QS:Show comment
QS:Show grand total
QS:Show title
QS:Show totals
QS:Showpopups
QS:Slider accuracy
QS:Slider default
QS:Slider handle shape
QS:Slider handle Unicode shape
QS:Slider initial value
QS:Slider layout
QS:Slider max
QS:Slider middlestart
QS:Slider min
QS:Slider orientation
QS:Slider rating
QS:Slider reset
QS:Slider reverse
QS:Slider separator
QS:Slider showminmax
QS:Subquestion width
QS:Suffix
QS:Text input width
QS:Theme editor - advanced options
QS:Time limit
QS:Time limit action
QS:Time limit countdown message
QS:Time limit disable next
QS:Time limit disable prev
QS:Time limit message
QS:Time limit message delay
QS:Time limit message style
QS:Time limit timer style
QS:Time limit warning
QS:Time limit warning display time
QS:Time limit warning message
QS:Time limit warning style
QS:Use dropdown
QS:Value range allows missing
Question groups - introduction
Question toolbar options
Question type - 5 point choice
Question type - Array
Question type - Array (10 point choice)
Question type - Array (5 point choice)
Question type - Array (Increase-Same-Decrease)
Question type - Array (Numbers)
Question type - Array (Texts)
Question type - Array (Yes-No-Uncertain)
Question type - Array by column
Question type - Array dual scale
Question type - Date
Question type - Equation
Question type - File upload
Question type - Gender
Question type - Huge free text
Question type - Language switch
Question type - List (Dropdown)
Question type - List (Radio)
Question type - List with comment
Question type - Long free text
Question type - Multiple choice
Question type - Multiple choice with comments
Question type - Multiple numerical input
Question type - Multiple short text
Question type - Numerical input
Question type - Ranking
Question type - Short free text
Question type - Text display
Question type - Yes-No
Question types
Questions - introduction
QueXML PDF Export
Quick start guide - LimeSurvey 2.50+
Quick start guide - LimeSurvey 3.0+
Quick-translation
Regenerate question codes
Reorder questions and question groups
Reset conditions
Resources
Responses & statistics
Responses (survey results)
Running a survey safely
Setting conditions
SGQA identifier
Statistics
Survey group permissions
Survey menu
Survey participants
Survey permissions
Survey quotas
Survey settings
Survey settings version 2
Survey structure
Survey toolbar options
Surveys - introduction
Surveys - management
Tab Separated Value survey structure
Template:Deprecated
Template:DeprecatedIn
Template:Example
Template:FeatureChange
Template:FeatureStarting
Template:Hint
Template:NewIn
Template:UpdatedIn
Testing a survey
Text elements
Theme editor
Theme options
Themes
Timing statistics
Tools
Transferring an installation
Translating LimeSurvey
Troubleshooting
TwoFactorAdminLogin
Upgrading from a previous version
URL fields
Using regular expressions
Version change log
Version guide
View saved but not submitted responses
Workarounds
Language
aa - Afar
ab - Abkhazian
abs - Ambonese Malay
ace - Achinese
acm - Iraqi Arabic
ady - Adyghe
ady-cyrl - Adyghe (Cyrillic script)
aeb - Tunisian Arabic
aeb-arab - Tunisian Arabic (Arabic script)
aeb-latn - Tunisian Arabic (Latin script)
af - Afrikaans
aln - Gheg Albanian
alt - Southern Altai
am - Amharic
ami - Amis
an - Aragonese
ang - Old English
ann - Obolo
anp - Angika
ar - Arabic
arc - Aramaic
arn - Mapuche
arq - Algerian Arabic
ary - Moroccan Arabic
arz - Egyptian Arabic
as - Assamese
ase - American Sign Language
ast - Asturian
atj - Atikamekw
av - Avaric
avk - Kotava
awa - Awadhi
ay - Aymara
az - Azerbaijani
azb - South Azerbaijani
ba - Bashkir
ban - Balinese
ban-bali - Balinese (Balinese script)
bar - Bavarian
bbc - Batak Toba
bbc-latn - Batak Toba (Latin script)
bcc - Southern Balochi
bci - Baoulé
bcl - Central Bikol
bdr - West Coast Bajau
be - Belarusian
be-tarask - Belarusian (Taraškievica orthography)
bew - Betawi
bg - Bulgarian
bgn - Western Balochi
bh - Bhojpuri
bho - Bhojpuri
bi - Bislama
bjn - Banjar
blk - Pa'O
bm - Bambara
bn - Bangla
bo - Tibetan
bpy - Bishnupriya
bqi - Bakhtiari
br - Breton
brh - Brahui
bs - Bosnian
btm - Batak Mandailing
bto - Iriga Bicolano
bug - Buginese
bxr - Russia Buriat
ca - Catalan
cbk-zam - Chavacano
cdo - Min Dong Chinese
ce - Chechen
ceb - Cebuano
ch - Chamorro
cho - Choctaw
chr - Cherokee
chy - Cheyenne
ckb - Central Kurdish
co - Corsican
cps - Capiznon
cpx - Pu-Xian Min
cpx-hans - Pu-Xian Min (Simplified Han script)
cpx-hant - Pu-Xian Min (Traditional Han script)
cpx-latn - Pu-Xian Min (Latin script)
cr - Cree
crh - Crimean Tatar
crh-cyrl - Crimean Tatar (Cyrillic script)
crh-latn - Crimean Tatar (Latin script)
crh-ro - Crimean Tatar (Romania)
cs - Czech
csb - Kashubian
cu - Church Slavic
cv - Chuvash
cy - Welsh
da - Danish
dag - Dagbani
de - German
de-at - Austrian German
de-ch - Swiss High German
de-formal - German (formal address)
dga - Dagaare
din - Dinka
diq - Zazaki
dsb - Lower Sorbian
dtp - Central Dusun
dty - Doteli
dv - Divehi
dz - Dzongkha
ee - Ewe
egl - Emilian
el - Greek
eml - Emiliano-Romagnolo
en - English
en-ca - Canadian English
en-gb - British English
eo - Esperanto
es - Spanish
es-419 - Latin American Spanish
es-formal - Spanish (formal address)
et - Estonian
eu - Basque
ext - Extremaduran
fa - Persian
fat - Fanti
ff - Fula
fi - Finnish
fit - Tornedalen Finnish
fj - Fijian
fo - Faroese
fon - Fon
fr - French
frc - Cajun French
frp - Arpitan
frr - Northern Frisian
fur - Friulian
fy - Western Frisian
ga - Irish
gaa - Ga
gag - Gagauz
gan - Gan Chinese
gan-hans - Gan (Simplified)
gan-hant - Gan (Traditional)
gcr - Guianan Creole
gd - Scottish Gaelic
gl - Galician
gld - Nanai
glk - Gilaki
gn - Guarani
gom - Goan Konkani
gom-deva - Goan Konkani (Devanagari script)
gom-latn - Goan Konkani (Latin script)
gor - Gorontalo
got - Gothic
gpe - Ghanaian Pidgin
grc - Ancient Greek
gsw - Alemannic
gu - Gujarati
guc - Wayuu
gur - Frafra
guw - Gun
gv - Manx
ha - Hausa
hak - Hakka Chinese
haw - Hawaiian
he - Hebrew
hi - Hindi
hif - Fiji Hindi
hif-latn - Fiji Hindi (Latin script)
hil - Hiligaynon
hno - Northern Hindko
ho - Hiri Motu
hr - Croatian
hrx - Hunsrik
hsb - Upper Sorbian
hsn - Xiang Chinese
ht - Haitian Creole
hu - Hungarian
hu-formal - Hungarian (formal address)
hy - Armenian
hyw - Western Armenian
hz - Herero
ia - Interlingua
id - Indonesian
ie - Interlingue
ig - Igbo
igl - Igala
ii - Sichuan Yi
ik - Inupiaq
ike-cans - Eastern Canadian (Aboriginal syllabics)
ike-latn - Eastern Canadian (Latin script)
ilo - Iloko
inh - Ingush
io - Ido
is - Icelandic
it - Italian
iu - Inuktitut
ja - Japanese
jam - Jamaican Creole English
jbo - Lojban
jut - Jutish
jv - Javanese
ka - Georgian
kaa - Kara-Kalpak
kab - Kabyle
kai - Karekare
kbd - Kabardian
kbd-cyrl - Kabardian (Cyrillic script)
kbp - Kabiye
kcg - Tyap
kea - Kabuverdianu
kg - Kongo
khw - Khowar
ki - Kikuyu
kiu - Kirmanjki
kj - Kuanyama
kjh - Khakas
kjp - Eastern Pwo
kk - Kazakh
kk-arab - Kazakh (Arabic script)
kk-cn - Kazakh (China)
kk-cyrl - Kazakh (Cyrillic script)
kk-kz - Kazakh (Kazakhstan)
kk-latn - Kazakh (Latin script)
kk-tr - Kazakh (Turkey)
kl - Kalaallisut
km - Khmer
kn - Kannada
ko - Korean
ko-kp - Korean (North Korea)
koi - Komi-Permyak
kr - Kanuri
krc - Karachay-Balkar
kri - Krio
krj - Kinaray-a
krl - Karelian
ks - Kashmiri
ks-arab - Kashmiri (Arabic script)
ks-deva - Kashmiri (Devanagari script)
ksh - Colognian
ksw - S'gaw Karen
ku - Kurdish
ku-arab - Kurdish (Arabic script)
ku-latn - Kurdish (Latin script)
kum - Kumyk
kus - Kʋsaal
kv - Komi
kw - Cornish
ky - Kyrgyz
la - Latin
lad - Ladino
lb - Luxembourgish
lbe - Lak
lez - Lezghian
lfn - Lingua Franca Nova
lg - Ganda
li - Limburgish
lij - Ligurian
liv - Livonian
lki - Laki
lld - Ladin
lmo - Lombard
ln - Lingala
lo - Lao
loz - Lozi
lrc - Northern Luri
lt - Lithuanian
ltg - Latgalian
lus - Mizo
luz - Southern Luri
lv - Latvian
lzh - Literary Chinese
lzz - Laz
mad - Madurese
mag - Magahi
mai - Maithili
map-bms - Basa Banyumasan
mdf - Moksha
mg - Malagasy
mh - Marshallese
mhr - Eastern Mari
mi - Māori
min - Minangkabau
mk - Macedonian
ml - Malayalam
mn - Mongolian
mnc - Manchu
mnc-latn - Manchu (Latin script)
mnc-mong - Manchu (Mongolian script)
mni - Manipuri
mnw - Mon
mo - Moldovan
mos - Mossi
mr - Marathi
mrh - Mara
mrj - Western Mari
ms - Malay
ms-arab - Malay (Jawi script)
mt - Maltese
mus - Muscogee
mwl - Mirandese
my - Burmese
myv - Erzya
mzn - Mazanderani
na - Nauru
nah - Nāhuatl
nan - Min Nan Chinese
nap - Neapolitan
nb - Norwegian Bokmål
nds - Low German
nds-nl - Low Saxon
ne - Nepali
new - Newari
ng - Ndonga
nia - Nias
niu - Niuean
nl - Dutch
nl-informal - Dutch (informal address)
nmz - Nawdm
nn - Norwegian Nynorsk
no - Norwegian
nod - Northern Thai
nog - Nogai
nov - Novial
nqo - N’Ko
nrm - Norman
nso - Northern Sotho
nv - Navajo
ny - Nyanja
nyn - Nyankole
nys - Nyungar
oc - Occitan
ojb - Northwestern Ojibwa
olo - Livvi-Karelian
om - Oromo
or - Odia
os - Ossetic
pa - Punjabi
pag - Pangasinan
pam - Pampanga
pap - Papiamento
pcd - Picard
pcm - Nigerian Pidgin
pdc - Pennsylvania German
pdt - Plautdietsch
pfl - Palatine German
pi - Pali
pih - Norfuk / Pitkern
pl - Polish
pms - Piedmontese
pnb - Western Punjabi
pnt - Pontic
prg - Prussian
ps - Pashto
pt - Portuguese
pt-br - Brazilian Portuguese
pwn - Paiwan
qu - Quechua
qug - Chimborazo Highland Quichua
rgn - Romagnol
rif - Riffian
rki - Arakanese
rm - Romansh
rmc - Carpathian Romani
rmy - Vlax Romani
rn - Rundi
ro - Romanian
roa-tara - Tarantino
rsk - Pannonian Rusyn
ru - Russian
rue - Rusyn
rup - Aromanian
ruq - Megleno-Romanian
ruq-cyrl - Megleno-Romanian (Cyrillic script)
ruq-latn - Megleno-Romanian (Latin script)
rw - Kinyarwanda
ryu - Okinawan
sa - Sanskrit
sah - Yakut
sat - Santali
sc - Sardinian
scn - Sicilian
sco - Scots
sd - Sindhi
sdc - Sassarese Sardinian
sdh - Southern Kurdish
se - Northern Sami
se-fi - Northern Sami (Finland)
se-no - Northern Sami (Norway)
se-se - Northern Sami (Sweden)
sei - Seri
ses - Koyraboro Senni
sg - Sango
sgs - Samogitian
sh - Serbo-Croatian
sh-cyrl - Serbo-Croatian (Cyrillic script)
sh-latn - Serbo-Croatian (Latin script)
shi - Tachelhit
shi-latn - Tachelhit (Latin script)
shi-tfng - Tachelhit (Tifinagh script)
shn - Shan
shy - Shawiya
shy-latn - Shawiya (Latin script)
si - Sinhala
simple - Simple English
sjd - Kildin Sami
sje - Pite Sami
sk - Slovak
skr - Saraiki
skr-arab - Saraiki (Arabic script)
sl - Slovenian
sli - Lower Silesian
sm - Samoan
sma - Southern Sami
smn - Inari Sami
sms - Skolt Sami
sn - Shona
so - Somali
sq - Albanian
sr - Serbian
sr-ec - Serbian (Cyrillic script)
sr-el - Serbian (Latin script)
srn - Sranan Tongo
sro - Campidanese Sardinian
ss - Swati
st - Southern Sotho
stq - Saterland Frisian
sty - Siberian Tatar
su - Sundanese
sv - Swedish
sw - Swahili
syl - Sylheti
szl - Silesian
szy - Sakizaya
ta - Tamil
tay - Tayal
tcy - Tulu
tdd - Tai Nuea
te - Telugu
tet - Tetum
tg - Tajik
tg-cyrl - Tajik (Cyrillic script)
tg-latn - Tajik (Latin script)
th - Thai
ti - Tigrinya
tk - Turkmen
tl - Tagalog
tly - Talysh
tly-cyrl - Talysh (Cyrillic script)
tn - Tswana
to - Tongan
tok - Toki Pona
tpi - Tok Pisin
tr - Turkish
tru - Turoyo
trv - Taroko
ts - Tsonga
tt - Tatar
tt-cyrl - Tatar (Cyrillic script)
tt-latn - Tatar (Latin script)
tum - Tumbuka
tw - Twi
ty - Tahitian
tyv - Tuvinian
tzm - Central Atlas Tamazight
udm - Udmurt
ug - Uyghur
ug-arab - Uyghur (Arabic script)
ug-latn - Uyghur (Latin script)
uk - Ukrainian
ur - Urdu
uz - Uzbek
uz-cyrl - Uzbek (Cyrillic script)
uz-latn - Uzbek (Latin script)
ve - Venda
vec - Venetian
vep - Veps
vi - Vietnamese
vls - West Flemish
vmf - Main-Franconian
vmw - Makhuwa
vo - Volapük
vot - Votic
vro - Võro
wa - Walloon
wal - Wolaytta
war - Waray
wls - Wallisian
wo - Wolof
wuu - Wu Chinese
wuu-hans - Wu Chinese (Simplified)
wuu-hant - Wu Chinese (Traditional)
xal - Kalmyk
xh - Xhosa
xmf - Mingrelian
xsy - Saisiyat
yi - Yiddish
yo - Yoruba
yrl - Nheengatu
yue - Cantonese
yue-hans - Cantonese (Simplified)
yue-hant - Cantonese (Traditional)
za - Zhuang
zea - Zeelandic
zgh - Standard Moroccan Tamazight
zh - Chinese
zh-cn - Chinese (China)
zh-hans - Simplified Chinese
zh-hant - Traditional Chinese
zh-hk - Chinese (Hong Kong)
zh-mo - Chinese (Macau)
zh-my - Chinese (Malaysia)
zh-sg - Chinese (Singapore)
zh-tw - Chinese (Taiwan)
zu - Zulu
Format
Export for off-line translation
Export in native format
Export in CSV format
Fetch
{{DISPLAYTITLE:Trình chỉnh sửa chủ đề}}<languages /> <span id="Introduction"></span> ==Giới thiệu== LimeSurvey có hệ thống phong cách và chủ đề nâng cao cung cấp cho các nhà phát triển một cách hiệu quả để tùy chỉnh giao diện khảo sát. Kể từ LS3, thuật ngữ '''"mẫu"''' đã được thay thế bằng thuật ngữ '''"chủ đề"'''. '''Chủ đề''' cho phép kiểm soát phong cách của các trang khảo sát. Quản trị viên khảo sát có thể chọn một chủ đề mặc định sẽ được sử dụng cho mỗi cuộc khảo sát để cá nhân hóa nó hơn nữa. '''Chủ đề''' đi kèm với các tùy chọn cung cấp cho quản trị viên không cần kỹ năng mã hóa một cách đơn giản để thêm biểu tượng trên trang chào mừng, thay đổi màu nền, chọn phông chữ, v.v. LimeSurvey có 3 chủ đề. Các chủ đề ban đầu này được xác định bởi các thư mục nằm trong thư mục "themes/survey/" cài đặt LimeSurvey. Mỗi chủ đề có thư mục riêng. Trong thư mục chính của một chủ đề, bạn sẽ tìm thấy một tệp cấu hình bằng XML và nhiều thư mục chứa các chế độ xem '''themes (.twig)''', '''cascading style sheet (.css)''', '' 'scripts''', '''hình ảnh''' ('''.jpg''' hoặc '''.png''') và có thể những thứ khác. Kể từ LimeSurvey 2.50, công cụ chủ đề sử dụng [http://getbootstrap.com/docs/3.3/ Bootstrap 3] làm khung CSS. Vì Bootstrap 3 là một framework tiêu chuẩn nên các nhà phát triển sẽ tìm thấy rất nhiều tài liệu, hướng dẫn và chủ đề diễn đàn về nó trên internet. Kể từ LimeSurvey 3, công cụ chủ đề sử dụng [https://twig.symfony.com Twig] nên nhà phát triển chủ đề có thể thay đổi logic của kết xuất khảo sát một cách an toàn và dễ dàng. Twig thay thế hệ thống từ khóa thay thế cũ đã được sử dụng trong các phiên bản trước. Logic được sử dụng để tạo HTML của từ khóa hiện có sẵn trong chế độ xem của chủ đề. Đoạn trích từ Chủ đề Vanilla: <syntaxhighlight lang="twig"> <div class="{{ aSurveyInfo.class.answercontainer }} col-xs-12" {{ aSurveyInfo.attr.answercontainer }}> {# LƯU Ý: Nếu bạn muốn tùy chỉnh kết xuất câu hỏi, hãy sử dụng chủ đề câu hỏi #} {{ aQuestion.answer | thô }} </div> </syntaxhighlight> Chủ đề, là mã HTML và Twig, có xu hướng xác định vị trí và loại văn bản sẽ được hiển thị cũng như các đặc điểm cấu trúc tương tự của trang. Họ thường tham khảo hoặc bao gồm các tập tin khác. Hầu hết trong số chúng đều tham chiếu đến tệp biểu định kiểu xếp tầng (CSS) phổ biến xác định kiểu phông chữ, màu sắc, kích thước, nền và các tham số tương tự chung cho tất cả các trang trong khảo sát. Các biểu định kiểu tham chiếu các tham số HTML '''class''' được liên kết với các loại đối tượng khác nhau trong mã HTML. Điều này cho phép biểu định kiểu xác định cách hiển thị từng loại văn bản hoặc các đối tượng khác có thể xuất hiện ở nhiều nơi. Có các lớp duy nhất cho từng loại câu hỏi trong LimeSurvey và do đó cung cấp khả năng kiểm soát chi tiết về hình thức của từng loại câu hỏi. Các tệp hình ảnh, như logo hoặc các hàm tạo thanh tiến trình đặc biệt, cũng có thể được tham chiếu trong tệp Chủ đề. Cuối cùng, các từ khóa đặc biệt trong dấu ngoặc nhọn được thay thế bằng văn bản được xác định trong khảo sát cho từng người dịch ngôn ngữ (ví dụ: 'Tiêu đề khảo sát' hoặc 'Văn bản câu hỏi' cho từng ngôn ngữ được xác định). Nếu bạn tạo một chủ đề tùy chỉnh mới, vui lòng cân nhắc việc đóng góp chủ đề đó lại cho cộng đồng LimeSurvey và cung cấp chủ đề đó cho những người khác. Với sự giúp đỡ của bạn, chúng tôi có thể phát triển kho chủ đề, khảo sát và các tiện ích bổ sung khác để làm cho LimeSurvey trở nên tốt hơn nữa! Xem [https://www.limesurvey.org/index.php?option=com_sobipro&sid=55:Templates&Itemid=729 kho lưu trữ mẫu LimeSurvey] của chúng tôi, nơi bạn có thể chia sẻ các mẫu của mình. <span id="Creating_a_new_theme"></span> ==Tạo chủ đề mới== Để có thể tạo chủ đề mới (hoặc chỉnh sửa chủ đề hiện có), bạn cần [[Quản lý người dùng#Đặt quyền chung cho người dùng|Quyền người dùng chỉnh sửa mẫu]] trong LimeSurvey cũng như quyền thao tác các tệp trong hệ điều hành cơ bản hệ thống lưu trữ cài đặt LimeSurvey của bạn. <div class="simplebox"><span style='color:red'>'''Lưu ý cảnh báo:'''</span> Nếu bạn thay đổi chủ đề, bạn cũng có thể ảnh hưởng đến tất cả các khảo sát hiện có từ quá trình cài đặt LimeSurvey của mình. Chủ đề là một tính năng nâng cao đòi hỏi kinh nghiệm và kiến thức về HTML.</div> Cách ưa thích để tạo chủ đề mới là thông qua '''Trình chỉnh sửa chủ đề''' (xem bên dưới), nằm trong '''Cấu hình''' trên thanh công cụ trên cùng. Một số người dùng thích làm việc trực tiếp với các tệp chủ đề để họ có thể sử dụng trình soạn thảo văn bản yêu thích của mình thay vì giao diện web. Trong trường hợp này, trước tiên bạn vẫn sử dụng Trình chỉnh sửa chủ đề để tạo chủ đề mới. Điều này sẽ tạo một chủ đề cơ sở mới với tất cả các tệp bạn cần trong thư mục ''LimeSurvey_web_root/upload/themes/survey/your_new_template''. Từ đó, bạn có thể sử dụng trình soạn thảo văn bản của mình để điều chỉnh các tệp mẫu theo cách thủ công. <div class="simplebox">'''Lưu ý về quyền:''' trên hệ thống unix/linux, các tệp chủ đề này sẽ thuộc sở hữu của nhóm và người dùng nơi máy chủ web đang chạy (có thể là "www" đối với một số hệ thống). Vì vậy, hãy đảm bảo bạn có quyền thích hợp để chỉnh sửa các tệp này. Khi bạn lưu chúng, hãy đảm bảo rằng chúng không thay đổi quyền sở hữu! Bằng cách này, bạn vẫn có thể sử dụng giao diện Chỉnh sửa chủ đề web nếu cần.</div><br /> Một số yếu tố 'công khai' của LimeSurvey có thể được điều chỉnh theo một loạt chủ đề. Phần tiếp theo sẽ giải thích rất ngắn gọn về các mẫu này. {{Lưu ý|Tệp chủ đề là một tính năng phức tạp. Ngoài HTML, bạn cũng nên làm quen với CSS, Twig và JavaScript.}} <span id="The_LimeSurvey_theme_editor"></span> =Trình chỉnh sửa chủ đề LimeSurvey= '''Trình chỉnh sửa chủ đề''': '''Cấu hình''' > '''Chủ đề'''> '''Trình chỉnh sửa chủ đề''' Trình chỉnh sửa chủ đề chỉ khả dụng cho người dùng [[Quản lý người dùng#Set quyền chung cho người dùng|với quyền Mẫu]] và cho quản trị viên cấp cao. {{Cảnh báo|title=Chú ý|text=Một chủ đề không được xây dựng chính xác có thể khiến một cuộc khảo sát (sử dụng mẫu tương ứng) không thể hoạt động được. }} Trình chỉnh sửa chủ đề LimeSurvey cho phép bạn chỉnh sửa nội dung chủ đề của mình trực tuyến. Để khởi động Trình chỉnh sửa chủ đề: nhấp vào '''Chủ đề''' trong menu '''Cấu hình''', sau đó nhấp vào nút '''Trình chỉnh sửa chủ đề''' bên cạnh chủ đề bạn muốn chỉnh sửa hoặc mở rộng. [[File:Themes menu.png]] [[File:Theme editor Button.png|''Nút truy cập trình chỉnh sửa chủ đề cho chủ đề Bootswatch'']] Trang soạn thảo mẫu cho phép bạn chọn mẫu bạn muốn chỉnh sửa/xem. [[File:Template-editor-2013-7-10_11_38_16.png|center]] Lựa chọn tiếp theo đã khả thi: *'''Tạo''': Cho phép bạn tạo mẫu mới. Để không phải bắt đầu lại từ đầu, mẫu 'mặc định' đã được sao chép. *'''Import''': Cho phép bạn nhập mẫu từ tệp ZIP. *'''Export''' : Cho phép bạn xuất mẫu hiện tại sang tệp ZIP. *'''Copy''': Cho phép bạn tạo mẫu mới bằng cách sao chép mẫu hiện tại. *'''Rename''': Cho phép bạn thay đổi tên của mẫu. Nó thường được sử dụng sau khi sao chép hoặc nhập một mẫu. *'''Template''': Một danh sách thả xuống hiển thị tất cả các mẫu có sẵn nằm trong bản cài đặt LimeSurvey của bạn. *'''Màn hình''': Danh sách thả xuống cho phép bạn chọn trang khảo sát cụ thể nào của mẫu mà bạn muốn xem. *'''Quay lại bảng quản trị'''. <span id="Import/Export/Copy_a_template"></span> ===Nhập/Xuất/Sao chép mẫu=== Khi bạn '' xuất '' một mẫu, một kho lưu trữ tệp ZIP có tất cả các tệp mẫu, bạn sẽ được tạo (tệp .pstpl, hình ảnh, tệp css, ...). Bạn có thể '''nhập''' tệp zip đã xuất vào bản cài đặt LimeSurvey khác bằng cách sử dụng tính năng nhập hoặc bạn có thể sao chép thủ công tệp lưu trữ vào bản cài đặt LimeSurvey khác và giải nén nó vào [[Theme editor#Template files location|template tương ứng thư mục ở đó]]. Tuy nhiên, tốt nhất bạn nên sử dụng chức năng nhập/xuất/sao chép mẫu LimeSurvey trong trình chỉnh sửa mẫu. ===Cấu trúc trang / Sử dụng mẫu=== *'''Trang chào mừng:''' startpage.pstpl, Welcome.pstpl, Privacy.pstpl, navigator.pstpl, endpage.pstpl *'' 'Các trang câu hỏi:''' startpage.pstpl, Survey.pstpl, startgroup.pstpl, groupdescription.pstpl, question.pstpl, endgroup.pstpl, endpage.pstpl *'''Trang cuối cùng:''' trang bắt đầu .pstpl, đánh giá.pstpl, đã hoàn thành.pstpl, endpage.pstpl <span id="Template_files"></span> ===Tệp mẫu=== Các tệp mẫu sau được sử dụng để tạo khảo sát công khai của bạn và phải tồn tại trong bất kỳ thư mục mẫu mới nào mà bạn tạo: *'''startpage.pstpl:''' Tạo phần đầu của mỗi trang html. Nó bắt đầu ở "<head> " thẻ và không được chứa thẻ "<html> " thẻ. 'Phần đầu' này của một trang html chuẩn được viết bằng các tập lệnh. Hãy đảm bảo rằng các tệp startpage.pstpl của bạn chứa một<body> nhãn. Mặc dù nhiều trình duyệt không yêu cầu tuân thủ nghiêm ngặt các tiêu chuẩn HTML W3, tập lệnh LimeSurvey cần tìm thẻ để chạy các phần tử javascript nhất định. Việc thấy nhiều “từ khóa” được sử dụng trong tệp startpage.pstpl là điều không phổ biến. Tuy nhiên, bạn có thể muốn đặt {SURVEYNAME} vào tiêu đề. Tệp startpage.pstpl có thể chứa mã kết thúc bằng tệp endpage.pstpl tương ứng. Ví dụ: bạn có thể bắt đầu một bảng trong tệp này và đóng bảng trong tệp endpage.pstpl. Các tệp startpage.pstpl và endpage.pstpl bao quanh mọi trang có thể được LimeSurvey sử dụng. *'''survey.pstpl:''' Mẫu này là mẫu thứ hai được sử dụng trên hầu hết các trang và cung cấp khoảng trống để đặt tên khảo sát và mô tả. Bản mẫu này không có mẫu 'đóng' tương ứng và sau đó bạn nên đóng tất cả các thẻ được mở trong tệp mẫu này (tức là: không để bảng mở ở đây vì không còn nơi nào khác để đóng nó). *' ''welcome.pstpl:''' Mẫu này chỉ được sử dụng trong màn hình chào mừng (cũng có trên trang chính dành cho các cuộc khảo sát 'tất cả trong một'). Bạn có thể sử dụng tính năng này để in văn bản chào mừng và các thông tin khác cần được cung cấp trong phần giới thiệu. Giống như tệp 'survey.pstpl', không có mẫu 'đóng' tương ứng, vì vậy tất cả các thẻ được mở trong tệp mẫu này cũng phải được đóng lại. *'''startgroup.pstpl:''' Bản mẫu này có thể cung cấp một bản 'tóm tắt' dành cho các câu hỏi trong một nhóm. Nó có một mẫu 'endgroup.pstpl' phù hợp có thể được sử dụng để đóng bất kỳ thẻ đã mở nào trong tệp này, vì vậy bạn có thể mở một bảng trong này. *'''groupdescription.pstpl:''' Tệp mẫu này là được sử dụng để hiển thị mô tả của một nhóm. Xin lưu ý rằng trong cài đặt khảo sát (truy cập ''Cài đặt trình bày và điều hướng'' bằng cách nhấp vào tab '''Trình bày'''), bạn có thể đặt xem mô tả nhóm có được hiển thị hay không. Nếu không, thì tệp này hoàn toàn không được đưa vào. *'''question.pstpl:''' Tệp này chứa các phần văn bản câu hỏi, câu trả lời và trợ giúp trong khảo sát của bạn. Trong các khảo sát "theo nhóm" và "tất cả trong một", mẫu này được lặp đi lặp lại với mỗi câu hỏi. Không có tệp đóng tương ứng cho tệp này và tất cả các thẻ phải được đóng. *'''question_start.pstpl:''' Tệp này chứa các thành phần riêng lẻ được tìm thấy ở đầu câu hỏi. Nó được bao gồm trong 'question.pstpl' thông qua từ khóa {QUESTION}. Nó nhằm mục đích cho phép người thiết kế mẫu kiểm soát nhiều hơn bố cục của câu hỏi. Mẫu này nằm ngoài hệ thống tạo khuôn mẫu thông thường và '''đã được thay thế (kể từ LimeSurvey 1.87)'''. Tất cả từ khóa từ mẫu này hiện có sẵn trực tiếp trong question.pstpl. *'''completed.pstpl:''' Trang này được hiển thị dưới dạng trang cuối cùng khi các câu trả lời khảo sát đã được lưu và cuộc khảo sát kết thúc. Nó có thể được sử dụng để hiển thị "liên kết chuyển tiếp" như được đặt trong thiết lập khảo sát. *'''endgroup.pstpl:''' Tệp này đóng nhóm và có thể được sử dụng để đóng bất kỳ thẻ nào được mở trong startgroup.pstpl file *'''navigator.pstpl:''' Tệp này chứa các nút điều hướng qua khảo sát, "tiếp theo", "trước", "cuối cùng", "gửi", "lưu cho đến nay" và liên kết "xóa tất cả". Nó được sử dụng trong tất cả các trang ngoại trừ trang đã hoàn thành. *'''printanswers.pstpl:''' Tệp này có trình bao bọc HTML cần thiết cho phiên bản in của cuộc khảo sát. *'''print_group.pstpl :''' Tệp này giống với startgroup.pstpl và endgroup.pstpl, nhưng dành cho phiên bản in của khảo sát. *'''print_question.pstpl:''' Tệp này giống với question.pstpl , nhưng dành cho phiên bản in của khảo sát. *'''print_survey.pstpl:''' Tệp này giống với Survey.pstpl, nhưng dành cho phiên bản in của khảo sát. <span id="CSS_and_Javascript"></span> === CSS và Javascript=== Hai tệp luôn được sử dụng trong một mẫu là template.css (cho CSS) và template.js (cho Javascript). *'''{TEMPLATECSS}:''' Thêm dòng cho css mặc định, template.css, và template-rtl.css cho ngôn ngữ rtl. *'''{TEMPLATEJS}:''' Thêm dòng cho tệp javascript mặc định, template.js và tất cả các tệp js cần thiết cho LimeSurvey. === Sử dụng Bootstrap=== LimeSurvey đã nhúng Bootstrap 3, vì vậy bạn có thể tạo kiểu cho tất cả các mẫu của mình bằng các lớp Bootstrap được ghi chép đầy đủ. Để biết thêm thông tin, vui lòng tham khảo [https://getbootstrap.com Bootstrap tài liệu]. Plugin [https://github.com/flatlogic/awesome-bootstrap-checkbox Awesome-Bootstrap-Checkbox] cũng được bao gồm. Với nó, bạn có thể sử dụng các lớp màu Bootstrap điển hình (thông tin, cảnh báo, nguy hiểm, v.v.) cũng với hậu tố "-checkbox" hoặc "-radio", mặc dù tạo kiểu cho các hộp kiểm và radio tùy thích. <span id="Replacing_default_CSS_or_Javascript"></span> ==== Thay thế CSS hoặc Javascript mặc định==== Một số câu hỏi sử dụng các tệp cụ thể cho Javascript hoặc CSS. Nếu bạn cần thay thế một chức năng, hãy sử dụng hệ thống xếp tầng. Đối với hàm javascript, hàm đọc cuối cùng là hàm được sử dụng. <span id="Other_template_files"></span> ===Các tệp mẫu khác=== '''privacy.pstpl''', '''invitationemail.pstpl''', '''reminderemail.pstpl''' và '''confirmationemail.pstpl''' không còn được LimeSurvey sử dụng nữa và các giá trị mặc định là thay vào đó hãy đặt trong các tệp ngôn ngữ áp dụng. Giờ đây, các email có thể được chỉnh sửa trên cơ sở khảo sát theo khảo sát. <span id="Standard_pages"></span> ===Trang chuẩn=== Có mười trang tiêu chuẩn mà người tham gia khảo sát có thể nhìn thấy trong quá trình sử dụng hoặc truy cập ứng dụng LimeSurvey. Mỗi tệp được tạo từ một số tệp '''Mẫu''' phổ biến từ '''Mẫu''' được chỉ định trong cài đặt khảo sát. Bảng bên dưới cho biết tệp mẫu nào được sử dụng để xây dựng từng trang này. {| class="wikitable" ! '''Trang khảo sát/'''<br /> '''Tệp mẫu'''!!Khảo sát<br /> Danh sách!!Chào mừng!!Câu hỏi!!Đã hoàn thành!!Xóa tất cả!!Đăng ký!!Tải!!Lưu!!In<br /> Câu trả lời!!In<br /> Survey |- |SurveyList||align="center" | [[File:check.gif]]|| || || || || || || || || |- |Chào mừng|| ||align="trung tâm" | [[File:check.gif]]|| || || || || || || || |- |Quyền riêng tư|| ||align="trung tâm" | [[File:check.gif]]|| || || || || || || || |- |Navigator|| ||align="trung tâm" | [[File:check.gif]]||align="center" | [[File:check.gif]]|| || || || || || || |- |Khảo sát|| || ||align="trung tâm" | [[File:check.gif]]|| || ||align="trung tâm" | [[File:check.gif]]|| || || || |- |StartGroup|| || ||align="trung tâm" | [[File:check.gif]]|| || || || || || || |- |GroupDescription|| || ||align="trung tâm" | [[File:check.gif]]|| || || || || || || |- |Câu hỏi <span style='color:red'>'''*'''</span> || || ||align="trung tâm" | [[File:check.gif]]|| || || || || || || |- |EndGroup|| || ||align="trung tâm" | [[File:check.gif]]|| || || || || || || |- |Đánh giá|| || || ||align="trung tâm" | [[File:check.gif]]|| || || || || || |- |Đã hoàn thành|| || || ||align="trung tâm" | [[File:check.gif]]|| || || || || || |- |ClearAll|| || || || ||align="trung tâm" | [[File:check.gif]]|| || || || || |- |Đăng ký|| || || || || ||align="trung tâm" | [[File:check.gif]]|| || || || |- |Tải|| || || || || || ||align="trung tâm" | [[File:check.gif]]|| || || |- |Lưu|| || || || || || || ||align="trung tâm" | [[File:check.gif]]|| || |- |PrintAnswers|| || || || || || || || ||align="trung tâm" | [[File:check.gif]]|| |- |In khảo sát || || || || || || || || || ||align="trung tâm" | [[File:check.gif]] |- |Nhóm in || || || || || || || || || ||align="trung tâm" | [[File:check.gif]] |- |In câu hỏi || || || || || || || || || ||align="trung tâm" | [[File:check.gif]] |- |StartPage<br /> Trang cuối<br /> Bản mẫu.css||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]||align="center" | [[File:check.gif]]|| |} <span style='color:red'>'''*'''</span> LƯU Ý: Trong phiên bản 1.90+, phiên bản này thay thế question.pstpl VÀ question_start.pstpl. Nếu bạn đang sử dụng mẫu tùy chỉnh cũ, bạn cần thêm dòng sau vào đầu question.pstpl: <syntaxhighlight lang="php"><div {QUESTION_ESSENTIALS} class="{QUESTION_CLASS}{QUESTION_MAN_CLASS}{QUESTION_INPUT_ERROR_CLASS}"></syntaxhighlight> Và sau đó thêm thẻ đóng tương ứng vào cuối question.pstpl:<syntaxhighlight lang="php"></div></syntaxhighlight> <span style='color:red'>'''*'''</span> LƯU Ý: Trong phiên bản 1.91 trở về trước, các tệp js LimeSurvey không được đưa vào mẫu. Trong phiên bản 2, '''bạn phải sử dụng {TEMPLATEJS} trong một trong các tệp mẫu của mình''' để thêm liên kết vào tệp js. Bạn có thể thêm nó vào startpage.pstpl hoặc endpage.pstpl. Bạn có thể xóa dòng {TEMPLATEURL}/template.js và thay thế bằng {TEMPLATEJS} để cập nhật mẫu cá nhân. <span id="The_file_control_section"></span> ===Phần kiểm soát tập tin=== Trong cửa sổ "kiểm soát tệp" ở bên trái, bạn có thể nhấp vào một trong các tệp mẫu được sử dụng để biên dịch trang. Bạn có thể xem các tệp ''Phần màn hình'', JavaScript và CSS. Mã HTML cho tệp đó sau đó sẽ xuất hiện trong cửa sổ "Đang chỉnh sửa" ở giữa. Nếu mẫu có thể chỉnh sửa được (được xác định bởi quyền của thư mục), thì bạn có thể thực hiện bất kỳ thay đổi nào và lưu chúng. <center>[[File:File Control Software.png|center]]</center> Cửa sổ "Tệp khác" hiển thị danh sách tất cả các tệp khác từ thư mục mẫu. Bạn có thể sử dụng phía bên phải để '''tải lên và chọn các tệp hình ảnh (ảnh, logo, ...) hoặc các tệp khác cần thiết để tạo mẫu của bạn'''. Thay vì sử dụng liên kết cho mỗi ảnh, hãy sử dụng chuỗi trường {TEMPLATEURL}. Vì vậy, thay vì: <syntaxhighlight lang="html4strict">img src='/limesurvey/templates/yourtemplate/files/mypicture.jpg'</syntaxhighlight> Bạn có thể sử dụng {{NewIn|2.50}}: <syntaxhighlight lang="html4strict"> img src='{TEMPLATEURL}files/mypicture.jpg'</syntaxhighlight> Trong các phiên bản LimeSurvey trước 2.50, hãy sử dụng: <syntaxhighlight lang="html4strict"> img src='{TEMPLATEURL}mypicture.jpg'</syntaxhighlight> Một "mẫu" của trang mẫu bạn đang chỉnh sửa sẽ hiển thị ở cuối màn hình. Không có cách nào để xóa mẫu khỏi trình chỉnh sửa mẫu. Điều này phải được thực hiện bằng cách truy cập vào thư mục cơ bản và xóa các tệp từ đó theo cách thủ công. Bạn cũng có thể chọn các độ phân giải màn hình khác nhau để đánh giá tốt hơn cảm giác và giao diện của mẫu. <div class="simplebox">'''Lưu ý:''' Không thể chỉnh sửa các mẫu đã gửi bằng trình chỉnh sửa mẫu. Nếu bạn muốn sửa đổi chúng, trước tiên hãy tạo một bản sao và chỉnh sửa bản sao đó.</div> <span id="Template_files_location"></span> ===Vị trí tệp mẫu=== LimeSurvey lưu trữ từng mẫu 'tiêu chuẩn' trong thư mục con riêng biệt của chúng trong thư mục ''/templates'' được lưu giữ trong thư mục công khai cùng với các tệp công khai LimeSurvey khác. Các mẫu người dùng tùy chỉnh được lưu trữ trong thư mục ''/upload/templates''. '''LUÔN''' phải là thư mục "mặc định" trong thư mục mẫu. Mẫu này được sử dụng theo mặc định và làm dự phòng nếu thư mục mẫu không tồn tại hoặc không thể tìm thấy. Nó được cài đặt theo mặc định. Bạn có thể sử dụng bất kỳ tệp hình ảnh nào mà bạn tải lên khu vực quản lý mẫu với sự trợ giúp của cú pháp sau: <syntaxhighlight lang="php">{TEMPLATEURL}tên tệp.xyz</syntaxhighlight> <span id="Styling_questions_with_CSS"></span> ==Tạo kiểu câu hỏi bằng CSS== Việc tạo kiểu câu hỏi trong CSS đã trở nên dễ dàng hơn nhiều. Mỗi loại câu hỏi bây giờ có một lớp duy nhất. Các câu hỏi bắt buộc có thêm một lớp bắt buộc. Ví dụ: đối với câu hỏi không bắt buộc: <syntaxhighlight lang="html4strict"><div id="question5" class="gender"> ... </div></syntaxhighlight> và nếu câu hỏi là bắt buộc: <syntaxhighlight lang="html4strict"><div id="question5" class="gender mandatory"> ... </div></syntaxhighlight> và nếu câu hỏi là bắt buộc nhưng người dùng không trả lời hoặc nếu câu hỏi đó được xác thực: <syntaxhighlight lang="html4strict"><div id="question5" class="gender mandatory input-error"> ... </div></syntaxhighlight> và nếu câu hỏi đã được áp dụng xác thực nhưng người dùng chưa trả lời đúng: <syntaxhighlight lang="html4strict"><div id="question6" class="text-short input-error"> ... </div></syntaxhighlight> <span id="Global_classes_for_question_part"></span> ==Các lớp học chung cho phần câu hỏi== Các lớp này được sử dụng cho từng loại câu hỏi. Một số loại câu hỏi chỉ sử dụng một hoặc hai lớp, trong khi những loại khác có thể sử dụng nhiều lớp hơn. {| class="wikitable alternance" |+ Các lớp toàn cầu |- ! phạm vi="col" | Tên lớp ! phạm vi="col" | Phần ! phạm vi="col" | Loại câu hỏi ! phạm vi="col" | Ví dụ ! phạm vi="col" | Lưu ý |- ! phạm vi="hàng" | .câu hỏi {{ObsoleteIn|3.0}} | Tất cả khối câu hỏi | Tất cả loại câu hỏi |<p class="question">, <ul class="question">, <table class="question"> | |- ! phạm vi="hàng" | .ls-câu trả lời {{NewIn|3.0}} | Tất cả khối câu hỏi | Tất cả loại câu hỏi |<div class="ls-answers ">, <ul class="ls-answers ">, <table class="ls-answers" | |- ! phạm vi="hàng" | .subquestions-list | Danh sách câu hỏi phụ | Câu hỏi trắc nghiệm, kiểu câu hỏi mảng | <ul class="subquestions-list">, <table class="subquestions-list"> | .questions-list cũng được sử dụng |- ! phạm vi="hàng" | .answers-list | Danh sách câu trả lời | Câu hỏi một lựa chọn, câu hỏi mảng, câu hỏi văn bản nhiều đầu vào | <ul class="answers-list">, <table class="answers-list"> | |- ! phạm vi="hàng" | .answer-item | Phần trả lời: một câu trả lời | Câu hỏi một lựa chọn, câu hỏi mảng, câu hỏi văn bản nhiều đầu vào | <li class="answer-item">, <td class="answer-item"> | |- ! phạm vi="hàng" | .noanswer-item | Phần trả lời là không có câu trả lời | Câu hỏi một lựa chọn, kiểu câu hỏi mảng | <li class="noanswer-item">, <td class="noanswer-item"> | Không có câu trả lời nào cũng là một câu trả lời, sau đó có hai lớp noanswer-item và Answer-item |- ! phạm vi="hàng" | .question-item | Phần câu hỏi: một câu hỏi | Câu hỏi đa văn bản, kiểu câu hỏi mảng | <li class="question-item">, <tr class="question-item"> | Một số câu trả lời cũng là câu hỏi. Sau đó chúng ta có rất nhiều class="question-item Answer-item" |- ! phạm vi="hàng" | .button-list | Danh sách nút | Có không và câu hỏi về giới tính | <ul class="button-list" | |- ! phạm vi="hàng" | .button-item | Phần trả lời bằng một nút bấm | Có không và câu hỏi về giới tính | <li class="button-item"> | |- ! phạm vi="hàng" | .checkbox-list | Danh sách hộp kiểm | Câu hỏi trắc nghiệm, số mảng (hộp kiểm) loại câu hỏi | <ul class="checkbox-list">, <tr class="checkbox-list"> | Một số loại câu hỏi sử dụng lớp nhiều danh sách, như hộp kiểm có nhận xét: class="checkbox-list text-list" |- ! phạm vi="hàng" | .checkbox-array {{NewIn|3.0}} | Một mảng hộp kiểm | Mảng (số) với tùy chọn hộp kiểm | <table class="checkbox-list"> | |- ! phạm vi="hàng" | .checkbox-item | Phần trả lời có dấu tích | Câu hỏi trắc nghiệm, số mảng (hộp kiểm) loại câu hỏi | <li class="checkbox-item">, <td class="checkbox-item"> | |- ! phạm vi="hàng" | .radio-list | Danh sách các mục radio | Câu hỏi một lựa chọn, loại câu hỏi mảng (mỗi hàng) | <ul class="radio-list">, <tr class="radio-list"> | |- ! phạm vi="hàng" | .radio-array {{NewIn|3.0}} | Một loạt các mục radio | Kiểu câu hỏi mảng | <table class="radio-array"> | |- ! phạm vi="hàng" | .radio-item | Phần trả lời có radio | Câu hỏi một lựa chọn, kiểu câu hỏi mảng | <li class="radio-item">,<td class="radio-item"> | |- ! phạm vi="hàng" | .text-list | Danh sách văn bản được nhập | Loại câu hỏi đa văn bản, mảng văn bản | <ul class="text-list">, <tr class="text-list"> | |- ! phạm vi="hàng" | .text-item | Phần trả lời của kiểu nhập văn bản | Loại câu hỏi đa văn bản, mảng văn bản | <li class="text-item">,<td class="text-item"> | |- ! phạm vi="hàng" | .danh sách số | Danh sách nhập văn bản chỉ có câu trả lời bằng số | Kiểu câu hỏi nhiều số, mảng số | <ul class="text-list num-list">, <tr class="text-list num-list"> | |- ! phạm vi="hàng" | .danh sách số | Danh sách nhập văn bản chỉ có câu trả lời bằng số (mỗi hàng) | Kiểu câu hỏi nhiều số, mảng số | <ul class="text-list num-list">, <tr class="text-list num-list"> | |- ! phạm vi="hàng" | .number-mảng {{NewIn|3.0}} | Phần trả lời của một số đầu vào | Mảng số | <table class="number-array"> | |- ! phạm vi="hàng" | .select-list {{ObsoleteIn|2.50}} | Danh sách select | Số mảng, mảng tỷ lệ kép (chọn) | <table class="select-list"> | |- ! phạm vi="hàng" | .dropdown-list {{NewIn|2.50}} | Danh sách select | Số mảng, Mảng tỷ lệ kép (chọn) (mỗi hàng) | <table class="dropdown-list"> | |- ! phạm vi="hàng" | .dropdown-array {{NewIn|3.0}} | Một mảng thả xuống | Số mảng, mảng tỷ lệ kép (chọn) | <table class="dropdown-array"> | |- ! phạm vi="hàng" | .select-item {{ObsoleteIn|2.50}} | Phần trả lời của một select | Số mảng, mảng tỷ lệ kép (chọn), lựa chọn duy nhất với select | <p class="select-item">, <td class="select-item"> | |- ! phạm vi="hàng" | .dropdown-item {{NewIn|2.50}} | Phần trả lời của một select | Số mảng, mảng tỷ lệ kép (chọn), lựa chọn duy nhất với select | <p class="dropdown-item">, <td class="dropdown-item"> | |- ! phạm vi="hàng" | .hide {{ObsoleteIn|3.0}} | Được sử dụng cho khả năng truy cập: ẩn bằng css nhưng được đọc bằng trình đọc màn hình, kể từ 2.50: bạn chỉ có thể sử dụng sr từ bootstrap | Câu hỏi văn bản ngắn | <nhãn lớp="ẩn" | Có thể được sử dụng cho các mục đích khác |- ! phạm vi="hàng" | .ls-js-hidden {{NewIn|3.0}} | Được sử dụng để ẩn một phần nếu kích hoạt javascript | Nút chẳng hạn | <div class="ls-js-hidden"> | Lõi LimeSurvey đã sử dụng nó, nhưng bạn cũng có thể sử dụng nó trong mẫu của mình |- ! phạm vi="hàng" | .ls-js-hidden-sr {{NewIn|3.0}} | Được sử dụng cho khả năng truy cập: ẩn nó nếu js được kích hoạt, nhưng luôn hiển thị nếu người dùng sử dụng trình đọc màn hình | Nút chẳng hạn | <a class="ls-js-hidden-sr"> | Nút |- ! phạm vi="hàng" | .ls-no-js-hidden {{NewIn|3.0}} | Được sử dụng để ẩn một phần nếu javascript không được kích hoạt | Liên kết | <a class="ls-no-js-hidden"> | Lõi LimeSurvey đã sử dụng nó cho liên kết không hoạt động nếu javascript không được kích hoạt |- ! phạm vi="hàng" | .ls-label-xs-visibility {{NewIn|3.0}} | Nhãn sẽ được ẩn trong màn hình lớn, nhưng hiển thị với màn hình nhỏ (không có thêm bảng) và trình đọc màn hình | nhãn | <label class="ls-no-js-hidden"> | Được sử dụng cho nhãn bên trong ô bảng của loại câu hỏi mảng |- ! phạm vi="hàng" | .ls-input-group-extra {{NewIn|3.0}} | Cách sử dụng tương tự của boostrap input-group-addon, nhưng không có đường viền và nền. | hậu tố bên phải | <div class="ls-input-group-extra"> | Được sử dụng cho hậu tố phải và trái (toàn cầu) |- ! phạm vi="hàng" | .checkbox {{ObsoleteIn|3.0}} | đầu vào[loại=hộp kiểm] | Câu hỏi có hộp kiểm | <input type="checkbox" class="checkbox"> | Với trình duyệt hiện đại: không cần thiết, nhưng một số trình duyệt cũ cần điều này |- ! phạm vi="hàng" | .radio {{ObsoleteIn|3.0}} | đầu vào[type=radio] | Câu hỏi với đài | <input type="radio" class="radio"> | Với trình duyệt hiện đại: không cần thiết, nhưng một số trình duyệt cũ cần điều này |- ! phạm vi="hàng" | .text | đầu vào[loại=văn bản] | Câu hỏi có văn bản đầu vào hoặc vùng văn bản | <textarea class="text"> | |- ! phạm vi="hàng" | .answertext | Kiểu câu hỏi mảng | Trả lời một phần kiểu câu hỏi mảng | <th class="answertext"> | |- ! phạm vi="hàng" | .col-câu trả lời | Kiểu câu hỏi mảng | Cột đáp án | <col class="col-answers"> | |- ! phạm vi="hàng" | .odd .even {{ObsoleteIn|2.50}} | Kiểu câu hỏi mảng | Thay thế cho cột | <col class="odd" | |- ! phạm vi="hàng" | .array1 .array2 {{ObsoleteIn|3.0}} | Kiểu câu hỏi mảng | Thay thế cho dòng | <tr class="array1" | |- ! phạm vi="hàng" | .ls-odd .ls-even {{NewIn|3.0}} | Kiểu câu hỏi mảng | Luân phiên cho câu hỏi phụ và trục Y | <tr class="ls-odd"> | |} <span id="Some_examples_of_question_part_with_classes"></span> ==== Một số ví dụ về phần câu hỏi với các lớp==== '''Loại câu hỏi ngắn gọn:'''<source lang="html4strict"> <p class="question answer-item text-item "> <label class="hide label" for="answerSGQA">Answer</label><input type="text" value="" id="answerSGQA" name="SGQA" size="50" class="text empty"> </p> </source> '''Nhiều văn bản ngắn'''<source lang="html4strict"> <ul class="subquestions-list questions-list text-list"> <li class="question-item answer-item text-item" id="javatbdSGQA"> <label for="answerSGQA">Some example subquestion</label> <span><input type="text" value="" id="answerSGQA" name="SGQA" size="20" class="text empty"></span> </li> </ul> </source> '''Loại câu hỏi mảng'''<source lang="html4strict"> <table class="question subquestion-list questions-list "> <caption class="hide read">Some explanation for accessibility.</caption> <colgroup class="col-responses"> <col width="50%" class="col-answers"> <col width="25%" class="odd"> <col width="13.3%" class="col-no-answer even"> </colgroup> <thead> <tr class="array1 dontread"> <td> </td> <th>1</th> <th>No answer</th> </tr> </thead> <tbody> <tr class="array2 answers-list radio-list" id="javatbdSGQ"> <th width="20%" class="answertext">Some example subquestion </th> <td class="answer_cell_001 answer-item radio-item"> <label for="answerSGQA" class="hide read">1</label> <input type="radio" value="1" id="answerSGQA" name="SGQA" class="radio"> </td> <td class="answer-item radio-item noanswer-item"> <label for="answerSGQA" class="hide read">No answer</label> <input type="radio" value="" id="answerSGQA" name="SGQA" class="radio"> </td> </tr> </tbody> </table> </source> <span id="The_full_list_of_question_classes"></span> ===Danh sách đầy đủ các lớp câu hỏi=== {| |'''Loại câu hỏi'''||''''Lớp câu hỏi'''||''''ID câu hỏi''' |- |5 điểm lựa chọn||.choice -5-pt-radio||5 |- |Array (lựa chọn 10 điểm)||.array-10-pt||B |- |Array (lựa chọn 5 điểm) ||.array-5-pt||A |- |Array (Nhãn linh hoạt) tỷ lệ kép||.array-flexible-duel-scale ||1 |- |Array (Tăng, Tương tự, Giảm)||.array-increase-same-decrease||E |- |Array (Đa linh hoạt) (Số)||.array-multi-flexi ||: |- |Array (Đa linh hoạt) (Văn bản)||.array-multi-flexi-text||; |- |Array (Có/Không/Không chắc chắn)||.array- có-không chắc chắn-không||C |- |Array (nhãn linh hoạt)||.array-flexible-row ||F |- |Array (nhãn linh hoạt) theo cột| |.array-flexible-column||H |- |Câu hỏi soạn sẵn||.boilerplate||X |- |Date||.date||D |- |Phương trình||.phương trình||* |- |Giới tính||.gender||G |- |Văn bản miễn phí lớn||.văn bản-huge||U |- |Chuyển đổi ngôn ngữ||.ngôn ngữ||I |- |Danh sách (thả xuống)||.danh sách thả xuống||! |- |Danh sách (radio)||.list-radio||L |- |Danh sách có bình luận||.list-with-comment||O |- |Văn bản dài||. text-long||T |- |Nhiều đầu vào số||.numeric-multi||K |- |Nhiều tùy chọn||.multiple-opt||M |- |Nhiều tùy chọn với nhận xét||.multiple-opt-comments||P |- |Nhiều văn bản ngắn||.multiple-short-txt||Q |- |Đầu vào số||.numeric||N |- |Xếp hạng||.ranking||R |- |Văn bản ngắn miễn phí||.text-short||S |- |Có/Không||.có-không||Y |- | |} <span id="The_full_list_of_validation_classes"></span> ===Danh sách đầy đủ các lớp xác thực=== <div class="simplebox">Lưu ý: Trước phiên bản 1.92, chỉ có các lớp .mandatory và .input-error mới có sẵn.</div> Những điều này áp dụng cho thông báo mẹo trợ giúp và/hoặc xác thực để mỗi loại có thể được tạo kiểu riêng. Tùy chọn .hide-tip và tùy chọn .input-error tương tác theo mặc định để bạn có thể ẩn các mẹo xác thực. Tuy nhiên, chúng xuất hiện khi có lỗi xác thực và biến mất trở lại khi các lỗi đó được khắc phục. Tất cả những điều này được thiết kế để loại bỏ sự cần thiết của các thông báo cảnh báo bật lên. Thay vào đó, các mẹo có thể xuất hiện/biến mất khi cần thiết và được mã hóa màu để cho biết liệu các câu trả lời có vượt qua tiêu chí xác thực hay không. Hơn nữa, khi bạn truy cập lần đầu vào một trang có tiêu chí xác thực chưa được đáp ứng, bạn có thể mã màu cho các mẹo bằng màu dễ chịu để hiển thị tiêu chí xác thực nào chưa được đáp ứng; sau đó hiển thị lại trang bằng màu đậm hơn nếu người đó gửi trang có lỗi xác thực kéo dài. {| |'''Purpose'''||'''Lớp CSS'''||'''Mô tả''' |- |Bắt buộc||.bắt buộc||câu hỏi là bắt buộc |- |Lỗi nhập của người dùng||.input-error||câu hỏi có ít nhất một lỗi xác thực |- |Ẩn mẹo||.hide-tip||đã thêm nếu bạn sử dụng tùy chọn Hide_tip |- |loại mặc định||.em_default||cho bộ mẹo mặc định ( giá trị số, v.v ...) |- |Số câu trả lời||.em_num_answers|| dành cho min_answers và max_answers |- |Phạm vi giá trị||.em_value_range||cho min/max_num_value_n và multiflexible_min/max |- |Phạm vi tổng||.em_sum_range||cho min/ max/equals_num_value |- |Xác thực Regex||.em_regex_validation||để xác thực biểu thức chính quy của câu hỏi |- |Hàm xác thực cấp độ câu hỏi||.em_q_fn_validation||cho tùy chọn em_validation_q |- |Hàm xác thực cấp câu hỏi con||.em_sq_fn_validation||cho tùy chọn em_validation_sq |- |Nhận xét khác bắt buộc||.em_other_comment_mandatory||cho tùy chọn other_comment_mandatory - hiển thị khi "other" được chọn nhưng thiếu nhận xét liên quan. |- | |} <span id="Importing_styles_into_your_custom_template"></span> ===Nhập kiểu vào mẫu tùy chỉnh của bạn=== Các kiểu câu hỏi tùy chỉnh nằm ở gần cuối tệp CSS của mỗi mẫu và bắt đầu bằng:<syntaxhighlight lang="php"> /* -------------------------- BẮT ĐẦU: Kiểu câu hỏi ----------------- ------------- */</syntaxhighlight> Nếu bạn đang tạo kiểu cho mẫu tùy chỉnh của riêng mình, bạn sẽ có thể sao chép mọi thứ sau mẫu trên từ ''templates/default/template.css'' (đối với bố cục dựa trên bảng) hoặc ''/templates/limespired/template. css'' (dành cho bố cục dựa trên CSS) vào biểu định kiểu của riêng bạn mà không có bất kỳ tác động nào đến các kiểu khác của bạn. <span id="Internet_Explorer_Conditional_Style_Sheets"></span> ===Bảng định kiểu có điều kiện của Internet Explorer=== Do sự khác biệt rõ rệt trong kết xuất giữa IE6 & IE7 và các trình duyệt khác, nên có các biểu định kiểu có điều kiện đặc biệt của IE được bao gồm cho mỗi mẫu. <source lang="html4strict"> <!--[if IE]> <link rel="stylesheet" type="text/css" href="{TEMPLATEURL}IE_fix_all-versions.css" /> <![endif]--> <!--[if lt IE 7]> <link rel="stylesheet" type="text/css" href="{TEMPLATEURL}IE_fix_older-than-7.css" /> <![endif]--> <!--[if IE 8]> <link rel="stylesheet" type="text/css" href="{TEMPLATEURL}ie_fix_8.css" /> <![endif]--> </source> Bạn nên bao gồm mã ở trên trong '''startpage.pstpl''' của mình và các bản sao của cả hai biểu định kiểu IE từ ''/templates/default/'' hoặc ''/templates/limespired'' cho bố cục cơ sở của Bảng và Bố cục dựa trên CSS tương ứng. <div class="simplebox">'''Lưu ý:''' Nếu bạn sao chép các kiểu vào biểu định kiểu của riêng mình, bạn gần như chắc chắn sẽ cần phải chỉnh sửa chúng.</div> <span id="Alternative_solution_for_internet_explorer"></span> ====Giải pháp thay thế cho internet explorer==== Bạn có thể đặt một lớp có điều kiện cho nội dung trong startpage.pstpl và sử dụng lớp này trong template.css của mình. Phương pháp này được sử dụng trong mẫu citronade{{ObsoleteIn|2.06}}. Thêm lớp js/no-js để có hệ thống javascript/no javascript. <source lang="html4strict"><!--[if lt IE 7 ]> <body class="lang-{SURVEYLANGUAGE} {SURVEYFORMAT} ie ie6 ielt7 ielt8 ielt9 no-js"> <![endif]--> <!--[if IE 7 ]> <body class="lang-{SURVEYLANGUAGE} {SURVEYFORMAT} ie ie7 ielt8 ielt9 no-js"> <![endif]--> <!--[if IE 8 ]> <body class="lang-{SURVEYLANGUAGE} {SURVEYFORMAT} ie ie8 ielt9 no-js"> <![endif]--> <!--[if IE 9 ]> <body class="lang-{SURVEYLANGUAGE} {SURVEYFORMAT} ie ie9 no-js"> <![endif]--> <!--[if gt IE 9]><!--><body id="body" class="lang-{SURVEYLANGUAGE} {SURVEYFORMAT} no-js"><!--<![endif]--> <script type='text/javascript'>/*<![CDATA[*/(function(H){ H.className=H.className.replace(/\bno-js\b/,'js') })(document.getElementsByTagName('body')[0]);/*]]>*/</script></source> Và trong template.css sử dụng: <source lang="css">.ie6{/*dành riêng cho internet explorer 6*/} .ielt8{/*dành riêng cho internet explorer 6 và 7*/} .ie{/*dành riêng cho tất cả internet explorer */}</source> <span id="Right-to-Left_(RTL)_languages_and_justify"></span> === Ngôn ngữ từ phải sang trái (RTL) và căn đều=== Trình soạn thảo văn bản trong LimeSurvey có thể định dạng văn bản RTL. Tuy nhiên, bản thân trình soạn thảo hiển thị ngôn ngữ RTL ở định dạng từ trái sang phải khi căn đều. Đây chỉ là sự cố hiển thị trình soạn thảo. RTL và câu hỏi hoặc văn bản căn đều sẽ hiển thị chính xác từ phải sang trái, ngay cả khi căn đều, trong khảo sát của bạn hoặc khi xem trước. <span id="Keywords"></span> ===Từ khóa=== {{Không dùng nữa|3.0}} Từ khóa trong tệp mẫu sẽ được thay thế bằng thông tin khảo sát hiện tại. Chúng được bao quanh bởi dấu ngoặc nhọn, ví dụ: {SURVEYNAME}. Các chuỗi sau sẽ được LimeSurvey thay thế khi phân tích tệp mẫu và hiển thị cho người dùng khảo sát. Các chuỗi trường này sẽ hoạt động trên hầu hết mọi mẫu ngoại trừ 'Trang đã hoàn thành'. (Hầu hết các chuỗi này có thể được tìm thấy trong tệp common.php. Nếu không có, hãy tìm trong tệp index.php.) {|class=wikitable !'''Từ khóa'''!!'''Tệp mẫu'''!!'''Mô tả''' |- |{SURVEYNAME}||Tất cả Tệp||Tiêu đề khảo sát |- |{SURVEYDESCRIPTION}||Tất cả các tệp||Mô tả khảo sát |- |{WELCOME}||Tất cả các tệp (chủ yếu dành cho Welcome.pstpl) ||Văn bản 'chào mừng' khảo sát |- |{PERCENTCOMPLETE}||survey.pstpl||Một biểu đồ nhỏ hiển thị phần trăm khảo sát đã hoàn thành |- |{GROUPNAME}| |startgroup.pstpl, groupdescription.pstpl, endgroup.pstpl||Hiển thị tên nhóm hiện tại |- |{GROUPDESCRIPTION}||startgroup.pstpl, groupdescription.pstpl, endgroup.pstpl||Hiển thị nhóm hiện tại description |- |{NUMBEROFQUESTIONS}||welcome.pstpl||Hiển thị tổng số câu hỏi trong khảo sát (chỉ là số) |- |{THEREAREXQUESTIONS}||Chào mừng. pstpl||Hiển thị câu "Có X câu hỏi trong khảo sát này" - từ tệp ngôn ngữ liên quan. X được thay thế bằng số lượng câu hỏi. Lưu ý rằng điều này cũng sẽ phù hợp với số ít hoặc số nhiều. Nếu chỉ có 1 câu hỏi, nó sẽ in ra "Có 1 câu hỏi trong khảo sát này". |- |{CHECKJAVASCRIPT}||Tất cả các tệp (chủ yếu dành cho Welcome.pstpl)||Thông báo cảnh báo khi kết thúc- trình duyệt của người dùng đã tắt javascript |- |{QUESTION}||Question.pstpl||('''Đã được thay thế kể từ LS1.87''') Hiển thị nội dung câu hỏi hiện tại (Định dạng của { QUESTION} có thể tùy chỉnh bằng cách chỉnh sửa 'question_start.pstpl') Sử dụng các thông tin sau: {QUESTION_TEXT}, {QUESTION_MANDATORY}, {QUESTION_HELP}, {QUESTION_MAN_MESSAGE}, {QUESTION_VALID_MESSAGE}, {QUESTION_INPUT_ERROR_CLASS} và gói HTML thích hợp thay vì {QUESTION}! N!|- |{ANSWER}||question.pstpl, print_question.pstpl||trình bày mẫu câu trả lời cho câu hỏi hiện tại |- |{SGQ}||question.pstpl, nội dung câu hỏi ||Có thể được sử dụng trong chính văn bản câu hỏi để tham chiếu động trường đầu vào của câu hỏi bằng cách hiển thị id Câu hỏi-Nhóm khảo sát cho câu hỏi hiện tại. (kể từ svn build 9755) |- |{QUESTIONHELP}||question.pstpl, print_question.pstpl||Hiển thị văn bản trợ giúp (mẹo được xác định trước cho loại câu hỏi) cho câu hỏi hiện tại |- |{QUESTION_CLASS}||question.pstpl, print_question.pstpl||lớp duy nhất cho từng loại câu hỏi. (Để được đưa vào thẻ gói của câu hỏi.) |- |{QUESTION_CODE}||question.pstpl, print_question.pstpl||Hiển thị mã câu hỏi hiện tại |- |{QUESTION_ESSENTIALS }||question.pstpl||ID câu hỏi và (nếu câu hỏi có điều kiện), 'style="display:none;"'. (Để được đưa vào thẻ gói của câu hỏi.) |- |{QUESTION_HELP}||question.pstp, question_start.pstpl||Hiển thị văn bản trợ giúp do người dùng xác định cho câu hỏi hiện tại |- |{QUESTION_TYPE_HELP}||print_question.pstp||Hiển thị văn bản trợ giúp do người dùng xác định cho câu hỏi hiện tại |- |{QUESTION_INPUT_ERROR_CLASS}||question.pstp, question_start.pstpl||Cung cấp một lớp nếu đã xảy ra lỗi do người dùng nhập |- |{QUESTION_ID}||print_question.pstp||Cung cấp một ID duy nhất cho mỗi câu hỏi để cho phép tạo kiểu cho các câu hỏi cụ thể |- |{QUESTION_TEXT}| |question.pstp, print_question.pstp, question_start.pstpl||Hiển thị văn bản cho câu hỏi hiện tại |- |{QUESTION_MANDATORY}||question.pstp, print_question.pstp, question_start.pstpl||Hiển thị đã dịch văn bản 'Bắt buộc' cho câu hỏi hiện tại |- |{QUESTION_MAN_CLASS}||question.pstpl, print_question.pstpl||class nếu câu hỏi là bắt buộc. (Để được đưa vào thẻ gói của câu hỏi.) |- |{QUESTION_MAN_MESSAGE}||question.pstp, print_question.pstp, question_start.pstpl||Hiển thị văn bản thông báo trợ giúp 'Bắt buộc' đã được dịch cho câu hỏi hiện tại question |- |{QUESTION_NUMBER}||print_question.pstpl||Số lượng câu hỏi tăng dần. |- |{QUESTION_VALID_MESSAGE}||question.pstp, print_question.pstp, question_start.pstpl ||Hiển thị văn bản thông báo trợ giúp hợp lệ đã được dịch cho câu hỏi hiện tại |- |{QUESTION_SCENARIO}||print_question.pstp||In văn bản 'kịch bản' cho các câu hỏi có điều kiện. |- |{NAVIGATOR}||navigator.pstpl||Hiển thị các nút điều hướng (tiếp theo, trước, cuối) |- |{CLEARALL}||Tất cả các tệp (nhưng dành cho navigator.pstpl)||Hiển thị Liên kết "Thoát và xóa kết quả" |- |{COMPLETED}||completed.pstpl||Hiển thị thông báo 'đã hoàn thành' để đăng ký, sẽ thay đổi tùy thuộc vào việc các trường thuộc tính_1 và thuộc tính_2 có được đặt hay không.!N !|- |{URL}||completed.pstpl||Hiển thị 'url' và 'văn bản url' |- |{PRIVACYMESSAGE}||privacy.pstpl||Thông báo về quyền riêng tư được hiển thị nếu bạn đặt khảo sát của mình ở chế độ ẩn danh. [[Dịch LimeSurvey|Văn bản có thể được chỉnh sửa/dịch]] trong tệp ngôn ngữ. Điều này cũng có thể được thay đổi theo cách thủ công bằng cách chỉnh sửa mẫu Privacy.pstpl mà bạn muốn sử dụng. |- |{TEMPLATEURL}||All Files||URL tới vị trí mẫu hiện tại (hữu ích để tham chiếu các tệp hình ảnh trong mẫu của bạn) |- |{SURVEYRESOURCESURL}||Tất cả các tệp||URL tới các tệp được tải lên hiện tại cho vị trí khảo sát này (hữu ích để tham khảo các tệp hình ảnh trong câu hỏi, nhóm của bạn, ....) |- |{SUBMITCOMPLETE}||endpage.pstpl||Tuyên bố (từ tệp ngôn ngữ) cho người dùng biết rằng họ đã hoàn thành khảo sát và nhấn nút "Gửi" |- |{SUBMITREVIEW}||survey.pstpl||Câu lệnh (từ tệp ngôn ngữ) cho người dùng biết rằng họ có thể xem lại/thay đổi câu trả lời họ đã đưa ra bằng cách nhấp vào "<< prev" |- |{SAVEDID}||Tất cả các tệp||Hiển thị 'ID phản hồi' của người dùng |- |- |{QUEXMLPDF}||Tất cả các tệp||Hiển thị nút để xuất bản PDF queXML của bảng câu hỏi bao gồm các câu trả lời được nhập cho đến thời điểm đã được hoàn thành trong khảo sát. |- |{TOKEN:FIRSTNAME}||Tất cả các tệp||***Nếu câu trả lời khảo sát KHÔNG BẤT CỨ NÀO - trước tiên sẽ được thay thế bằng người dùng tên từ bảng mã thông báo |- |{TOKEN:LASTNAME}||Tất cả các tệp||***Nếu câu trả lời khảo sát KHÔNG BẤT CỨ LÀ NÀO - sẽ được thay thế bằng họ của người dùng từ bảng mã thông báo***! N!|- |{TOKEN:EMAIL}||Tất cả các tệp||***Nếu câu trả lời khảo sát KHÔNG BẤT CỨ NƠI NÀO - sẽ được thay thế bằng email của người dùng từ bảng mã thông báo*** |- |{TOKEN:ATTRIBUTE_1}||Tất cả các tệp||***Nếu câu trả lời khảo sát KHÔNG BẤT CỨ NÀO - sẽ được thay thế bằng thuộc tính người dùng_1 từ bảng mã thông báo*** |- |{TOKEN:ATTRIBUTE_2}| |Tất cả các tệp||***Nếu câu trả lời khảo sát KHÔNG BẤT CỨ LÀ NÀO - sẽ được thay thế bằng thuộc tính người dùng_2 từ bảng mã thông báo*** |- |{ANSWERSCLEARED}||Tốt nhất là trong navigator.pstpl||The Tuyên bố "Đã xóa câu trả lời" khỏi tệp ngôn ngữ |- |{RESTART}||clearall.pstpl||URL để bắt đầu lại cuộc khảo sát |- |{REGISTERERROR}||register.pstpl ||Hiển thị bất kỳ thông báo lỗi nào trong trang đăng ký (ví dụ: "Bạn phải bao gồm địa chỉ email") |- |{REGISTERMESSAGE1}||register.pstpl||Tuyên bố "Bạn phải đăng ký để hoàn thành khảo sát này" từ các tệp ngôn ngữ |- |{REGISTERMESSAGE2}||register.pstpl||Chi tiết về việc đăng ký từ các tệp ngôn ngữ |- |{REGISTERFORM}||register.pstpl ||Hình thức đăng ký thực tế sẽ thay đổi tùy thuộc vào việc các trường thuộc tính_1 và thuộc tính_2 có được đặt hay không. |- |{SAVE}||Hoạt động phù hợp trên navigator.pstpl||Hiển thị 'Lưu câu trả lời của bạn để xa' để đề nghị người dùng lưu và quay lại sau để tiếp tục khảo sát. Nếu tùy chọn Lưu bị vô hiệu hóa trong thuộc tính khảo sát, thẻ sẽ không được hiển thị và bị bỏ qua. |- |{LANGUAGECHANGER}||survey.pstpl||Hiển thị một công tắc trong khảo sát đa ngôn ngữ để thay đổi câu hỏi.! N!|} <span id="Input/Buttons"></span> ===Đầu vào/Nút=== Mỗi loại "đầu vào" trong khảo sát đều được đặt tên lớp riêng để bạn có thể thêm CSS vào tệp "startpage.pstpl" của mình và có một số quyền kiểm soát đối với giao diện của các nút biểu mẫu và thông tin đầu vào. Các tên lớp này như sau: *'''submit''' (Nút gửi) *'''text''' (Nhập văn bản - dành cho văn bản, ngày tháng và loại số ngắn miễn phí) *'''answertext''' (Văn bản của câu trả lời) *'''radio''' (Nút radio) *'''checkbox''' (Hộp kiểm) *'' 'select''' (Hộp Chọn / Danh sách) *'''textarea''' (Nhập văn bản lớn - cho văn bản dài miễn phí) *'''clearall''' ("Thoát và xóa khảo sát " link) *'''rank''' (Câu hỏi kiểu xếp hạng. Không đặt màu của hộp chọn hoặc hộp văn bản, nhưng nó cho phép thay đổi màu nền, màu văn bản, kích thước, v.v. ., cho phần còn lại của câu hỏi xếp hạng) *'''graph''' (Bảng biểu đồ "phần trăm hoàn thành") *'''innergraph''' (Bảng bên trong bảng biểu đồ - đây chứa văn bản 0% và 100%. Sử dụng phần này để thay đổi kích thước của văn bản này) *'''question''' (Cài đặt chung cho bất kỳ câu hỏi nào được hiển thị trong bảng. Nói chung, bạn nên sử dụng phần này để hãy đảm bảo rằng kích thước và màu phông chữ của chúng giống với kích thước và màu sắc phông chữ mà bạn đã sử dụng ở nơi khác làm mặc định) *'''bắt buộc''' (Câu hỏi bắt buộc) *'''input-error''' (Người dùng lỗi đầu vào - nếu người dùng mắc lỗi với một câu hỏi bắt buộc hoặc câu hỏi có xác thực) *'''array1''' và '''array2''' (Hai kiểu này được luân chuyển khi trình bày phạm vi của câu trả lời cho một câu hỏi kiểu mảng. Điều này cho phép bạn đặt màu nền xen kẽ cho các loại câu hỏi này. '''Array1''' cũng được sử dụng cho các tiêu đề cột trong các loại câu hỏi này) *'''errormandatory''' (Đặt màu và kiểu của thông báo lỗi "Câu hỏi này là bắt buộc") *'''warningjs''' (Đặt màu sắc và kiểu dáng của thông báo cảnh báo được hiển thị nếu trình duyệt của người tham gia đã tắt javascript) Ngoài ra còn có một số phần tử có thể được truy cập bằng ID của phần tử đó ('''#ID''' trong CSS): *'''surveycontact''' (Thông báo liên hệ được hiển thị trên trang bắt đầu) *'''tokenmessage''' (được sử dụng cho các tin nhắn bên trong khảo sát, ví dụ: thông báo lỗi phiên hết hạn) Bởi vì bạn có thể chỉnh sửa tất cả các khía cạnh HTML nên không có lý do gì để bao quanh các mẫu của bạn bằng <syntaxhighlight lang="php"><div class='new_name'></div></syntaxhighlight> và sau đó định nghĩa một css cho lớp new_name đó. <span id="Styling_the_progress_bar"></span> ==Tạo kiểu cho thanh tiến trình== Giao diện thanh tiến trình có thể được sửa đổi bằng CSS. Để thay đổi màu nền của thanh, hãy thêm nội dung như sau vào cuối tệp custom.css của bạn (ví dụ về chủ đề trái cây): <syntaxhighlight lang="php">.fruity .progress-bar { màu nền: #3300FF; }</syntaxhighlight> Để thay đổi màu đường viền của thanh, hãy thêm nội dung như sau vào cuối tệp custom.css của bạn (ví dụ về chủ đề trái cây): <syntaxhighlight lang="php">.fruity .progress-bar { đường viền: 1px liền khối #FF0000; }</syntaxhighlight> <span id="Advanced_features_available_to_developers"></span> ==Các tính năng nâng cao dành cho nhà phát triển== LimeSurvey đã tích hợp một số bản vá do người dùng tạo cho phép thực hiện một số thay đổi đặc biệt. Những tính năng rất tiên tiến này (nói chung) yêu cầu thay đổi cơ sở mã cơ bản của LimeSurvey và cần được thực hiện cẩn thận để không tạo ra các lỗ hổng bảo mật. <span id="Support_for_your_own_Javascript_functions"></span> ====Hỗ trợ các chức năng Javascript của riêng bạn==== Một số người dùng có thể cần chạy Javascript trên các trang khảo sát, nhưng việc gọi '''checkconditions()''' trong phần tử BODY khiến điều đó không thể thực hiện được. Lệnh gọi này đã được thay thế bằng một hàm JavaScript nhỏ trong HEAD để phát hiện sự tồn tại của '''checkconditions()''' và '''template_onload()''' trước khi gọi chúng. Bằng cách này, tác giả mẫu có thể tạo hàm '''template_onload()''' của riêng mình trong HEAD để thay thế hàm mặc định. *Tắt bộ lọc XSS - trong Cài đặt chung -> Bảo mật, đặt "Lọc HTML cho XSS" thành Không. *Nhập tập lệnh của bạn vào nguồn của câu hỏi hoặc mô tả nhóm. {{Lưu ý|Để biết thêm chi tiết, hãy xem [[Giải pháp thay thế: Thao tác khảo sát trong thời gian chạy bằng Javascript#Cách sử dụng Tập lệnh (ví dụ: JavaScript, v.v.) trong phần LimeSurvey|giải pháp thay thế]].}} <span id="Tips_&_tricks"></span> ==Mẹo và thủ thuật== <span id="Language_specific_element"></span> ===Thành phần ngôn ngữ cụ thể=== Nếu bạn muốn có một câu cụ thể theo ngôn ngữ trong khảo sát, chẳng hạn như trợ giúp ở cuối mỗi trang, bạn có thể thêm tệp .pstl một câu và ẩn câu đó cho ngôn ngữ khác. Nếu ẩn nó trong template.css, chúng ta có thể sử dụng bộ chọn giả :lang, nhưng chúng ta sử dụng một số lớp để tương thích tốt hơn. Bên dưới có hai câu trợ giúp bằng tiếng Pháp và tiếng Anh. Đặt cái này trên endpage.pstpl: <syntaxhighlight lang="php"><div class="fr" lang="fr">Pour de l'aide en direct appelez le 000000</div> <div class="en" lang="en"> Để được trợ giúp, vui lòng gọi 000000</div></syntaxhighlight> và trong template.css: <syntaxhighlight lang="php">.lang-fr .en{display:none} .lang-en .fr{display:none}</syntaxhighlight> <span id="Change_the_layout_of_the_survey_page"></span> ===Thay đổi bố cục của trang khảo sát=== Sau khi chỉnh sửa và lưu mẫu, mẫu đó chỉ áp dụng cho trang danh sách khảo sát nếu được chọn từ cài đặt của khảo sát. Để đặt nó làm mẫu mặc định, hãy chuyển đến ''tab Chung''' nằm trong '''Cài đặt chung''' của bản cài đặt LimeSurvey của bạn và chọn mẫu mong muốn. Từ thời điểm này trở đi, tất cả các mẫu sử dụng tùy chọn "mặc định" làm mẫu, cộng với những mẫu sắp được tạo mới, sẽ sử dụng mẫu mặc định mới được chọn. Để sử dụng mẫu hiện tại của bạn cho trang này, bạn phải thay đổi cài đặt thích hợp từ '''Cài đặt chung'''. Trong các phiên bản cũ hơn, thay đổi này có thể được thực hiện bằng cách chỉnh sửa cài đặt $defaulttemplate từ tệp cấu hình: sao chép cài đặt này từ config-defaults.php sang config.php để ghi đè config-defaults.php và chỉnh sửa cài đặt này thành <code lang="html">$defaulttemplate = 'yourtemplatename';</code> . <span id="Import/Export_of_templates:_Mac_users"></span> ===Nhập/Xuất mẫu: Người dùng Mac=== <u>Người dùng Mac</u> , xin lưu ý rằng tiện ích lưu trữ mặc định của Mac OSX có thể gặp sự cố với các thư mục zip "được tạo nhanh chóng". Một cách giải quyết khác là giải nén unix từ dòng lệnh: $ giải nén template.zip -d mẫu Lưu trữ: template.zip tăng cao: mẫu/trang bắt đầu thổi phồng: ... Một cách giải quyết khác là sử dụng các tập lệnh trong các bản sao do mac biên dịch. <span id="Use_the_same_template_with_different_logos"></span> ===Sử dụng cùng một mẫu với các logo khác nhau=== Nếu bạn muốn sử dụng cùng một mẫu cho tất cả các khảo sát và chỉ muốn thay đổi logo cho mỗi khảo sát, bạn có thể sử dụng trình giữ chỗ {SID} trong tệp .pstpl mẫu và từ đó tham khảo các hình ảnh khác nhau: <syntaxhighlight lang="php"><img src="{TEMPLATEURL}files/logoImage-{SID}.png"></syntaxhighlight> <span id="Display_custom_favicon"></span> === Hiển thị favicon tùy chỉnh=== Favicon là biểu tượng nhỏ bạn nhìn thấy trên thanh địa chỉ, danh sách dấu trang hoặc tab của trình duyệt. Bạn có thể hiển thị biểu tượng của riêng mình như sau: #Tạo favicon - Bạn có thể sử dụng Google để tìm nhiều trình tạo favicon miễn phí. #Đặt tên cho favicon mới của bạn là "favicon.ico" và đặt nó vào mẫu/tệp của bạn thư mục. #Thêm đoạn mã sau vào '''startpage.pstpl''' của bạn trước</head> nhãn. <syntaxhighlight lang="html4strict"><link rel="shortcut icon" href="{TEMPLATEURL}files/favicon.ico" type="image/x-icon"> <link rel="icon" href="{TEMPLATEURL}files/favicon.ico" type="image/x-icon"></syntaxhighlight> <span id="Different_appearance_for_survey-/question-pages"></span> === Giao diện khác nhau cho trang khảo sát-/câu hỏi=== Nếu bạn muốn LimeSurvey thay đổi giao diện của mỗi trang thứ hai (tức là các trang khảo sát chẵn và lẻ), bạn có thể sử dụng lớp '''.page-odd''' trong tệp CSS của mình để thay đổi giao diện của các trang lẻ. Một ví dụ từ mẫu mặc định của LimeSurvey 1.91+: <syntaxhighlight lang="php"> .page-odd table.question-group { màu nền: #D2F2D3; }</syntaxhighlight> Nếu bạn '''không''' muốn phân biệt các trang chẵn và lẻ, hãy tìm tất cả các phiên bản ''.page-odd'' trong template.css và xóa các kiểu đó. <span id="Create_a_vertical_separator_border_for_dual_scale_array"></span> ===Tạo đường viền phân cách dọc cho mảng tỷ lệ kép=== Để tạo đường viền phân cách dọc cho mảng tỷ lệ kép, bạn có thể thêm các dòng sau vào tệp '''template.css''' của mình. <syntaxhighlight lang="php"> table.question thead td.header_separator, table.question tbody td.dual_scale_separator { border-right:solid 1px #00A8E1; } </syntaxhighlight> ''header_separator'' được sử dụng để đánh địa chỉ dấu phân cách cho tiêu đề "td". "dual_scale_separator" được sử dụng để giải quyết cột phân cách trong mảng tỷ lệ kép. <span id="Adding_your_own_logo_to_the_survey_list"></span> ===Thêm logo của riêng bạn vào danh sách khảo sát=== # Trước tiên hãy mở trình chỉnh sửa chủ đề cho chủ đề bạn muốn sử dụng. [[File:OpenThemeEditor.jpg]] # Chúng tôi khuyên bạn nên sử dụng chủ đề trái cây, đây là chủ đề tốt nhất của chúng tôi hiện nay. # Sau đó, hãy mở rộng chủ đề và đặt cho nó một cái tên mà bạn sẽ nhận ra. [[File:ExtendTheme.jpg]] # Trong chế độ xem sau, bạn có thể tải lên logo bạn muốn sử dụng. [[File:UploadFileTheme.jpg]] # Chọn màn hình soạn thảo `Danh sách khảo sát' trong menu thả xuống Màn hình ở góc trên cùng bên phải. [[File:OpenScreenSurveyList.jpg]] # Sau đó chọn `layout_survey_list.twig' trong menu bên trái. [[File:EditLayoutSurveyListTwig.jpg]] # Trong trình chỉnh sửa, cuộn đến dòng 126 và thay đổi phần được đánh dấu thành tên tệp của hình ảnh bạn đã tải lên chủ đề trước đó. [[File:ChangeSurveyListHeaderImageEditor.jpg]] # Lưu tệp của bạn. [[File:ThemeEditorSaveChanges.jpg]] # Thay đổi chủ đề mặc định thành chủ đề mở rộng của bạn. [[File:ChangeDefaultTheme.jpg]] === Căn chỉnh logo vào giữa trang khảo sát=== Ví dụ này dành cho mẫu "extends_fruity". Đối với các mẫu khác, CSS yêu cầu có thể khác. # Đăng nhập vào khu vực quản trị LimeSurvey # Duyệt đến trình chỉnh sửa chủ đề: Cấu hình > Chủ đề # Tìm "Chủ đề LimeSurvey Fruity" trong danh sách và nhấp vào " Nút "Trình chỉnh sửa chủ đề" # Nhấp vào "custom.css" trong danh sách tệp ở bên trái, gần cuối trang # Sao chép CSS sau vào tệp đó và nhấn "Lưu thay đổi" <syntaxhighlight lang="css"> .navbar-fixed-top > div.navbar-header { chiều rộng: 100% !quan trọng; } .navbar-fixed-top > div.navbar-header > div { chiều rộng: 100% !quan trọng; } .navbar-fixed-top > div.navbar-header > div > img { lề: 0 tự động 0 tự động !quan trọng; } </syntaxhighlight> <span id="Custom_question_views_{{NewIn|3.0}}"></span> ==Chế độ xem câu hỏi tùy chỉnh {{NewIn|3.0}}== <div class="simplebox">'''Lưu ý:''' Đây là một tính năng tạm thời sẽ được thay thế trong tương lai bằng đối tượng câu hỏi (sẽ rất dễ dàng để di chuyển các chế độ xem tùy chỉnh sang đối tượng câu hỏi). Nó bị tắt theo mặc định.</div> Kể từ phiên bản 2.5, bạn có thể tạo chế độ xem tùy chỉnh theo mẫu cụ thể cho các câu hỏi và một số thành phần được kết hợp của chúng. Điều này hữu ích nếu bạn muốn sửa đổi bố cục HTML của một loại câu hỏi cụ thể cho một hoặc nhiều khảo sát. *Trong application/config/config.php, tìm 'config'=>mảng và thêm dòng này vào mảng: 'allow_templates_to_overwrite_views'=>1 *Trong /{your_template}/config.xml, đặt "overwrite_question_views" thành true *Sao chép application/views/survey/* vào template/{your_view_directory}/survey/ *Lưu ý rằng bạn chỉ cần sao chép các tệp mà bạn định sửa đổi nhưng cấu trúc tệp phải giữ nguyên như trong ứng dụng/lượt xem/khảo sát/ <span id="Insert_custom_CSS_or_JavaScript_files_for_template"></span> ==Chèn tệp CSS hoặc JavaScript tùy chỉnh cho mẫu== Kể từ phiên bản 2.50, bạn có thể sử dụng Tệp config.xml để Tự động tải Tệp Plugin. *Tải tệp của bạn lên thư mục mẫu /css hoặc /scripts *Trong /{your_template}/config.xml, thêm đường dẫn tệp vào<css> hoặc<js> khối, đại loại như thế này:<syntaxhighlight lang="xml"><css> <filename> css/jquery-ui-custom.css</filename> <filename> css/bootstrap-slider.css</filename> <filename>css/awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css</filename> <filename> css/flat_and_modern.css</filename> <filename>css/template.css</filename> <filename>css/myCustomPlugin.css</filename> </css> <js> <filename> scripts/template.js</filename> <filename> scripts/bootstrap-slider.js</filename> <filename>scripts/myCustomPlugin.js</filename> </js> </syntaxhighlight> <span id="Class_definitions_(for_Developers)"></span> ==Định nghĩa lớp (dành cho Nhà phát triển)== ===answer-list=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''elements''' |- |mảng/5 điểm || Một || tr |- |arrays/10point|| B|| tr |- |mảng/mảng || F || tr |- |mảng/cột || H || tr và col |- |arrays/dualscale || 1 || tr |- |mảng/tăngcùnggiảm || E || tr |- |arrays/yesnouncertain || C || tr |- |giới tính || G || div và ul |- |list_with_comment || ồ || div |- |xếp hạng || R || ul và div |- |yesno || Y || ul và div |- |ranking_advanced || R || ul và div |- |listradio || L || div |- |5điểm lựa chọn || 5 || ul |- |trắc nghiệm || M || div |- |} ===radio-list=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''elements''' |- | vâng không || Y || ul |- |giới tính || G || ul |- |arrays/yesnouncertain || C || tr |- |mảng/tăngcùnggiảm || E || tr |- |arrays/dualscale || 1 || tr |- |arrays/5point || Một || bảng và tr |- |arrays/10point || B || tr |- |mảng/mảng || F || tr |- |mảng/cột || H || col |- |listradio || L || div |- |list_with_comment || ồ || div theo sau là ul |- |} ===radio-item=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''yếu tố''' |- |arrays/yesnouncertain || C || td |- |5điểm lựa chọn || 5 || li |- |mảng/10điểm || B || td |- |arrays/5point || Một || td |- |mảng/mảng || F || td |- |mảng/cột || H || td |- |arrays/dualscale || 1 || td |- |mảng/tăngcùnggiảm || E || td |- |giới tính || G || li |- |listradio || L || li |- |yesno || Y || li |- |listradio || L || li và div |- |image_select-listradio || L || li và div |- |list_with_comment || 0 || li |- |} ===list-group=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''elements''' |- |có không || Y || ul |- |5điểm lựa chọn || 5 || ul |- |giới tính || G || ul |- |xếp hạng || R || ul |- |ranking_advanced || R || ul và div |- |question_index_group_buttons || || div |- |question_index_questions_buttons || || div |- |} ===list-group-horizontal=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''elements''' |- |yesno || Y || ul |- |5điểm lựa chọn || 5 || ul |- |giới tính || G || ul |- |} ===list-unstyled=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''elements''' |- |list_with_comment || 0 || ul |- |listradio|| L || ul |- |trắc nghiệm|| M || ul |- |multiplechoice_with_comments|| P || ul |- |nhiều số|| K || ul |- |multipleshorttext|| Q || ul |- |xếp hạng|| R || ul |- |ranking_advanced|| R || ul |- |bootstrap_buttons_multi|| M || ul |- |image_select-multichoice|| M || ul |- |inputondemand/multipleshorttext || Q || ul |- |register_error|| || ul |- |register_message|| || ul |- |layout_survey_list || || ul |- |load|| || ul |- |lưu|| || ul |- |captcha|| || ul |- |} ===select-list=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''elements''' |- |xếp hạng|| R || ul |- |ranking_advanced|| R || ul |- |} ===checkbox-item=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''yếu tố''' |- |multiflexi (Số mảng)|| : || td |- |nhiều lựa chọn|| M || li |- |multiplechoice_with_comments|| P || div |- |image_select-listradio|| L || li |- |image_select-multichoice|| M || li và div |- |navigator|| || span |- |} ===checkbox-text-item=== {|class=wikitable !'''Câu hỏi'''!!'''Loại câu hỏi'''!!'''yếu tố''' |- |multiplechoice_with_comments|| P || li |- |trắc nghiệm|| M || li |- |image_select-multichoice|| M || li |- |} [[Category:Theme]] [[Category:Twig]]