Cevabım PHP ile yazılmış WordPress ile ilgili, ancak bu genel bir geliştirme mekaniği, bu yüzden soru başlığınıza 'python' koymanıza rağmen, gerçekten önemli olmamalı.
Web geliştirmede rastlantısal olarak kanca kullanımının iyi bir örneği WordPress'in kancalarıdır .
Bir programın yürütülmesinin belirli noktalarına 'bağlanma' yoluna izin verdikleri için uygun şekilde adlandırılırlar.
Örneğin, wp_head , bir WordPress teması oluşturulduğunda yayılan ve <head>etiketlerin içindeki parçayı oluşturduğu kısımdaki bir 'eylemdir' . Ek bir stil sayfası, komut dosyası veya normalde bu etiketlerin içine girecek bir şey gerektiren bir eklenti yazmak istediğinizi varsayalım. Bu eylem yayıldığında çağrılacak bir işlev tanımlayarak bu eyleme 'bağlanabilirsiniz'. Gibi bir şey:
add_action('wp_head', 'your_function');
your_function() şöyle basit bir şey olabilir:
function your_function() {
echo '<link rel="stylesheet" type="text/css" href="lol.css" />';
}
WordPress gibi bir şey yaparak bu eylemi yayar Şimdi, do_action('wp_head');bu göreceksiniz your_function()oldu 'çengelli içine' bu işlevi çağırmak (böylece, bu eyleme herhangi alırsa herhangi bir kanca belgelerinde tanımlandığı gibi ve ona herhangi bir bağımsız değişken geçmesi ).
Uzun lafın kısası: Bir programın yürütülmesinin belirli noktalarına, bu noktalara 'bağlanarak', çoğu durumda bir işlev geri araması atayarak ek işlevsellik eklemenizi sağlar.