{"id":9116,"date":"2026-08-28T13:26:44","date_gmt":"2026-08-28T10:26:44","guid":{"rendered":"https:\/\/www.domainhizmetleri.com\/blog\/?p=9116"},"modified":"2026-08-28T13:26:45","modified_gmt":"2026-08-28T10:26:45","slug":"wordpress-hooks-nedir","status":"publish","type":"post","link":"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/","title":{"rendered":"WordPress Hooks Nedir? Action ve Filter Aras\u0131ndaki Farklar"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_87 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Yaz\u0131 \u0130\u00e7eri\u011fi<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"\u0130\u00e7indekiler Tablosunu A\u00e7\/Kapat\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #0a0a0a;color:#0a0a0a\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #0a0a0a;color:#0a0a0a\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#WordPress_Hooks_Nedir\" >WordPress Hooks Nedir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#WordPress_Action_Nedir\" >WordPress Action Nedir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#WordPress_Filter_Nedir\" >WordPress Filter Nedir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#Action_ve_Filter_Arasindaki_Farklar_Nelerdir\" >Action ve Filter Aras\u0131ndaki Farklar Nelerdir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#Hook_Onceligi_Nasil_Belirlenir\" >Hook \u00d6nceli\u011fi Nas\u0131l Belirlenir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#Hook_Fonksiyonlarina_Parametre_Nasil_Aktarilir\" >Hook Fonksiyonlar\u0131na Parametre Nas\u0131l Aktar\u0131l\u0131r?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#Eklenen_Bir_Hook_Nasil_Kaldirilir\" >Eklenen Bir Hook Nas\u0131l Kald\u0131r\u0131l\u0131r?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#WordPress_Hooks_Kullanilirken_Nelere_Dikkat_Edilmelidir\" >WordPress Hooks Kullan\u0131l\u0131rken Nelere Dikkat Edilmelidir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.domainhizmetleri.com\/blog\/wordpress-hooks-nedir\/#Sonuc\" >Sonu\u00e7<\/a><\/li><\/ul><\/nav><\/div>\n\n<p class=\"wp-block-paragraph\">WordPress \u00e7ekirdek dosyalar\u0131n\u0131 de\u011fi\u015ftirmeden tema ve eklentilere yeni i\u015flevler kazand\u0131rmak i\u00e7in hooks ad\u0131 verilen kanca sisteminden yararlan\u0131l\u0131r. Bu yap\u0131 sayesinde geli\u015ftiriciler, WordPress \u00e7al\u0131\u015f\u0131rken belirli noktalarda kendi fonksiyonlar\u0131n\u0131 devreye sokabilir veya i\u015flenen verileri ekrana ula\u015fmadan \u00f6nce d\u00fczenleyebilir. Hooks sistemi temel olarak action ve filter olmak \u00fczere ikiye ayr\u0131l\u0131r. Bu rehberde WordPress hooks nedir, action ve filter nas\u0131l kullan\u0131l\u0131r ve aralar\u0131ndaki farklar nelerdir sorular\u0131n\u0131 ele al\u0131yoruz.<\/p>\n\n\n<figure class=\"wp-block-post-featured-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1200\" height=\"502\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Adsiz-tasarim-2026-08-12T213950.725.png\" class=\"attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"\" style=\"object-fit:cover;\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Adsiz-tasarim-2026-08-12T213950.725.png 1200w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Adsiz-tasarim-2026-08-12T213950.725-300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Adsiz-tasarim-2026-08-12T213950.725-1024x428.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Adsiz-tasarim-2026-08-12T213950.725-990x414.png 990w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"WordPress_Hooks_Nedir\"><\/span>WordPress Hooks Nedir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress hooks, belirli bir olay ger\u00e7ekle\u015fti\u011finde \u00f6zel kodlar\u0131n \u00e7al\u0131\u015ft\u0131r\u0131lmas\u0131n\u0131 sa\u011flayan ba\u011flant\u0131 noktalar\u0131d\u0131r. WordPress \u00e7ekirde\u011fi, temalar ve eklentiler \u00e7al\u0131\u015fma s\u00fcrecinin farkl\u0131 a\u015famalar\u0131nda \u00e7e\u015fitli kancalar sunar. Geli\u015ftirici, haz\u0131rlad\u0131\u011f\u0131 fonksiyonu uygun kancaya ba\u011flayarak mevcut i\u015fleyi\u015fe m\u00fcdahale edebilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hooks sistemi sayesinde WordPress \u00e7ekirdek dosyalar\u0131n\u0131n do\u011frudan d\u00fczenlenmesine gerek kalmaz. \u00c7ekirdek \u00fczerinde yap\u0131lan de\u011fi\u015fiklikler g\u00fcncelleme sonras\u0131nda kaybolabilece\u011fi gibi g\u00fcvenlik ve uyumluluk sorunlar\u0131 da olu\u015fturabilir. Kancalar ise \u00f6zelle\u015ftirmelerin tema veya eklenti i\u00e7erisinde ba\u011f\u0131ms\u0131z \u015fekilde y\u00f6netilmesine imk\u00e2n tan\u0131r.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress hooks iki temel gruba ayr\u0131l\u0131r:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Action: Belirli bir olay meydana geldi\u011finde yeni bir i\u015flem \u00e7al\u0131\u015ft\u0131r\u0131r.<\/li>\n\n\n\n<li>Filter: \u0130\u015flenen veriyi al\u0131r, de\u011fi\u015ftirir ve tekrar sisteme d\u00f6nd\u00fcr\u00fcr.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Her iki yap\u0131 benzer bir ba\u011flant\u0131 mant\u0131\u011f\u0131 kullansa da ama\u00e7lar\u0131 ve fonksiyonlar\u0131n davran\u0131\u015flar\u0131 farkl\u0131d\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-1024x429.png\" alt=\"\" class=\"wp-image-9119\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-1024x429.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-1536x643.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-990x414.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-1320x552.png 1320w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action.png 1938w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"WordPress_Action_Nedir\"><\/span>WordPress Action Nedir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Action, WordPress \u00e7al\u0131\u015fma s\u00fcrecindeki belirli bir noktada \u00f6zel fonksiyonun devreye girmesini sa\u011flar. Sayfa y\u00fcklenirken, yaz\u0131 yay\u0131mlan\u0131rken, kullan\u0131c\u0131 oturum a\u00e7arken veya y\u00f6netim paneli haz\u0131rlan\u0131rken action kancalar\u0131 kullan\u0131labilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00d6rne\u011fin bir yaz\u0131 yay\u0131mland\u0131\u011f\u0131nda kay\u0131t olu\u015fturmak, y\u00f6netim paneline bildirim eklemek veya sayfan\u0131n belirli alan\u0131nda i\u00e7erik g\u00f6stermek i\u00e7in action tercih edilebilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bir fonksiyon action kancas\u0131na <code>add_action()<\/code> ile ba\u011flan\u0131r:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">function ozel_bilgi_mesaji() {\n    echo '&lt;p>Bu i\u00e7erik \u00f6zel bir i\u015flemle eklendi.&lt;\/p>';\n}\n\nadd_action( 'wp_footer', 'ozel_bilgi_mesaji' );\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Bu \u00f6rnekte <code>ozel_bilgi_mesaji()<\/code> fonksiyonu, <code>wp_footer<\/code> action kancas\u0131 \u00e7al\u0131\u015ft\u0131\u011f\u0131nda devreye girer. B\u00f6ylece haz\u0131rlanan i\u00e7erik sitenin alt b\u00f6l\u00fcm\u00fcne eklenir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Action fonksiyonunun bir de\u011fer d\u00f6nd\u00fcrmesi zorunlu de\u011fildir. Fonksiyon genellikle \u00e7\u0131kt\u0131 \u00fcretir, kay\u0131t olu\u015fturur, bildirim g\u00f6nderir veya ba\u015fka bir i\u015flemi ba\u015flat\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter-1024x429.png\" alt=\"\" class=\"wp-image-9121\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter-1024x429.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter-300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter-1536x643.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter-990x414.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter-1320x552.png 1320w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/filter.png 1938w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"WordPress_Filter_Nedir\"><\/span>WordPress Filter Nedir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Filter, WordPress taraf\u0131ndan i\u015flenen bir verinin kullan\u0131lmadan veya g\u00f6r\u00fcnt\u00fclenmeden \u00f6nce de\u011fi\u015ftirilmesini sa\u011flar. Ba\u015fl\u0131klar, i\u00e7erikler, ba\u011flant\u0131lar, s\u0131n\u0131flar ve \u00e7e\u015fitli ayar de\u011ferleri filter kancalar\u0131 \u00fczerinden d\u00fczenlenebilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Bir fonksiyon filter kancas\u0131na <code>add_filter()<\/code> kullan\u0131larak ba\u011flan\u0131r:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">function basliga_ifade_ekle( $baslik ) {\n    return $baslik . ' | Domainhizmetleri';\n}\n\nadd_filter( 'the_title', 'basliga_ifade_ekle' );\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Bu \u00f6rnekte WordPress taraf\u0131ndan olu\u015fturulan yaz\u0131 ba\u015fl\u0131\u011f\u0131 fonksiyona aktar\u0131l\u0131r. Ba\u015fl\u0131\u011f\u0131n sonuna yeni bir ifade eklendikten sonra d\u00fczenlenmi\u015f de\u011fer <code>return<\/code> ile sisteme g\u00f6nderilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Filter fonksiyonlar\u0131nda i\u015flenen verinin geri d\u00f6nd\u00fcr\u00fclmesi gerekir. De\u011fer d\u00f6nd\u00fcr\u00fclmezse ba\u015fl\u0131k veya i\u00e7erik gibi ilgili veri bo\u015f kalabilir ve web sayfas\u0131n\u0131n i\u015fleyi\u015fi bozulabilir.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark-1024x429.png\" alt=\"\" class=\"wp-image-9122\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark-1024x429.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark-300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark-1536x643.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark-990x414.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark-1320x552.png 1320w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/action-fark.png 1938w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Action_ve_Filter_Arasindaki_Farklar_Nelerdir\"><\/span>Action ve Filter Aras\u0131ndaki Farklar Nelerdir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Action ile filter aras\u0131ndaki temel fark, kodun hangi ama\u00e7la \u00e7al\u0131\u015ft\u0131r\u0131ld\u0131\u011f\u0131d\u0131r. Action yeni bir i\u015flem ger\u00e7ekle\u015ftirirken filter mevcut veriyi d\u00f6n\u00fc\u015ft\u00fcr\u00fcr.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\u00d6zellik<\/th><th>Action<\/th><th>Filter<\/th><\/tr><\/thead><tbody><tr><td>Temel ama\u00e7<\/td><td>Bir i\u015flem ba\u015flatmak<\/td><td>Mevcut veriyi de\u011fi\u015ftirmek<\/td><\/tr><tr><td>Kullan\u0131lan fonksiyon<\/td><td><code>add_action()<\/code><\/td><td><code>add_filter()<\/code><\/td><\/tr><tr><td>De\u011fer d\u00f6nd\u00fcrme<\/td><td>Genellikle gerekli de\u011fildir<\/td><td>Zorunludur<\/td><\/tr><tr><td>\u00d6rnek kullan\u0131m<\/td><td>Bildirim veya kay\u0131t olu\u015fturma<\/td><td>Ba\u015fl\u0131k veya i\u00e7erik d\u00fczenleme<\/td><\/tr><tr><td>\u0130\u015flenen veri<\/td><td>Her zaman bulunmayabilir<\/td><td>Fonksiyona veri aktar\u0131l\u0131r<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Bir e-posta bildirimi g\u00f6ndermek veya y\u00f6netim paneline yeni bir alan eklemek gerekiyorsa action kullan\u0131labilir. Yaz\u0131 ba\u015fl\u0131\u011f\u0131n\u0131, i\u00e7erik metnini ya da bir ayar de\u011ferini de\u011fi\u015ftirmek gerekti\u011finde ise filter tercih edilir.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik-1024x429.png\" alt=\"\" class=\"wp-image-9123\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik-1024x429.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik-300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik-1536x644.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik-990x415.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik-1320x553.png 1320w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/oncelik.png 1938w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Hook_Onceligi_Nasil_Belirlenir\"><\/span>Hook \u00d6nceli\u011fi Nas\u0131l Belirlenir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ayn\u0131 hook \u00fczerine birden fazla fonksiyon ba\u011flanabilir. Bu durumda fonksiyonlar\u0131n hangi s\u0131rayla \u00e7al\u0131\u015faca\u011f\u0131 priority ad\u0131 verilen \u00f6ncelik de\u011feriyle belirlenir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Varsay\u0131lan \u00f6ncelik de\u011feri <code>10<\/code> olarak kabul edilir:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">add_action( 'wp_footer', 'ilk_fonksiyon', 5 );\nadd_action( 'wp_footer', 'ikinci_fonksiyon', 20 );\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Daha d\u00fc\u015f\u00fck \u00f6ncelik de\u011ferine sahip fonksiyon daha \u00f6nce \u00e7al\u0131\u015f\u0131r. Bu \u00f6rnekte <code>ilk_fonksiyon<\/code> \u00f6nce, <code>ikinci_fonksiyon<\/code> ise daha sonra devreye girer.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Filter kullan\u0131mlar\u0131nda s\u0131ralama daha fazla \u00f6nem ta\u015f\u0131yabilir. Bir filter taraf\u0131ndan de\u011fi\u015ftirilen veri, ayn\u0131 kancaya ba\u011fl\u0131 sonraki fonksiyona aktar\u0131l\u0131r. Bu nedenle \u00f6ncelik de\u011ferleri belirlenirken di\u011fer tema ve eklentilerin yapt\u0131\u011f\u0131 i\u015flemler de dikkate al\u0131nmal\u0131d\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"428\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/hook--1024x428.png\" alt=\"\" class=\"wp-image-9126\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/hook--1024x428.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/hook--300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/hook--990x414.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/hook-.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Hook_Fonksiyonlarina_Parametre_Nasil_Aktarilir\"><\/span>Hook Fonksiyonlar\u0131na Parametre Nas\u0131l Aktar\u0131l\u0131r?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Baz\u0131 kancalar ba\u011fl\u0131 fonksiyona birden fazla de\u011fer g\u00f6nderebilir. Fonksiyonun kabul edece\u011fi parametre say\u0131s\u0131 <code>add_action()<\/code> veya <code>add_filter()<\/code> i\u00e7erisindeki d\u00f6rd\u00fcnc\u00fc de\u011ferle belirtilir.<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">function yazi_kayit_bilgisi( $yazi_id, $yazi, $guncelleme ) {\n    if ( $guncelleme ) {\n        return;\n    }\n\n    \/\/ Yeni yaz\u0131 kaydedildi\u011finde \u00e7al\u0131\u015facak i\u015flem\n}\n\nadd_action( 'wp_insert_post', 'yazi_kayit_bilgisi', 10, 3 );\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Bu \u00f6rnekte fonksiyon \u00fc\u00e7 parametre kabul eder. Kabul edilen parametre say\u0131s\u0131 yanl\u0131\u015f tan\u0131mlan\u0131rsa ihtiya\u00e7 duyulan verilere eri\u015filemeyebilir veya PHP hatas\u0131 olu\u015fabilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kullan\u0131lacak kancan\u0131n sundu\u011fu parametreler kontrol edilmeli ve fonksiyon buna uygun \u015fekilde haz\u0131rlanmal\u0131d\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"428\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen-1024x428.png\" alt=\"\" class=\"wp-image-9124\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen-1024x428.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen-300x125.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen-1536x642.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen-990x414.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen-1320x552.png 1320w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/eklenen.png 1939w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Eklenen_Bir_Hook_Nasil_Kaldirilir\"><\/span>Eklenen Bir Hook Nas\u0131l Kald\u0131r\u0131l\u0131r?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Daha \u00f6nce ba\u011flanan fonksiyonlar <code>remove_action()<\/code> veya <code>remove_filter()<\/code> ile ilgili kancadan ayr\u0131labilir:<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">remove_action( 'wp_footer', 'ozel_bilgi_mesaji', 10 );\nremove_filter( 'the_title', 'basliga_ifade_ekle', 10 );\n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Kald\u0131rma i\u015fleminin ba\u015far\u0131l\u0131 olmas\u0131 i\u00e7in hook ad\u0131, fonksiyon ad\u0131 ve \u00f6ncelik de\u011feri ilk tan\u0131mlamayla e\u015fle\u015fmelidir. Ayr\u0131ca kald\u0131rma kodu, ilgili fonksiyon kancaya eklendikten sonra \u00e7al\u0131\u015ft\u0131r\u0131lmal\u0131d\u0131r.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anonim fonksiyonlarla eklenen i\u015flemleri sonradan kald\u0131rmak daha zor olabilir. Ba\u015fka bir tema veya eklenti taraf\u0131ndan kullan\u0131labilecek kancalarda isimlendirilmi\u015f fonksiyonlar\u0131n tercih edilmesi y\u00f6netimi kolayla\u015ft\u0131r\u0131r.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"429\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir-1024x429.png\" alt=\"\" class=\"wp-image-9125\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir-1024x429.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir-300x126.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir-1536x643.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir-990x414.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir-1320x552.png 1320w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/nelere-dikkat-edilmelidir.png 1938w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"WordPress_Hooks_Kullanilirken_Nelere_Dikkat_Edilmelidir\"><\/span>WordPress Hooks Kullan\u0131l\u0131rken Nelere Dikkat Edilmelidir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hook fonksiyonlar\u0131 k\u0131sa, anla\u015f\u0131l\u0131r ve yaln\u0131zca gerekli i\u015flemi ger\u00e7ekle\u015ftirecek \u015fekilde haz\u0131rlanmal\u0131d\u0131r. Her sayfa y\u00fcklemesinde \u00e7al\u0131\u015fan bir kancaya a\u011f\u0131r veri taban\u0131 sorgular\u0131 eklemek site performans\u0131n\u0131 olumsuz etkileyebilir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Fonksiyon adlar\u0131n\u0131n ba\u015fka tema ve eklentilerle \u00e7ak\u0131\u015fmas\u0131n\u0131 \u00f6nlemek i\u00e7in projeye \u00f6zel \u00f6n ek kullan\u0131labilir. Kullan\u0131c\u0131dan al\u0131nan veriler kaydedilmeden \u00f6nce temizlenmeli, ekrana g\u00f6nderilen \u00e7\u0131kt\u0131lar uygun \u015fekilde g\u00fcvenli h\u00e2le getirilmelidir.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u00c7ekirdek dosyalara m\u00fcdahale edilmemeli ve \u00f6zelle\u015ftirmeler tercihen \u00f6zel eklenti veya child theme i\u00e7erisinde tutulmal\u0131d\u0131r. Canl\u0131 web sitesine aktar\u0131lmadan \u00f6nce kodlar test ortam\u0131nda kontrol edilmelidir. Olu\u015fabilecek PHP hatalar\u0131na kar\u015f\u0131 de\u011fi\u015fiklik \u00f6ncesinde g\u00fcncel yedek al\u0131nmas\u0131 da \u00f6nemlidir.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Sonuc\"><\/span>Sonu\u00e7<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress hooks, \u00e7ekirdek dosyalar\u0131 de\u011fi\u015ftirmeden sistemin \u00e7al\u0131\u015fma s\u00fcrecine yeni \u00f6zellikler eklemeyi ve mevcut verileri d\u00fczenlemeyi sa\u011flar. Action kancalar\u0131 belirli olaylarda i\u015flem ba\u015flat\u0131rken filter kancalar\u0131 kendilerine aktar\u0131lan de\u011feri de\u011fi\u015ftirerek sisteme geri g\u00f6nderir. Do\u011fru kanca, \u00f6ncelik ve parametre yap\u0131s\u0131n\u0131n kullan\u0131lmas\u0131; g\u00fcvenli, uyumlu ve s\u00fcrd\u00fcr\u00fclebilir WordPress geli\u015ftirmeleri i\u00e7in \u00f6nemlidir.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.domainhizmetleri.com\/limitsiz-hosting\/\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"290\" src=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-1024x290.png\" alt=\"\" class=\"wp-image-8461\" srcset=\"https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-1024x290.png 1024w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-300x85.png 300w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-1536x435.png 1536w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-scaled.png 2048w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-990x280.png 990w, https:\/\/www.domainhizmetleri.com\/blog\/wp-content\/uploads\/Limitsiz-hosting-reklamm-1320x374.png 1320w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Domainhizmetleri olarak h\u0131zl\u0131, g\u00fcvenli ve stabil hosting altyap\u0131m\u0131zla WordPress projelerinize uygun \u00e7\u00f6z\u00fcmler sunuyoruz. WordPress siteleriniz i\u00e7in optimize edilen hosting hizmetlerimizden yararlanarak tema ve eklentilerinizi y\u00fcksek performansl\u0131 bir altyap\u0131da \u00e7al\u0131\u015ft\u0131rabilirsiniz.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress \u00e7ekirdek dosyalar\u0131n\u0131 de\u011fi\u015ftirmeden tema ve eklentilere yeni i\u015flevler kazand\u0131rmak i\u00e7in hooks ad\u0131 verilen kanca sisteminden yararlan\u0131l\u0131r. Bu yap\u0131 sayesinde geli\u015ftiriciler, WordPress \u00e7al\u0131\u015f\u0131rken belirli noktalarda kendi fonksiyonlar\u0131n\u0131 devreye sokabilir veya i\u015flenen verileri ekrana ula\u015fmadan \u00f6nce d\u00fczenleyebilir. Hooks sistemi temel olarak action ve filter olmak \u00fczere ikiye ayr\u0131l\u0131r. Bu rehberde WordPress hooks nedir, action ve filter [&hellip;]<\/p>\n","protected":false},"author":17,"featured_media":9118,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[145,137],"tags":[24,47,317],"class_list":["post-9116","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nedir-nasil","category-wordpress","tag-linux","tag-wordpress","tag-wordpress-hooks"],"views":0,"_links":{"self":[{"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/posts\/9116","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/comments?post=9116"}],"version-history":[{"count":1,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/posts\/9116\/revisions"}],"predecessor-version":[{"id":9127,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/posts\/9116\/revisions\/9127"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/media\/9118"}],"wp:attachment":[{"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/media?parent=9116"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/categories?post=9116"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.domainhizmetleri.com\/blog\/wp-json\/wp\/v2\/tags?post=9116"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}