{"id":12380235,"date":"2026-03-21T00:25:12","date_gmt":"2026-03-20T16:25:12","guid":{"rendered":"https:\/\/www.likacloud.com\/knowledge\/wordpress%e4%b8%bb%e9%a2%98%e5%bc%80%e5%8f%91%e5%ae%9e%e6%88%98%ef%bc%9a%e4%bb%8e%e9%9b%b6%e5%88%b0%e4%b8%80%e6%9e%84%e5%bb%ba%e8%87%aa%e5%ae%9a%e4%b9%89%e4%b8%bb%e9%a2%98%e7%9a%84%e5%ae%8c%e6%95%b4\/"},"modified":"2026-06-04T01:45:45","modified_gmt":"2026-06-03T17:45:45","slug":"wordpress-theme-development-guide-from-scratch-12380235","status":"publish","type":"knowledge_post","link":"https:\/\/www.likacloud.com\/tr\/knowledge\/wordpress\/wordpress-theme-development-guide-from-scratch-12380235\/","title":{"rendered":"WordPress tema geli\u015ftirme prati\u011fi: S\u0131f\u0131rdan bire \u00f6zel bir tema olu\u015fturman\u0131n kapsaml\u0131 rehberi"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Geli\u015ftirme Ortam\u0131 ve Proje Ba\u015flatma<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u00d6zel bir WordPress temas\u0131 olu\u015fturmaya ba\u015flamadan \u00f6nce, verimli bir geli\u015ftirme ortam\u0131 olu\u015fturmak \u00e7ok \u00f6nemli bir ilk ad\u0131md\u0131r. Bu sadece kodun standartlara uygun olmas\u0131n\u0131 sa\u011flamakla kalmaz, ayn\u0131 zamanda geli\u015ftirme verimlili\u011fini ve hata ay\u0131klama deneyimini de b\u00fcy\u00fck \u00f6l\u00e7\u00fcde art\u0131r\u0131r.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Yerel geli\u015ftirme ortam\u0131n\u0131n kurulmas\u0131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Yerel sunucu yaz\u0131l\u0131mlar\u0131n\u0131 kullanman\u0131z\u0131 \u00f6neririz; \u00f6rne\u011fin Local by Flywheel, MAMP veya XAMPP. Bu yaz\u0131l\u0131mlar, bilgisayar\u0131n\u0131zda PHP, MySQL ve Apache\/Nginx i\u00e7eren bir \u00e7al\u0131\u015fma ortam\u0131 h\u0131zl\u0131 bir \u015fekilde kurman\u0131za olanak tan\u0131r. Yerel sunucuyu kurduktan sonra, en yeni s\u00fcr\u00fcmdeki WordPress\u2019i indirip y\u00fckleyin. Daha sonra, WordPress\u2019in kurulum dizininde\u2026 <code data-no-auto-translation=\"\">wp-content\/themes<\/code> Klas\u00f6r\u00fcn i\u00e7inde, \u00f6rne\u011fin, yeni bir klas\u00f6r olu\u015fturun. <code data-no-auto-translation=\"\">my-custom-theme<\/code>Bu, teman\u0131z\u0131n k\u00f6k dizini olacakt\u0131r.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Temel konu dosyas\u0131n\u0131n olu\u015fturulmas\u0131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">En temel bir WordPress temas\u0131 yaln\u0131zca iki dosyaya ihtiya\u00e7 duyar:<code data-no-auto-translation=\"\">style.css<\/code> \u548c <code data-no-auto-translation=\"\">index.php<\/code>\u00d6ncelikle, bir \u015feyler olu\u015fturmak gerekir. <code data-no-auto-translation=\"\">style.css<\/code> Bu dosyan\u0131n i\u015flevi sadece stilleri tan\u0131mlamakla kalmaz; daha da \u00f6nemlisi, dosyan\u0131n ba\u015f\u0131ndaki yorum bilgileri arac\u0131l\u0131\u011f\u0131yla WordPress\u2019e teman\u0131z hakk\u0131nda bilgi verir.<\/p>\n<!-- AUTO_INTERNAL_LINKS_START --><p>Tavsiye edilen okuma <a href=\"https:\/\/www.likacloud.com\/fr\/knowledge\/wordpress\/wordpress-theme-development-guide-create-custom-website-theme-from-scratch\/\">WordPress tema geli\u015ftirme kapsaml\u0131 rehberi: S\u0131f\u0131rdan \u00f6zel WordPress web sitesi temas\u0131 olu\u015fturma.<\/a>\u3002<\/p><!-- AUTO_INTERNAL_LINKS_END -->\n\n\n\n\n<pre class=\"wp-block-code\" data-no-auto-translation=\"\"><code class=\"language-css\" data-no-auto-translation=\"\">\/*\nTheme Name: My Custom Theme\nTheme URI: https:\/\/yourdomain.com\/\nAuthor: Your Name\nAuthor URI: https:\/\/yourdomain.com\/\nDescription: \u4e00\u4e2a\u4ece\u96f6\u5f00\u59cb\u6784\u5efa\u7684\u81ea\u5b9a\u4e49 WordPress \u4e3b\u9898\u3002\nVersion: 1.0.0\nLicense: GPL v2 or later\nText Domain: my-custom-theme\n*\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code data-no-auto-translation=\"\">Text Domain<\/code> Uluslararas\u0131la\u015ft\u0131rma i\u00e7in kullan\u0131l\u0131r ve sonraki \u00e7eviri metinlerinin tan\u0131mlay\u0131c\u0131s\u0131 olarak g\u00f6rev yapar. Ard\u0131ndan, en temel olan\u0131 olu\u015fturulur. <code data-no-auto-translation=\"\">index.php<\/code> Dosya, ba\u015flang\u0131\u00e7ta sadece basit bir HTML yap\u0131s\u0131n\u0131 i\u00e7erebilir. Bu iki dosyay\u0131 tamamlad\u0131ktan sonra, WordPress aray\u00fcz\u00fcndeki \u201cG\u00f6r\u00fcn\u00fcm\u201d -&gt; \u201cTemalar\u201d b\u00f6l\u00fcm\u00fcnde bu bo\u015f temay\u0131 g\u00f6rebilir ve etkinle\u015ftirebilirsiniz.<\/p>\n<!-- AUTO_SYNCED_PATTERN_INSERT_START -->\n\r\n<div class=\"flex justify-between items-center flex-col lg:flex-row xl:flex-col 2xl:flex-row gap-6 sm:gap-8 rounded-lg border border-gray-200 dark:border-gray-700 p-4 mb-8 lg:mb-10 sm:p-6 bg-white dark:bg-gray-750 shadow-md transition-colors duration-300\"\r\n     data-link=\"https:\/\/www.likacloud.com\/tr\/tolink\/ultahost-wordpress-hosting\/\">\r\n     \r\n  <div class=\"flex flex-col gap-3 gap-4 sm:gap-6 w-full\">\r\n    <strong class=\"text-2xl font-semibold text-gray-900 dark:text-gray-200\">\r\n      UltaHost WordPress Sunucusu    <\/strong>\r\n    <div class=\"text-gray-600 dark:text-gray-300 word-word\">30 g\u00fcn iade garantisi, s\u0131n\u0131rs\u0131z bant geni\u015fli\u011fi ve veritaban\u0131 kullan\u0131m\u0131, \u00fccretsiz DDoS korumas\u0131; 3 y\u0131ll\u0131k abonelikte indirim (50%).<\/div>\r\n  <\/div>\r\n\r\n  <div class=\"flex items-center flex-col md:flex-row lg:flex-col xl:flex-row 2xl:flex-col gap-6 shrink-0\">\r\n          <a href=\"https:\/\/www.likacloud.com\/tr\/tolink\/ultahost-wordpress-hosting\/\">\r\n                  <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251227020448.webp\" alt=\"UltaHost LOGOSU\" class=\"content-promotion-card-icon h-9 min-h-9 dark:hidden\" title=\"\">\r\n          <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251229052118.webp\" alt=\"UltaHost LOGOSU\" class=\"content-promotion-card-icon h-9 min-h-9 hidden dark:block\" title=\"\">\r\n              <\/a>\r\n    \r\n    <a href=\"https:\/\/www.likacloud.com\/tr\/tolink\/ultahost-wordpress-hosting\/\"\r\n       class=\"bg-blue-500 w-full md:w-auto lg:w-full xl:w-auto 2xl:w-full text-center !text-white dark:!text-gray-200 !px-5 !py-1.5 rounded-full hover:bg-blue-600 transition-colors\">\r\n       Sayfaya eri\u015fin.    <\/a>\r\n  <\/div>\r\n<\/div>\n<!-- AUTO_SYNCED_PATTERN_INSERT_END -->\n\n\n\n\n\n<h2 class=\"wp-block-heading\">Konu Yap\u0131s\u0131 ve \u015eablon Seviyeleri<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress\u2019in \u015fablon hiyerar\u015fisini anlamak, temalar geli\u015ftirmenin temelidir. Bu hiyerar\u015fi, WordPress\u2019in farkl\u0131 isteklere (\u00f6rne\u011fin makale sayfalar\u0131, sayfalar, kategori ar\u015fivleri) g\u00f6re hangi \u015fablon dosyas\u0131n\u0131 otomatik olarak se\u00e7ip kullanaca\u011f\u0131n\u0131 belirler.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Temel \u015fablon dosyalar\u0131 ve bunlar\u0131n i\u015flevleri<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress, \u015fablon dosyalar\u0131n\u0131 belirli bir s\u0131rayla arar. En temel i\u015flem ak\u0131\u015f\u0131, en \u00f6zelle\u015ftirilmi\u015f \u015fablodan en genel \u015fabloya do\u011fru ilerlemektir. \u00d6rne\u011fin, tek bir makaleye eri\u015fildi\u011finde, WordPress s\u0131ras\u0131yla \u015funlar\u0131 arar:<code data-no-auto-translation=\"\">single-post-{id}.php<\/code>, <code data-no-auto-translation=\"\">single-post.php<\/code>, <code data-no-auto-translation=\"\">single.php<\/code>Son olarak, <code data-no-auto-translation=\"\">singular.php<\/code>E\u011fer hi\u00e7biri bulunamazsa, o zaman \u015fu y\u00f6ntemi kullan\u0131n: <code data-no-auto-translation=\"\">index.php<\/code>Ayn\u0131 \u015fekilde, ana sayfa \u00f6ncelikle aramay\u0131 ba\u015flatacakt\u0131r. <code data-no-auto-translation=\"\">front-page.php<\/code>Ve sonra gelir\u2026 <code data-no-auto-translation=\"\">home.php<\/code>Bu hiyerar\u015fik ili\u015fkiyi kavramak, belirli \u015fablon dosyalar\u0131 olu\u015fturarak farkl\u0131 sayfalar\u0131n d\u00fczenini hassas bir \u015fekilde kontrol etmenizi sa\u011flar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Yayg\u0131n olarak kullan\u0131lan \u015fablon dosyalar\u0131 olu\u015fturun.<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Bunun d\u0131\u015f\u0131nda\u2026 <code data-no-auto-translation=\"\">index.php<\/code>Tam bir tema yap\u0131s\u0131 olu\u015fturmak i\u00e7in a\u015fa\u011f\u0131daki temel \u015fablon dosyalar\u0131n\u0131 kademeli olarak olu\u015fturmal\u0131s\u0131n\u0131z:<br \/>\n- <code data-no-auto-translation=\"\">header.php<\/code>Web sitesinin \u00fcst k\u0131sm\u0131, \u015funlar\u0131 i\u00e7erir: <code data-no-auto-translation=\"\">&lt;head&gt;<\/code> B\u00f6lge ve \u00fcst men\u00fc.<br \/>\n- <code data-no-auto-translation=\"\">footer.php<\/code>Web sitesinin alt k\u0131sm\u0131.<br \/>\n- <code data-no-auto-translation=\"\">sidebar.php<\/code>: Yan men\u00fc.<br \/>\n- <code data-no-auto-translation=\"\">functions.php<\/code>Konunun i\u015flevsel dosyas\u0131d\u0131r; i\u015flevlerin eklenmesi, men\u00fclerin ve ara\u00e7 \u00e7ubuklar\u0131n\u0131n kaydedilmesi gibi i\u015flemler i\u00e7in kullan\u0131l\u0131r.<br \/>\n- <code data-no-auto-translation=\"\">page.php<\/code>:Bir sayfan\u0131n renderlanmas\u0131 i\u00e7in kullan\u0131l\u0131r.<br \/>\n- <code data-no-auto-translation=\"\">single.php<\/code>:Bir makalenin renderlanmas\u0131 i\u00e7in kullan\u0131l\u0131r.<br \/>\n- <code data-no-auto-translation=\"\">archive.php<\/code>Kategorileri, etiketleri, yazarlar\u0131 ve di\u011fer ar\u015fiv sayfalar\u0131n\u0131 renderlemek i\u00e7in kullan\u0131l\u0131r.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\u5728 <code data-no-auto-translation=\"\">index.php<\/code> Burada, kullanabilirsiniz. <code data-no-auto-translation=\"\">get_header()<\/code>, <code data-no-auto-translation=\"\">get_footer()<\/code>, <code data-no-auto-translation=\"\">get_sidebar()<\/code> Bu mod\u00fcler b\u00f6l\u00fcmleri dahil etmek ve kod tekrar kullan\u0131m\u0131n\u0131 sa\u011flamak i\u00e7in \u015fablon etiketlerini kullan\u0131n.<\/p>\n<!-- AUTO_INTERNAL_LINKS_START --><p>Tavsiye edilen okuma <a href=\"https:\/\/www.likacloud.com\/fr\/knowledge\/wordpress\/wordpress-theme-development-guide-from-beginner-to-expert-12379172\/\">WordPress tema geli\u015ftirmeye derinlemesine bir inceleme: Temel tekniklerden ileri d\u00fczeye kadar bir rehber.<\/a>\u3002<\/p><!-- AUTO_INTERNAL_LINKS_END -->\n\n\n\n\n<h2 class=\"wp-block-heading\">\u00c7ekirdek \u00d6zellikler ve Tema Se\u00e7enekleri<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code data-no-auto-translation=\"\">functions.php<\/code> Dosya, teman\u0131z\u0131n \u201cbeyni\u201ddir; t\u00fcm arka u\u00e7 mant\u0131\u011f\u0131 ve i\u015flevsel geli\u015ftirmeler burada ger\u00e7ekle\u015ftirilir. Tema ba\u015flat\u0131ld\u0131\u011f\u0131nda otomatik olarak y\u00fcklenir.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Konu deste\u011fi ve kay\u0131t \u00f6zelli\u011fi ekleyin.<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">ge\u00e7mek (bir fatura veya tefti\u015f vb.) <code data-no-auto-translation=\"\">add_theme_support()<\/code> Bu fonksiyonlar arac\u0131l\u0131\u011f\u0131yla, bir teman\u0131n destekledi\u011fi \u00e7e\u015fitli \u00f6zellikleri tan\u0131mlayabilirsiniz. \u00d6rne\u011fin, makale \u00f6zetlerinin (\u00f6zel g\u00f6rsellerin) g\u00f6sterilmesini etkinle\u015ftirmek, modern temalar i\u00e7in standart bir \u00f6zelliktir.<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-auto-translation=\"\"><code class=\"language-php\" data-no-auto-translation=\"\">function my_theme_setup() {\n    \/\/ \u6dfb\u52a0\u6587\u7ae0\u548c\u8bc4\u8bba\u7684 RSS feed \u94fe\u63a5\u5230 head\n    add_theme_support( &#039;automatic-feed-links&#039; );\n    \/\/ \u542f\u7528\u6587\u7ae0\u7f29\u7565\u56fe\u529f\u80fd\n    add_theme_support( &#039;post-thumbnails&#039; );\n    \/\/ \u542f\u7528\u81ea\u5b9a\u4e49\u83dc\u5355\u529f\u80fd\n    add_theme_support( &#039;menus&#039; );\n    \/\/ \u8ba9 WordPress \u7ba1\u7406\u6587\u6863\u6807\u9898\n    add_theme_support( &#039;title-tag&#039; );\n    \/\/ \u542f\u7528\u5bf9\u53e4\u817e\u5821\u7f16\u8f91\u5668\u7684\u5bbd\u5bf9\u9f50\u548c\u989c\u8272\u652f\u6301\n    add_theme_support( &#039;align-wide&#039; );\n    add_theme_support( &#039;editor-color-palette&#039;, array( \/* ... *\/ ) );\n}\nadd_action( &#039;after_setup_theme&#039;, &#039;my_theme_setup&#039; );<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Ayr\u0131ca, navigasyon men\u00fcs\u00fc yerlerini ve ara\u00e7 \u00e7ubu\u011fu (yan \u00e7ubuk) b\u00f6lgesini de kaydetmeniz gerekiyor.<\/p>\n<!-- AUTO_SYNCED_PATTERN_INSERT_START -->\n\r\n<div class=\"flex justify-between items-center flex-col lg:flex-row xl:flex-col 2xl:flex-row gap-6 sm:gap-8 rounded-lg border border-gray-200 dark:border-gray-700 p-4 mb-8 lg:mb-10 sm:p-6 bg-white dark:bg-gray-750 shadow-md transition-colors duration-300\"\r\n     data-link=\"https:\/\/www.likacloud.com\/tr\/tolink\/hosting-shared-hosting\/\">\r\n     \r\n  <div class=\"flex flex-col gap-3 gap-4 sm:gap-6 w-full\">\r\n    <strong class=\"text-2xl font-semibold text-gray-900 dark:text-gray-200\">\r\n      hosting.com Payla\u015f\u0131ml\u0131 Bar\u0131nd\u0131rma    <\/strong>\r\n    <div class=\"text-gray-600 dark:text-gray-300 word-word\">AMD EPYC CPU'lar, NVMe SSD depolama ve LiteSpeed ile y\u00fcksek performans, 7\/24, 7x7 uzman \u015firket i\u00e7i destek, SSL, kaba kuvvet, k\u00f6t\u00fc ama\u00e7l\u0131 yaz\u0131l\u0131m ve DDoS korumas\u0131 dahil geli\u015fmi\u015f g\u00fcvenlik \u00f6nlemleri, 73%'ye kadar tasarruf<\/div>\r\n  <\/div>\r\n\r\n  <div class=\"flex items-center flex-col md:flex-row lg:flex-col xl:flex-row 2xl:flex-col gap-6 shrink-0\">\r\n          <a href=\"https:\/\/www.likacloud.com\/tr\/tolink\/hosting-shared-hosting\/\">\r\n                  <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/09\/20250901222940.svg\" alt=\"hosting.com LOGO\" class=\"content-promotion-card-icon h-9 min-h-9 dark:hidden\" title=\"\">\r\n          <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251228220957.webp\" alt=\"hosting.com LOGO\" class=\"content-promotion-card-icon h-9 min-h-9 hidden dark:block\" title=\"\">\r\n              <\/a>\r\n    \r\n    <a href=\"https:\/\/www.likacloud.com\/tr\/tolink\/hosting-shared-hosting\/\"\r\n       class=\"bg-blue-500 w-full md:w-auto lg:w-full xl:w-auto 2xl:w-full text-center !text-white dark:!text-gray-200 !px-5 !py-1.5 rounded-full hover:bg-blue-600 transition-colors\">\r\n       Sayfaya eri\u015fin.    <\/a>\r\n  <\/div>\r\n<\/div>\n<!-- AUTO_SYNCED_PATTERN_INSERT_END -->\n\n\n\n\n\n<pre class=\"wp-block-code\" data-no-auto-translation=\"\"><code class=\"language-php\" data-no-auto-translation=\"\">&#039;,\n        &#039;after_widget&#039;  =&amp;gt; &#039;&lt;\/tr&gt;&#039;,\n    ) );\n}\nadd_action( &#039;widgets_init&#039;, &#039;my_theme_widgets_init&#039; );&#039;&lt;section id=&quot;%1$s&quot; class=&quot;widget %2$s&quot;&gt;&#039;,\n        &#039;after_widget&#039;  =&amp;gt; &#039;&lt;\/section&gt;&#039;,\n        &#039;before_title&#039;  =&amp;gt; &#039;&lt;h2 class=&quot;widget-title&quot;&gt;&#039;,\n        &#039;after_title&#039;   =&amp;gt; &#039;&lt;\/h2&gt;&#039;,\n    ) );\n}\nadd_action( &#039;widgets_init&#039;, &#039;my_theme_widgets_init&#039; );<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Stil \u015femalar\u0131n\u0131 ve betik dosyalar\u0131n\u0131 i\u00e7e aktar\u0131n.<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Do\u011fru kaynaklar\u0131n dahil edilme y\u00f6ntemi \u015fu \u015fekildedir: <code data-no-auto-translation=\"\">wp_enqueue_style()<\/code> \u548c <code data-no-auto-translation=\"\">wp_enqueue_script()<\/code> \u0130\u015flevleri, onlar\u0131 monte etmeye yard\u0131mc\u0131 olacak bir fonksiyon. <code data-no-auto-translation=\"\">wp_enqueue_scripts<\/code> Kancada.<\/p>\n\n\n\n<pre class=\"wp-block-code\" data-no-auto-translation=\"\"><code class=\"language-php\" data-no-auto-translation=\"\">function my_theme_scripts() {\n    \/\/ \u5f15\u5165\u4e3b\u6837\u5f0f\u8868\n    wp_enqueue_style( &#039;my-theme-style&#039;, get_stylesheet_uri(), array(), wp_get_theme()-&gt;get(&#039;Version&#039;) );\n\n\/\/ \u5f15\u5165\u81ea\u5b9a\u4e49 JavaScript \u6587\u4ef6\n    wp_enqueue_script( &#039;my-theme-navigation&#039;, get_template_directory_uri() . &#039;\/js\/navigation.js&#039;, array(), wp_get_theme()-&gt;get(&#039;Version&#039;), true );\n\n\/\/ \u5982\u679c\u8bc4\u8bba\u529f\u80fd\u5f00\u542f\u4e14\u662f\u5355\u7bc7\u6587\u7ae0\/\u9875\u9762\uff0c\u52a0\u8f7d\u8bc4\u8bba\u56de\u590d\u811a\u672c\n    if ( is_singular() &amp;&amp; comments_open() &amp;&amp; get_option( &#039;thread_comments&#039; ) ) {\n        wp_enqueue_script( &#039;comment-reply&#039; );\n    }\n}\nadd_action( &#039;wp_enqueue_scripts&#039;, &#039;my_theme_scripts&#039; );<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">D\u00f6ng\u00fcler ve \u015eablon Etiketleri<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u201cD\u00f6ng\u00fcler\u201d, WordPress\u2019in veritaban\u0131ndan i\u00e7erik \u00e7ekmek ve bu i\u00e7eri\u011fi sayfada g\u00f6stermek i\u00e7in kulland\u0131\u011f\u0131 varsay\u0131lan mekanizmad\u0131r. D\u00f6ng\u00fcleri anlamak ve do\u011fru bir \u015fekilde kullanmak, dinamik i\u00e7eriklerin sunulmas\u0131n\u0131n temelidir.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Standart bir d\u00f6ng\u00fcn\u00fcn yap\u0131s\u0131<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u015eablon dosyalar\u0131nda s\u0131k s\u0131k a\u015fa\u011f\u0131dakine benzer bir kod yap\u0131s\u0131 g\u00f6r\u00fcrs\u00fcn\u00fcz; bu, WordPress\u2019in ana d\u00f6ng\u00fcs\u00fcd\u00fcr.<\/p>\n<!-- AUTO_INTERNAL_LINKS_START --><p>Tavsiye edilen okuma <a href=\"https:\/\/www.likacloud.com\/fr\/knowledge\/wordpress\/wordpress-theme-development-from-beginner-to-expert-2026\/\">WordPress Tema Geli\u015ftirme: S\u0131f\u0131rdan Ba\u015flayarak \u00d6zel Temalar Olu\u015fturmak<\/a>\u3002<\/p><!-- AUTO_INTERNAL_LINKS_END -->\n\n\n\n\n<pre class=\"wp-block-code\" data-no-auto-translation=\"\"><code class=\"language-php\" data-no-auto-translation=\"\">&lt;article id=&quot;post-&lt;?php the_ID(); ?&gt;&quot; no numeric noise key 1008&gt;\n            &lt;header class=&quot;entry-header&quot;&gt;\n                &lt;h2 class=&quot;entry-title&quot;&gt;&lt;a href=&quot;\/tr\/&lt;\/?php the_permalink(); ?&gt;&quot;&gt;&lt;?php the_title(); ?&gt;&lt;\/a&gt;&lt;\/h2&gt;\n            &lt;\/header&gt;\n            &lt;div class=&quot;entry-content&quot;&gt;\n                &lt;?php the_content(); ?&gt;\n            &lt;\/div&gt;\n        &lt;\/article&gt;\n    \n    &lt;p&gt;&lt;p&gt;&lt;strong&gt;&Uuml;zg&uuml;n&uuml;m, herhangi bir i&ccedil;erik bulunamad\u0131.&lt;\/strong&gt;&lt;\/p&gt;&lt;\/p&gt;\n&lt;?php endif; ?&gt;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><code data-no-auto-translation=\"\">have_posts()<\/code> \u548c <code data-no-auto-translation=\"\">the_post()<\/code> Fonksiyonlar, d\u00f6ng\u00fcn\u00fcn nas\u0131l ilerleyece\u011fini kontrol eder.<code data-no-auto-translation=\"\">the_title()<\/code>, <code data-no-auto-translation=\"\">the_content()<\/code>, <code data-no-auto-translation=\"\">the_permalink()<\/code> `` ve ` `%&gt;` gibi \u015fablon etiketleri, mevcut makalenin belirli bilgilerini \u00e7\u0131karmak i\u00e7in kullan\u0131l\u0131r. D\u00f6ng\u00fcn\u00fcn d\u0131\u015f\u0131nda ise, bu etiketleri istedi\u011finiz yerde kullanabilirsiniz. <code data-no-auto-translation=\"\">is_home()<\/code>, <code data-no-auto-translation=\"\">is_single()<\/code>, <code data-no-auto-translation=\"\">is_page()<\/code> Belirli ko\u015fullara dayal\u0131 etiketler kullanarak mevcut sayfa t\u00fcr\u00fcn\u00fc belirleyebilir ve buna g\u00f6re farkl\u0131 mant\u0131k i\u015flemleri ger\u00e7ekle\u015ftirebilirsiniz.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u00d6zelle\u015ftirilmi\u015f sorgular ve d\u00f6ng\u00fcler<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Bazen ana d\u00f6ng\u00fcn\u00fcn d\u0131\u015f\u0131ndaki i\u00e7erikleri de g\u00f6stermeniz gerekebilir; \u00f6rne\u011fin, ana sayfada belirli bir kategorideki makaleleri g\u00f6stermek isteyebilirsiniz. Bu durumda \u015fu y\u00f6ntemi kullanabilirsiniz: <code data-no-auto-translation=\"\">WP_Query<\/code> Kendi sorgular\u0131n\u0131z\u0131 olu\u015fturmak i\u00e7in s\u0131n\u0131flar kullanabilirsiniz.<\/p>\n<!-- AUTO_SYNCED_PATTERN_INSERT_START -->\n\r\n<div class=\"flex justify-between items-center flex-col lg:flex-row xl:flex-col 2xl:flex-row gap-6 sm:gap-8 rounded-lg border border-gray-200 dark:border-gray-700 p-4 mb-8 lg:mb-10 sm:p-6 bg-white dark:bg-gray-750 shadow-md transition-colors duration-300\"\r\n     data-link=\"https:\/\/www.likacloud.com\/tr\/tolink\/interserver-webhosting\/\">\r\n     \r\n  <div class=\"flex flex-col gap-3 gap-4 sm:gap-6 w-full\">\r\n    <strong class=\"text-2xl font-semibold text-gray-900 dark:text-gray-200\">\r\n      InterServer Payla\u015f\u0131ml\u0131 Bar\u0131nd\u0131rma    <\/strong>\r\n    <div class=\"text-gray-600 dark:text-gray-300 word-word\">Payla\u015f\u0131ml\u0131 hosting ayl\u0131k $2.50 USD, ilk ay $0.1 USD promosyon kodu tryinterserver, 461 bulut uygulamas\u0131 komut dosyas\u0131, tek t\u0131klamayla y\u00fckleme.<\/div>\r\n  <\/div>\r\n\r\n  <div class=\"flex items-center flex-col md:flex-row lg:flex-col xl:flex-row 2xl:flex-col gap-6 shrink-0\">\r\n          <a href=\"https:\/\/www.likacloud.com\/tr\/tolink\/interserver-webhosting\/\">\r\n                  <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251228045033.svg\" alt=\"InterServer LOGO.\" class=\"content-promotion-card-icon h-9 min-h-9 dark:hidden\" title=\"\">\r\n          <img decoding=\"async\" src=\"https:\/\/www.likacloud.com\/wp-content\/uploads\/2025\/12\/20251229054830.webp\" alt=\"InterServer LOGO.\" class=\"content-promotion-card-icon h-9 min-h-9 hidden dark:block\" title=\"\">\r\n              <\/a>\r\n    \r\n    <a href=\"https:\/\/www.likacloud.com\/tr\/tolink\/interserver-webhosting\/\"\r\n       class=\"bg-blue-500 w-full md:w-auto lg:w-full xl:w-auto 2xl:w-full text-center !text-white dark:!text-gray-200 !px-5 !py-1.5 rounded-full hover:bg-blue-600 transition-colors\">\r\n       Sayfaya eri\u015fin.    <\/a>\r\n  <\/div>\r\n<\/div>\n<!-- AUTO_SYNCED_PATTERN_INSERT_END -->\n\n\n\n\n\n<pre class=\"wp-block-code\" data-no-auto-translation=\"\"><code class=\"language-php\" data-no-auto-translation=\"\">&lt;?php\n$custom_query = new WP_Query( array(\n    &#039;category_name&#039; =&gt; &#039;featured&#039;,\n    &#039;posts_per_page&#039; =&gt; 3,\n) );\nif ( $custom_query-&gt;have_posts() ) :\n    while ( $custom_query-&gt;have_posts() ) : $custom_query-&gt;the_post();\n        \/\/ \u8f93\u51fa\u6587\u7ae0\u5185\u5bb9...\n    endwhile;\n    wp_reset_postdata(); \/\/ \u91cd\u7f6e\u5168\u5c40 $post \u6570\u636e\nendif;\n?&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u00d6zetle.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">S\u0131f\u0131rdan bir WordPress temas\u0131 geli\u015ftirmek, ortam kurulumundan, yap\u0131 planlamas\u0131na, i\u015flevlerin ger\u00e7ekle\u015ftirilmesinden dinamik i\u00e7eriklerin g\u00f6sterilmesine kadar t\u00fcm s\u00fcreci kapsayan sistematik bir i\u015ftir. Temel nokta, sayfalar\u0131n renderlanma mant\u0131\u011f\u0131n\u0131 belirleyen \u015fablon hiyerar\u015fisi mekanizmas\u0131n\u0131 anlamakt\u0131r; bu mekanizmay\u0131 ustaca kullanmak \u00e7ok \u00f6nemlidir. <code data-no-auto-translation=\"\">functions.php<\/code> Teman\u0131n i\u015flevselli\u011fini geni\u015fletin ve verileri \u00e7\u0131karmak i\u00e7in \u201cd\u00f6ng\u00fcler\u201d (loops) ad\u0131 verilen temel yap\u0131lar\u0131 \u00f6\u011frenin. WordPress kodlama standartlar\u0131na ve en iyi uygulamalar\u0131na uymak \u2013 \u00f6rne\u011fin kaynaklar\u0131 do\u011fru bir \u015fekilde dahil etmek, \u00e7eviri fonksiyonlar\u0131n\u0131 kullanmak, yeterli tema deste\u011fi eklemek \u2013 teman\u0131n\u0131z\u0131n sa\u011flam, verimli ve kolayca s\u00fcrd\u00fcr\u00fclebilir olmas\u0131n\u0131 sa\u011flayacakt\u0131r. Bu rehberdeki ad\u0131mlar\u0131 uygulayarak, yap\u0131sal olarak b\u00fct\u00fcnl\u00fckl\u00fc ve i\u015flevsel olarak eksiksiz bir \u00f6zel tema olu\u015fturabilir ve daha ileri seviye geli\u015ftirmeler i\u00e7in sa\u011flam bir temel atabilirsiniz.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">S\u0131k\u00e7a Sorulan Sorular.<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">WordPress temas\u0131 geli\u015ftirmek i\u00e7in hangi temel teknolojileri bilmek gerekiyor?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">PHP\u2019nin (arka u\u00e7 mant\u0131\u011f\u0131 ve \u015fablonlar i\u00e7in), HTML\/CSS\u2019nin (yap\u0131 ve stil i\u00e7in) ve JavaScript\u2019in (etkile\u015fim i\u00e7in) temel bilgilerine sahip olman\u0131z gerekmektedir. En \u00f6nemlisi, WordPress\u2019in temel kavramlar\u0131n\u0131 anlaman\u0131zd\u0131r; \u00f6rne\u011fin \u015fablon hiyerar\u015fisi, hook\u2019lar (Eklentiler), eylemler ve filtreler (Actions &amp; Filters), The Loop (D\u00f6ng\u00fc) ve WordPress taraf\u0131ndan sa\u011flanan \u00e7e\u015fitli fonksiyonlar ve s\u0131n\u0131flar.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Nas\u0131l temam\u0131 Gutenberg edit\u00f6r\u00fcn\u00fc destekleyecek hale getirebilirim?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\u00d6ncelikle, <code data-no-auto-translation=\"\">functions.php<\/code> \u00c7ince'de kullan\u0131l\u0131r. <code data-no-auto-translation=\"\">add_theme_support()<\/code> \u0130lgili \u00f6zellikleri etkinle\u015ftirin, \u00f6rne\u011fin\u2026 <code data-no-auto-translation=\"\">editor-styles<\/code>\u3001<code data-no-auto-translation=\"\">align-wide<\/code> Ayr\u0131ca, \u00f6zel bir renk paneli de bulunmaktad\u0131r. \u0130kincisi, edit\u00f6r i\u00e7in \u00f6zel bir stil \u015femas\u0131 olu\u015fturulmu\u015f ve bunun arac\u0131l\u0131\u011f\u0131yla\u2026 <code data-no-auto-translation=\"\">add_editor_style()<\/code> Fonksiyonlar\u0131n tan\u0131t\u0131lmas\u0131, arka u\u00e7 d\u00fczenleyicinin g\u00f6rsel deneyiminin \u00f6n u\u00e7 ile tutarl\u0131 olmas\u0131n\u0131 sa\u011flar. Ayr\u0131ca, daha zengin d\u00fczenleme \u00f6zellikleri sunmak i\u00e7in Blok Stilleri (Block Styles) veya \u00d6zel Bloklar (Custom Blocks) olu\u015fturabilirsiniz.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Konu geli\u015ftirme s\u00fcrecinde \u00e7ok dilli destek nas\u0131l sa\u011flan\u0131r?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">WordPress, uluslararas\u0131la\u015ft\u0131rma (i18n) i\u015flemleri i\u00e7in GNU gettext \u00e7er\u00e7evesini kullan\u0131r. Kod i\u00e7inde, \u00e7evrilmeye ihtiya\u00e7 duyan t\u00fcm metinler belirli fonksiyonlar kullan\u0131larak sar\u0131lmal\u0131d\u0131r. <code data-no-auto-translation=\"\">()<\/code> PHP\u2019de \u00e7eviri yapmak i\u00e7in kullan\u0131l\u0131r.<code data-no-auto-translation=\"\">_e()<\/code> \u00c7eviri i\u00e7in kullan\u0131l\u0131r ve do\u011frudan geri yans\u0131t\u0131l\u0131r.<code data-no-auto-translation=\"\">esc_html()<\/code> HTML\u2019yi \u00e7evirmek ve escape i\u015flemlerini yapmak i\u00e7in kullan\u0131l\u0131r. JavaScript\u2019te bu i\u015flevler i\u00e7in belirli fonksiyonlar kullan\u0131l\u0131r. <code data-no-auto-translation=\"\">wp.i18n.__()<\/code>Daha sonra, Poedit gibi ara\u00e7lar\u0131 kullanarak bu metinleri \u00e7\u0131kar\u0131n ve .pot dosyalar\u0131n\u0131 olu\u015fturun; ard\u0131ndan bu metinleri .po ve .mo dosyalar\u0131na \u00e7evirin. Son olarak, <code data-no-auto-translation=\"\">style.css<\/code> Ba\u015fl\u0131k k\u0131sm\u0131 do\u011fru bir \u015fekilde ayarlanm\u0131\u015f. <code data-no-auto-translation=\"\">Text Domain<\/code> Ve ayr\u0131ca\u2026 <code data-no-auto-translation=\"\">functions.php<\/code> \u00c7ince'de kullan\u0131l\u0131r. <code data-no-auto-translation=\"\">load_theme_textdomain()<\/code> \u00c7eviri dosyas\u0131 y\u00fckleniyor.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Kendi temama \u00f6zel ayarlar sayfas\u0131 nas\u0131l eklerim?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Basit se\u00e7enekler i\u00e7in, WordPress\u2019in yerle\u015fik \u201c\u00d6zelle\u015ftirici\u201d (Customizer) API\u2019sini kullanabilirsiniz; bu API, kullan\u0131c\u0131 dostu ve ger\u00e7ek zamanl\u0131 bir \u00f6nizleme aray\u00fcz\u00fc sunar. Daha karma\u015f\u0131k ihtiya\u00e7lar i\u00e7in ise \u201cSe\u00e7enek Sayfas\u0131\u201d (Options Page) tabanl\u0131 ayar aray\u00fczleri olu\u015fturulabilir. Ayarlar\u0131n g\u00fcvenli bir \u015fekilde kaydedilmesi, do\u011frulanmas\u0131 ve y\u00f6netilmesi amac\u0131yla WordPress Settings API\u2019sinin kullan\u0131lmas\u0131 \u00f6nerilir. Ayr\u0131ca, \u00f6zel alanlar (custom fields) olu\u015fturma ve Se\u00e7enek Sayfalar\u0131\u2019n\u0131 y\u00f6netme s\u00fcrecini b\u00fcy\u00fck \u00f6l\u00e7\u00fcde kolayla\u015ft\u0131ran ACF (Advanced Custom Fields) veya Carbon Fields gibi \u00fc\u00e7\u00fcnc\u00fc parti k\u00fct\u00fcphanelerden de yararlanabilirsiniz.<\/p>","protected":false},"excerpt":{"rendered":"<p>Bu makale, s\u0131f\u0131rdan ba\u015flayarak WordPress \u00f6zel temas\u0131 geli\u015ftirmenin t\u00fcm s\u00fcrecini ayr\u0131nt\u0131l\u0131 olarak a\u00e7\u0131klar. \u00d6ncelikle yerel geli\u015ftirme ortam\u0131n\u0131n nas\u0131l kurulaca\u011f\u0131n\u0131 ve tema projesinin ba\u015flat\u0131lmas\u0131n\u0131, style.css ve index.php \u00e7ekirdek dosyalar\u0131n\u0131n olu\u015fturulmas\u0131n\u0131 a\u00e7\u0131klar. Daha sonra WordPress \u015fablon hiyerar\u015fisi mekanizmas\u0131n\u0131 detayl\u0131 olarak analiz eder ve header.php, footer.php gibi \u00f6nemli \u015fablon dosyalar\u0131n\u0131n nas\u0131l olu\u015fturulaca\u011f\u0131n\u0131 a\u00e7\u0131klar. Son olarak, functions.php arac\u0131l\u0131\u011f\u0131yla tema deste\u011finin ve \u00e7ekirdek i\u015flevlerinin eklenece\u011fini ve geli\u015ftiricilere tam i\u015flevsellikte bir tema olu\u015fturma konusunda sistematik rehberlik sa\u011flad\u0131\u011f\u0131n\u0131 \u00f6zetler.<\/p>","protected":false},"author":7,"featured_media":0,"template":"","meta":{"_acf_changed":false,"footnotes":""},"tags":[638,436,2149,1906,805],"knowledge_category":[280],"class_list":["post-12380235","knowledge_post","type-knowledge_post","status-publish","hentry","tag-wordpress-theme-development","tag-wordpress-tutorial","tag-theme-development-guide","tag-template-hierarchy","tag-custom-themes","knowledge_category-wordpress"],"acf":{"site_seo_keywords":"WordPress\u4e3b\u9898\u5f00\u53d1,\u81ea\u5b9a\u4e49\u4e3b\u9898,\u6a21\u677f\u5c42\u7ea7,functions.php,\u4e3b\u9898\u7ed3\u6784,\u672c\u5730\u5f00\u53d1\u73af\u5883,\u4ece\u96f6\u5f00\u59cb\u5efa\u4e3b\u9898"},"_links":{"self":[{"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/knowledge_posts\/12380235","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/knowledge_posts"}],"about":[{"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/types\/knowledge_post"}],"author":[{"embeddable":true,"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/users\/7"}],"version-history":[{"count":1,"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/knowledge_posts\/12380235\/revisions"}],"predecessor-version":[{"id":12405027,"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/knowledge_posts\/12380235\/revisions\/12405027"}],"wp:attachment":[{"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/media?parent=12380235"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/tags?post=12380235"},{"taxonomy":"knowledge_category","embeddable":true,"href":"https:\/\/www.likacloud.com\/tr\/wp-json\/wp\/v2\/knowledge_category?post=12380235"}],"curies":[{"name":"WP","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}