Öğrenmede Sınav Soru Zamanlayıcısı Nasıl Eklenir
Not, aşağıdaki çözüm LearnDash 3.0+ ile uyumlu değildir. En son LearnDash sürümüne uygun bir çözüm elde etmek için bizimle iletişime geçin.
Her iyi öğrenme yönetim sistemi, sınavlara/testlere zaman düzenleyicileri eklemek için seçenekler sunar. Ve öğrenme farklı değildir. Yönetici panelinizdeki Learndash Quiz ayarına adım atarsanız, test seviyesine ‘zaman sınırı’ ekleme seçeneğini görürsünüz.
Bu, ruhlarında oynayarak her öğrenciye meydan okur,
Öğrencilerin hile yapması için vakti yok,
Ve bu da aralarındaki rekabet seviyesini arttırır
Ancak sınav süresi düzenleyicisi, tüm sorular aynı veya aynı türe sahip olduğunda iyi çalışır. Örneğin bir matematik sınavı gibi. Ama ya bazı matematiksel sorular sadece sınavın bir parçasıysa ve sadece zaman verilmesi gereken belirli sorular ise.
Bu durumda, bir test zamanlayıcısı değil, soru başına bir zamanlayıcıya ihtiyacınız var. Şimdi, LearnDash soru başına bir zamanlayıcı sağlamaz. Biliyorsun. İşte bu yüzden buradasın değil mi?! Bu nedenle, bir zaman sorusu eklemeniz gereken bir senaryo için, size Learndash’taki her sınav sorusu için tam olarak nasıl bir zaman sınırı ekleyebileceğinizi açıklayacağım. Bunu başarmaya çalışacağız:
Her soruya isteğe bağlı bir alan ekleyeceğiz, burada her sınav sorusu için zaman sınırını belirleyebilirsiniz.
Daha sonra son tarih, sınav sorusu için önde görüntülenecek ve ‘sonraki’ soru düğmesi gizlenecektir.
Öğrenciler zamanınız tükenirse, bir sonraki soru otomatik olarak görüntülenecektir. Şimdi sizi uyarmalıyım; Bu çözümü uygulamak için PHP ve JavaScript geliştirme hakkında yeterli bilgiye ihtiyacınız var. Değilse, size yardımcı olabilecek LearnDash geliştiricisiyle iletişime geçmeniz gerekir.
Gravity Forms eklentisi ile ‘Türünüz nedir’ değerlendirme sınavı
LearnDash: Doğru ve yanlış test cevapları için mesajları gösterin
Peki. Çalışmaya başlayalım. Adım #1: Zaman sınırını ekleyin Her bir sınav için basit bir ayar ekleyerek soru sınırınızı ayarlamalıdır. Tabii ki, göründüğü kadar basit değil. Daha önce Learndash Quiz üzerinde çalışan bir geliştiriciyseniz, kullanabileceğiniz bir kanca olmadığını bileceksiniz. Soru ayarlarını test etmek için alan eklemek için kullanabileceğiniz kancalar yoktur.
Ama endişelenme. Çekirdeği burada ayarlamayacağız. Bazı JavaScript harikalarını kullanarak ne yapacağız. JavaScript kullanarak alanı soru ayarları sayfasına ‘Kaydet’ düğmesinin üzerine yerleştireceğiz. ‘Kaydet’ düğmesini sütun referansı olarak kullanmanın nedeni, çünkü ‘Kaydet’ düğmesi Quiz sorularının her sayfasında. Zaman regülatör alanını eklemek için ‘Kaydet’ düğme kimliğini referans olarak kullanacağız.
Aşağıdaki JavaScript kodu, ‘Kaydet’ düğmesinin üzerindeki ‘Zaman Sınırı Sorusu’ alanını görüntüler.
$ save_button_div = $ save_button.closest (“div”); $ content = ‘
‘ +’ Sorunun zaman sınırı (saniye cinsinden) ‘ +’
‘;
$ Save_button_div. Önceden ($ Content); Burada input_content ‘sorunun zaman sınırı’ değeridir. Varsayılan olarak, değer 0 olarak ayarlanmalıdır. Bu değeri her ayarladığınızda (veya kullanıcı) değer güncellenmeli ve veritabanında (PHP aracılığıyla işlenir) saklanmalıdır. Aynı şekilde, veritabanından okunmalı ve kullanıcı bu alanı gördüğünde kullanıcıya görüntülenmelidir.
Enqueed olduğunda bu JavaScript kodu, alanları aşağıdaki gibi görüntüleyecektir:
Adım #2: Alan değeri bir soru için depolandıktan sonra öğrenme quiz sorusu için bir zaman sınırı ekleyin, sınav sorusu denendiğinde zaman regülatörü görüntülenmelidir. Bu, aşağıdaki adımlar kullanılarak yapılabilir:
Zaman Düzenleyici Değer Alın
Zaman Regülatörü Başlat
Son başvuru tarihinin elde edilip edilmediğini periyodik olarak kontrol edin
Bir sonraki sınav sorusu düğmesini inceleyin
Aynı şeyin kodu aşağıdaki gibidir: jQuery (‘[name = “startquiz”], [name = “sonraki”]’). Click (function () {) {
JQuery (‘.wpproquiz_listitem’). Her biri (function () {
if (jQuery (this). IS (‘: görünür’)) {
$ current_question_id = jQuery (this). (“.Wpproquiz_questionlist”);
$ current_question_id = $ current_question_id .attr (“data-question_id”); if (wdmajaxdata.post_meta [$ current_question_id]! == tanımsız) {
Counter_Value = wdmajaxdata.post_meta [$ current_question_id];
}
başka {
Counter_Nait = 0;
}
Var wdm_globalelements = {
Sonraki: JQuery (bu). Bul (“[Name = Next ‘]”),,
WDM_TIMEDIMIT: JQuery (bu). Bul (‘.wpproquiz_question_time_limit’),
Current_counter: Counter_value
};
wdm_globalElements. Sonraki. HiGing ();
Var wdm_timelimit = (function () {
var _counter = wdm_globalelements.current_counter;
var _intraffalid = 0;
var numune = {};
örnek . stop = function () {
if (_pengalccit) {
pencere. ClearInterVal (_IntraffalID);
wdm_globalelements.wdm_timelimit .css (“ekran”, “hayır”);
}
};
örnek . başlangıç = function () {
if (! _Pengalit) {
wdm_globalElements. Sonraki. Display ();
dönüş ;
}
Var x = _pengitung * 1000;
Var $ timeText = wdm_globalelements.wdm_timelimit. Bul (‘span’). Metin (paresetime (_counter);
var $ timediv = wdm_globalelements.wdm_timelimit. (‘.Wpproquiz_question_progress’);
wdm_globalelements.wdm_timelimit .css (“ekran”, “”);
Var Öncesi = + Yeni Tarih ();
_IntrAffalID = pencere. SetInterVal (function () {
Var diff = ( + yeni tarih () – beForetime);
Var elapedtime = x – diff;
İf (fark> = 500) {
$ TimeText. Text (parsetime (Matematik Ceil (EleedTime / 1000)));
}
$ timediv .css (‘genişlik’, (expedtime / x * 100) + ‘%’);
eğer (zaman geçti <= 0) {
Örnek .stop ();
wdm_globalElements. Sonraki .Trigger ("tıklayın");
}
}, 16);
};
geri örnek;}) ();
Wdm_the zaman. Başlat ();
}
});
} Yukarıdaki kod, zaman kontrolü çalıştığında 'sonraki' soru düğmesini gizler ve ardından son tarihe ulaşıldıktan sonra tıklayın.
https://wisdmlabs.com/learndash-quiz-customization/?utm_source=blog&utm_medium=post&utm_campaign=quiz_cusomization_timer&utm_content=dropshippping ve sonuçlar aşağıdaki gibidir:
Test İşlevi Başına Zamanlayıcı Soruları Sınavdaki diğer sorulara kıyasla belirli sorulara ağırlık vermek istediğinizde. Bu kod, öğrenme işlevselliği eklemek istediğinizde yararlı olabilir. Bunu denerseniz ve benim için bir sorunuz varsa, çekim!
5 Learndash sınavınız için gerekli özelliklerin eklenmesi
Öğrencilere Quis Öğrenme Sorularına Ekstra Çaba Ver
LMS Learndash için özel bir sınav modülüne ihtiyacınız var ?? Bize Ulaşın
Freepik tarafından resim