Ara sıra kategoriler ile alakalı konu başlıklarına denk geliyordum cevaplamaya vakit bulamıyordum.
Konu biraz uzun oldu umarım anlaşılır olmuştur işinize yarar ümidiyle..
Bu konuyla birlikte;
"Sınırsız alt kategori mantığında ihtiyaç duyabileceğiniz yöntemleri sırasıyla örneklendiriyorum"
Yardımcı dosyamız category_helper.php
En aşağıda içeriğini veriyorum.
Projemizin "config.php" veya "header.php" olabilir
En üstüne dahil ediyoruz
<?php
include 'category_helper.php';
$query = $db->query('SELECT * FROM category ORDER BY sort_by ASC');
$categoryData = array(
'row' => array(),
'slug' => array(),
'parent' => array()
);
while ($row = $query->fetch_object()) {
$categoryData['row'][$row->id] = $row;
if ($row->slug) {
$categoryData['slug'][$row->slug] = $row;
}
$categoryData['parent'][$row->parent_id][] = $row;
}
?>### "ID" ile X kategoriye ulaşmak.get_category(30);
Sonuç;

### "Slug" ile X kategoriye ulaşmak.
get_category('google-optimizasyon');
Sonuç;

### Kategori seçerken değerleri arasındaki seçilen fieldleri getirmek.
get_category('site-haritalari', array('id', 'title'));
Sonuç;

### Kategorinin bulunduğu dizini listelemek (Seçilen kategorinin üst kategorilerinin listesini almak, breadcrumb yapmak isteyebilirsiniz)
get_category_path('site-haritalari', array('id', 'slug', 'title'));
Sonuç;

### Kategori içindekileri/ağacını listelemek (Seçilen içindeki tüm alt kategorileri listelemek)
get_category_tree('server-side-programlama', array('id', 'title'));
Sonuç;

### Select olarak listelemek
echo '<select style="margin:10px">'; echo get_category_select(); echo '</select>';Sonuç;

Örnek olarak R10 kategori listesini baz aldım MySQL üzerindeki yapısı ve verileri.
CREATE TABLE IF NOT EXISTS `category` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parent_id` int(11) DEFAULT '0',
`slug` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`title` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
`sort_by` tinyint(1) DEFAULT '0',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=MyISAM AUTO_INCREMENT=367 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC;
REPLACE INTO `category` (`id`, `parent_id`, `slug`, `title`, `sort_by`) VALUES
(1, 0, 'client-side-programlama', 'Client-Side Programlama', 14),
(2, 1, 'flash-amp-action-script', 'Flash & Action Script', 3),
(3, 2, 'ucretsiz-fla-dosyalari', 'Ücretsiz Fla Dosyaları', 0),
(4, 1, 'html-css-xml', 'HTML - CSS - XML', 2),
(5, 4, 'bootstrap', 'Bootstrap', 0),
(6, 4, 'web-2-0', 'Web 2.0', 1),
(7, 1, 'javascript-programlama', 'JavaScript Programlama', 0),
(8, 7, 'ajax', 'Ajax', 0),
(9, 7, 'angular-js', 'Angular JS', 2),
(10, 7, 'dom-and-json-scripting', 'DOM and JSON scripting', 4),
(11, 7, 'node-js', 'Node.js', 1),
(12, 7, 'vue-js', 'Vue.js', 3),
(13, 1, 'jquery', 'jQuery', 1),
(14, 0, 'domain-alim-amp-satim', 'Domain Alım & Satım', 7),
(15, 14, 'acik-arttirma-ile-satilan-domainler', 'Açık Arttırma ile Satılan Domainler', 3),
(16, 15, '3-4-karakterli', '3-4 Karakterli', 0),
(17, 14, 'domain-genel', 'Domain Genel', 0),
(18, 17, 'bostaki-domainler', 'Boştaki Domainler', 1),
(19, 17, 'domain-ariyorum', 'Domain Arıyorum', 3),
(20, 17, 'domain-degerlendirme', 'Domain Değerlendirme', 0),
(21, 17, 'domain-firmalari', 'Domain Firmaları', 5),
(22, 17, 'domain-parking', 'Domain Parking', 7),
(23, 17, 'domain-satis', 'Domain Satış', 6),
(24, 17, 'dusecek-domainler', 'Düşecek Domainler', 2),
(25, 17, 'takas-ve-sektor-haberleri', 'Takas ve Sektör Haberleri', 4),
(26, 14, 'domain-portfoy', 'Domain Portföy', 2),
(27, 14, 'teklif-usulu-amp-hemen-al-fiyatli-domainler', 'Teklif Usulü & Hemen Al Fiyatlı Domainler', 1),
(28, 27, '3-4-karakterli-domain', '3-4 Karakterli Domain', 1),
(29, 27, 'com-amp-net', 'Com & Net', 2),
(30, 27, 'jenerik-domain', 'Jenerik Domain', 0),
(31, 27, 'org-amp-info', 'Org & Info', 3),
(32, 0, 'e-ticaret-amp-alisveris', 'E-Ticaret & Alışveriş', 4),
(33, 32, 'acik-arttirma-ilanlari', 'Açık Arttırma İlanları', 3),
(34, 33, 'dijital-urunler', 'Dijital Ürünler', 0),
(35, 33, 'sosyal-medya-hizmetleri', 'Sosyal Medya Hizmetleri', 1),
(36, 33, 'yazilim-ve-web-hizmetleri', 'Yazılım ve Web Hizmetleri', 2),
(37, 32, 'alisveris-bolumu', 'Alışveriş Bölümü', 1),
(38, 37, 'aksesuar', 'Aksesuar', 0),
(39, 37, 'takas', 'Takas', 2),
(40, 37, 'urun-ariyorum', 'Ürün Arıyorum', 1),
(41, 32, 'bozdurma-exchange-islemleri', 'Bozdurma (Exchange) İşlemleri', 7),
(42, 32, 'dijital-alisveris', 'Dijital Alışveriş', 0),
(43, 42, 'account-amp-lisans-amp-item-satisi', 'Account & Lisans & Item Satışı', 4),
(44, 42, 'bot-amp-program-alis-satisi', 'Bot & Program Alış / Satışı', 3),
(45, 42, 'kupon-satislari', 'Kupon Satışları', 6),
(46, 42, 'reklam-alimi-amp-satisi', 'Reklam Alımı & Satışı', 5),
(47, 42, 'script-satisi', 'Script Satışı', 1),
(48, 42, 'site-alim-amp-site-takas', 'Site Alım & Site Takas', 2),
(49, 42, 'site-satisi', 'Site Satışı', 0),
(50, 32, 'dropshipping', 'Dropshipping', 8),
(51, 50, 'amazon', 'Amazon', 0),
(52, 50, 'ebay', 'eBay', 1),
(53, 32, 'freelancer', 'Freelancer', 4),
(54, 53, 'is-arayanlar', 'İş Arayanlar', 0),
(55, 53, 'is-verenler', 'İş Verenler', 1),
(56, 32, 'ikinci-el', 'İkinci El', 5),
(57, 32, 'sicak-firsatlar', 'Sıcak Fırsatlar', 2),
(58, 57, 'r10-uyelerine-firsatlar', 'R10 Üyelerine Fırsatlar', 0),
(59, 32, 'webmoney-paypal-paykasa-2co-paykwik-internet-bankacilik-islemleri', 'Webmoney, Paypal, Paykasa, 2CO, Paykwik İnternet Bankacılık İşlemleri', 6),
(60, 0, 'genel-programlama-yazilim', 'Genel Programlama - Yazılım', 13),
(61, 60, 'database', 'Database', 7),
(62, 60, 'ecommerce-yazilimlari', 'eCommerce Yazılımları', 1),
(63, 62, 'opencart', 'OpenCart', 0),
(64, 62, 'prestashop', 'PrestaShop', 1),
(65, 60, 'hazir-kod-bankasi', 'Hazır Kod Bankası', 2),
(66, 60, 'programlama', 'Programlama', 5),
(67, 66, 'application-programming', 'Application Programming', 0),
(68, 66, 'mirc-scripting', 'mIRC Scripting', 1),
(69, 60, 'ucretli-script-istek', 'Ücretli Script İstek', 3),
(70, 69, 'bot-yazilimlari', 'Bot Yazılımları', 0),
(71, 60, 'ucretsiz-scriptler', 'Ücretsiz Scriptler', 4),
(72, 71, 'ucretsiz-script-istek', 'Ücretsiz Script İstek', 0),
(73, 60, 'web-tabanli-uygulamalar', 'Web Tabanlı Uygulamalar', 0),
(74, 73, 'awbs', 'Awbs', 6),
(75, 73, 'cms', 'CMS', 3),
(76, 73, 'datalife-engine-dle', 'Datalife Engine - DLE', 16),
(77, 73, 'diger-forum-scriptleri', 'Diğer Forum Scriptleri', 14),
(78, 73, 'drupal', 'Drupal', 15),
(79, 73, 'joomla', 'Joomla', 5),
(80, 73, 'mkportal', 'MkPortal', 7),
(81, 73, 'mybb', 'MyBB', 13),
(82, 73, 'phpbb', 'PhpBB', 0),
(83, 73, 'phpfusion', 'Phpfusion', 4),
(84, 73, 'phpnuke', 'PhpNuke', 1),
(85, 73, 'smf', 'SMF', 2),
(86, 73, 'ucretsiz-bloglar', 'Ücretsiz Bloglar', 10),
(87, 73, 'vbulletin', 'vBulletin', 12),
(88, 73, 'whmcs', 'WHMCS', 9),
(89, 73, 'xenforo', 'XenForo', 11),
(90, 73, 'xoops', 'Xoops', 8),
(91, 60, 'yapay-zeka', 'Yapay Zeka', 6),
(92, 0, 'google-ve-arama-motorlari', 'Google ve Arama Motorları', 0),
(93, 92, 'blogger', 'Blogger', 6),
(94, 93, 'blogger-eklentileri', 'Blogger Eklentileri', 1),
(95, 93, 'blogger-temalari', 'Blogger Temaları', 0),
(96, 92, 'diger-dizinler', 'Diğer Dizinler', 5),
(97, 96, 'blog-backlink', 'Blog Backlink', 4),
(98, 96, 'dmoz-sorular-amp-sorunlar', 'Dmoz Sorular & Sorunlar', 2),
(99, 96, 'sis', 'SIS', 3),
(100, 96, 'toplist-hitlist', 'Toplist - Hitlist', 0),
(101, 96, 'ucretli-dizinler', 'Ücretli Dizinler', 1),
(102, 92, 'google-adsense', 'Google Adsense', 0),
(103, 102, 'admob', 'Admob', 6),
(104, 102, 'adsense-ban', 'Adsense Ban', 2),
(105, 102, 'adsense-haberleri', 'Adsense Haberleri', 4),
(106, 102, 'adsense-hesap-alis-satisi', 'Adsense Hesap Alış - Satışı', 1),
(107, 102, 'adsense-hikayem', 'Adsense Hikayem', 3),
(108, 102, 'adsense-odemeleri', 'Adsense Ödemeleri', 0),
(109, 102, 'adsense-ve-ben', 'Adsense ve Ben', 5),
(110, 102, 'google-adx', 'Google Adx', 8),
(111, 102, 'programmatic', 'Programmatic', 7),
(112, 92, 'google-adwords-ads', 'Google Adwords (ADS)', 2),
(113, 112, 'google-ads-adwords-hesap-alis-satisi', 'Google Ads (Adwords) Hesap Alış - Satışı', 0),
(114, 112, 'google-ads-adwords-kupon-satisi-istek', 'Google Ads (Adwords) Kupon Satışı - İstek', 1),
(115, 92, 'google-haberleri-amp-yenilikleri', 'Google Haberleri & Yenilikleri', 3),
(116, 115, 'google-servisleri', 'Google Servisleri', 0),
(117, 92, 'google-optimizasyon', 'Google Optimizasyon', 1),
(118, 117, 'google-api', 'Google API', 7),
(119, 117, 'google-pagerank', 'Google Pagerank', 9),
(120, 117, 'guncel-ve-populer-kelime-ler', 'Güncel ve Popüler Kelime(ler)', 6),
(121, 117, 'html5', 'HTML5', 8),
(122, 117, 'local-seo', 'Local SEO', 3),
(123, 117, 'meta-tag', 'Meta-Tag', 1),
(124, 117, 'niche', 'Niche', 10),
(125, 117, 'sandbox', 'Sandbox', 0),
(126, 117, 'serp-ipucu', 'Serp İpucu', 5),
(127, 117, 'site-haritalari', 'Site Haritaları', 4),
(128, 117, 'webmaster-tools-amp-google-analytics', 'Webmaster Tools & Google Analytics', 2),
(129, 92, 'yandex-bing-diger-arama-motorlari', 'Yandex - Bing Diğer Arama Motorları', 4),
(130, 129, 'alexa', 'Alexa', 0),
(131, 0, 'grafik-amp-tasarim', 'Grafik & Tasarım', 8),
(132, 131, 'tasarim-ve-kod-kutuphanesi', 'Tasarım ve Kod Kütüphanesi', 2),
(133, 132, 'soru-amp-cevap', 'Soru & Cevap', 0),
(134, 132, 'ucretsiz-paylasimlar', 'Ücretsiz Paylaşımlar', 1),
(135, 131, 'ucretli-tasarim-isleri', 'Ücretli Tasarım İşleri', 0),
(136, 135, '3d-ve-mimari', '3D ve Mimari', 4),
(137, 135, 'arayuz-satis', 'Arayüz Satış', 3),
(138, 135, 'grafik-tasarimcilar', 'Grafik Tasarımcılar', 0),
(139, 135, 'tasarim-yarismalari', 'Tasarım Yarışmaları', 1),
(140, 135, 'video-kurgu-ve-produksiyon-isleri', 'Video, Kurgu ve Prodüksiyon İşleri', 2),
(141, 131, 'ui-ux-tasarim-ve-front-end-kodlama', 'UI/UX Tasarım ve Front-End Kodlama', 1),
(142, 141, 'front-end-mimarlari', 'Front-End Mimarları', 1),
(143, 141, 'ui-ux-tasarimcilar', 'UI/UX Tasarımcılar', 0),
(144, 0, 'gundem-amp-off-topic', 'Gündem & Off-Topic', 17),
(145, 144, 'dizi-amp-film-yorumlari', 'Dizi & Film Yorumları', 3),
(146, 144, 'gundemdeki-konular-amp-haberler', 'Gündemdeki Konular & Haberler', 1),
(147, 144, 'maxigeyik', 'MaxiGeyik', 2),
(148, 147, 'geyik-resimler-amp-videolar', 'Geyik Resimler & Videolar', 1),
(149, 147, 'ilginc-siteler', 'İlginç Siteler', 0),
(150, 144, 'off-topic', 'Off-Topic', 0),
(151, 150, 'arac', 'Araç', 10),
(152, 150, 'aramizdan-ayrilanlar', 'Aramızdan Ayrılanlar', 11),
(153, 150, 'cekilis-amp-odul', 'Çekiliş & Ödül', 3),
(154, 150, 'kitap-amp-hobi', 'Kitap & Hobi', 9),
(155, 150, 'r10-kutlamalari', 'R10 Kutlamaları', 4),
(156, 150, 'r10-subeleri-amp-etkinlikleri', 'R10 Şubeleri & Etkinlikleri', 5),
(157, 150, 'sanat', 'Sanat', 6),
(158, 150, 'sinav', 'Sınav', 8),
(159, 150, 'sosyal-projeler', 'Sosyal Projeler', 7),
(160, 150, 'spor', 'Spor', 0),
(161, 150, 'universite', 'Üniversite', 1),
(162, 150, 'uye-ozel', 'Üye Özel', 2),
(163, 144, 'sozluk', 'Sözlük', 4),
(164, 163, 'sozluk-sorunlari-amp-fikrim-var', 'Sözlük Sorunları & Fikrim Var', 0),
(165, 0, 'icerik-amp-makale-hizmetleri', 'İçerik & Makale Hizmetleri', 2),
(166, 165, 'editorluk-post-isleri', 'Editörlük (Post İşleri)', 4),
(167, 166, 'editor-ariyorum', 'Editör Arıyorum', 0),
(168, 165, 'farkli-dillerde-makale-yazimi-amp-satisi', 'Farklı Dillerde Makale Yazımı & Satışı', 2),
(169, 165, 'hazir-makale-amp-icerik-satislari', 'Hazır Makale & İçerik Satışları', 3),
(170, 165, 'makale-amp-icerik-siparisleri', 'Makale & İçerik Siparişleri', 1),
(171, 165, 'makale-alimi-amp-satisi-icerik-yazarlari', 'Makale Alımı & Satışı İçerik Yazarları', 0),
(172, 165, 'yorum-hizmetleri', 'Yorum Hizmetleri', 5),
(173, 0, 'kripto-paralar-amp-metaverse-amp-nft', 'Kripto Paralar & Metaverse & NFT', 5),
(174, 173, 'kripto-paralar', 'Kripto Paralar', 0),
(175, 174, 'altcoinler', 'Altcoinler', 2),
(176, 174, 'bitcoin', 'Bitcoin', 1),
(177, 174, 'kripto-para-haberleri', 'Kripto Para Haberleri', 0),
(178, 174, 'referansli-coin-sistemler', 'Referanslı Coin Sistemler', 3),
(179, 173, 'kripto-pazar-alani', 'Kripto Pazar Alanı', 1),
(180, 173, 'metaverse', 'Metaverse', 2),
(181, 173, 'nft', 'NFT', 3),
(182, 0, 'mobil-dunyasi', 'Mobil Dünyası', 12),
(183, 182, 'akilli-telefonlar-amp-tablet', 'Akıllı Telefonlar & Tablet', 1),
(184, 183, 'apple-ipad-ve-iphone', 'Apple iPad ve iPhone', 1),
(185, 183, 'google-android', 'Google Android', 0),
(186, 183, 'huawei', 'Huawei', 2),
(187, 183, 'samsung', 'Samsung', 4),
(188, 183, 'xiaomi', 'Xiaomi', 3),
(189, 182, 'android-amp-ios-uygulama-gelistirme', 'Android & IOS Uygulama Geliştirme', 0),
(190, 189, 'android-amp-ios-alisveris', 'Android & IOS Alışveriş', 0),
(191, 182, 'cep-telefonlari', 'Cep Telefonları', 2),
(192, 182, 'gsm-operatorleri-amp-urun-kampanya-haberleri', 'GSM Operatörleri & Ürün Kampanya Haberleri', 3),
(193, 182, 'uygulama-tanitimi', 'Uygulama Tanıtımı', 4),
(194, 0, 'para-kazanma-is-fikirleri-amp-girisimcilik', 'Para Kazanma - İş Fikirleri & Girişimcilik', 6),
(195, 194, 'girisimcilik-ve-inovasyon', 'Girişimcilik ve İnovasyon', 3),
(196, 194, 'internetten-para-kazanma-sanati', 'İnternetten Para Kazanma Sanatı', 0),
(197, 196, 'hediye-amp-promosyon-kazanimi', 'Hediye & Promosyon Kazanımı', 3),
(198, 196, 'mobil-reklam', 'Mobil Reklam', 0),
(199, 196, 'satis-ortakligi', 'Satış Ortaklığı', 1),
(200, 196, 'turk-sponsorlar', 'Türk Sponsorlar', 2),
(201, 196, 'uploading-isleri', 'Uploading İşleri', 4),
(202, 194, 'is-fikirleri', 'İş Fikirleri', 1),
(203, 194, 'yatirim-araclari', 'Yatırım Araçları', 2),
(204, 0, 'r10-hakkinda', 'R10 Hakkında', 19),
(205, 204, 'forumda', 'Forumda', 0),
(206, 205, 'analiz-araclari', 'Analiz Araçları', 5),
(207, 205, 'ban-cezasi-sorunlari', 'Ban Cezası Sorunları', 3),
(208, 205, 'gelistirmeler', 'Geliştirmeler', 1),
(209, 205, 'moderatore-soru', 'Moderatöre Soru', 4),
(210, 205, 'premium-ve-reklam-sorulariniz', 'Premium ve Reklam Sorularınız', 2),
(211, 205, 'sik-sorulan-sorular', 'Sık Sorulan Sorular', 0),
(212, 204, 'r10-kullanim-rehberi', 'R10 Kullanım Rehberi', 1),
(213, 0, 'seo-hizmetleri', 'SEO Hizmetleri', 1),
(214, 213, 'link-borsasi', 'Link Borsası', 5),
(215, 213, 'seo-danismanligi', 'SEO Danışmanlığı', 0),
(216, 213, 'seo-hizmet-paketleri', 'SEO Hizmet Paketleri', 1),
(217, 213, 'site-ici-seo-optimizasyonu-on-page', 'Site İçi SEO Optimizasyonu (On-Page)', 2),
(218, 213, 'sosyal-backlink-paketleri', 'Sosyal Backlink Paketleri', 3),
(219, 213, 'tanitim-yazisi', 'Tanıtım Yazısı', 4),
(220, 219, 'tanitim-yazisi-paketleri', 'Tanıtım Yazısı Paketleri', 0),
(221, 0, 'server-side-programlama', 'Server-Side Programlama', 15),
(222, 221, 'asp', 'ASP', 1),
(223, 222, 'asp-hazir-kodlar', 'ASP Hazır Kodlar', 0),
(224, 222, 'asp-net', 'Asp.NET', 1),
(225, 221, 'digerserver-side-diller', 'DiğerServer Side Diller', 3),
(226, 225, 'golang', 'GoLang', 1),
(227, 225, 'python', 'Python', 0),
(228, 225, 'react-amp-react-native', 'React & React Native', 2),
(229, 221, 'java-amp-jsp-programlama', 'Java & JSP Programlama', 2),
(230, 221, 'php', 'PHP', 0),
(231, 230, 'php-framework', 'PHP Framework', 0),
(232, 0, 'sikayet-amp-tesekkur', 'Şikayet & Teşekkür', 18),
(233, 232, 'sikayetim-var', 'Şikayetim Var', 0),
(234, 233, 'cozumlenmis-sikayetler', 'Çözümlenmiş Şikayetler', 1),
(235, 233, 'forum-disi-sikayetim-var', 'Forum Dışı Şikayetim Var', 0),
(236, 232, 'tesekkurum-var', 'Teşekkürüm Var', 1),
(237, 0, 'sosyal-medya', 'Sosyal Medya', 3),
(238, 237, 'diger-sosyal-medya-aglari', 'Diğer Sosyal Medya Ağları', 8),
(239, 238, 'discord', 'Discord', 0),
(240, 238, 'tumblr', 'Tumblr', 1),
(241, 237, 'facebook', 'Facebook', 2),
(242, 241, 'facebook-business-manager-ads', 'Facebook Business Manager (ADS)', 5),
(243, 241, 'facebook-gruplari', 'Facebook Grupları', 3),
(244, 241, 'facebook-hayran-cekimi-amp-abone-cekimi', 'Facebook Hayran Çekimi & Abone Çekimi', 4),
(245, 241, 'facebook-reklam-alimi-amp-satimi', 'Facebook Reklam Alımı & Satımı', 2),
(246, 241, 'facebook-sayfa-alisi', 'Facebook Sayfa Alışı', 1),
(247, 241, 'facebook-sayfa-satisi', 'Facebook Sayfa Satışı', 0),
(248, 237, 'instagram', 'Instagram', 0),
(249, 248, 'instagram-cekilis-hizmetleri', 'Instagram Çekiliş Hizmetleri', 2),
(250, 248, 'instagram-hesap-alimi', 'Instagram Hesap Alımı', 1),
(251, 248, 'instagram-hesap-satisi', 'Instagram Hesap Satışı', 0),
(252, 248, 'instagram-reklam-alimi-amp-satimi', 'Instagram Reklam Alımı & Satımı', 3),
(253, 248, 'instagram-ticari-olmayan-konular', 'Instagram Ticari Olmayan Konular', 4),
(254, 237, 'pinterest', 'Pinterest', 4),
(255, 254, 'pinterest-egitim-satisi', 'Pinterest Eğitim Satışı', 0),
(256, 254, 'pinterest-hesap-alis-satisi', 'Pinterest Hesap Alış - Satışı', 1),
(257, 254, 'pinterest-site-satisi-hazir-site-kurulumu', 'Pinterest Site Satışı - Hazır Site Kurulumu', 2),
(258, 237, 'sosyal-medya-danismanligi', 'Sosyal Medya Danışmanlığı', 7),
(259, 237, 'telegram', 'Telegram', 5),
(260, 237, 'tiktok', 'TikTok', 6),
(261, 237, 'twitter', 'Twitter', 3),
(262, 261, 'twitter-hesap-alisi-satisi', 'Twitter Hesap Alışı - Satışı', 0),
(263, 237, 'youtube', 'YouTube', 1),
(264, 263, 'youtube-acemi', 'YouTube Acemi', 1),
(265, 263, 'youtube-alisveris', 'YouTube Alışveriş', 0),
(266, 263, 'youtube-kanal-alimi-amp-satimi', 'Youtube Kanal Alımı & Satımı', 3),
(267, 263, 'youtube-reklam-alimi-amp-satimi', 'Youtube Reklam Alımı & Satımı', 2),
(268, 0, 'sunucu-amp-web-hosting', 'Sunucu & Web Hosting', 9),
(269, 268, 'dedicated-server-amp-co-location-server', 'Dedicated Server & Co-Location Server', 1),
(270, 269, 'datacenter', 'Datacenter', 2),
(271, 269, 'ip-adresi-alim-satim-ve-kiralama', 'IP Adresi Alım Satım ve Kiralama', 1),
(272, 269, 'server-donanimlari-network-ekipmanlari', 'Server Donanımları - Network Ekipmanları', 0),
(273, 268, 'hosting-sikayetleri', 'Hosting Şikayetleri', 8),
(274, 268, 'hosting-sirketleri', 'Hosting Şirketleri', 0),
(275, 274, 'asp-hosting', 'ASP Hosting', 3),
(276, 274, 'nasil-bilirsiniz', 'Nasıl Bilirsiniz', 0),
(277, 274, 'turk-hosting-firmalari', 'Türk Hosting Firmaları', 1),
(278, 274, 'vergi-levhasi-olan-firmalar', 'Vergi Levhası Olan Firmalar', 4),
(279, 274, 'yabanci-hosting-firmalari', 'Yabancı Hosting Firmaları', 2),
(280, 268, 'hosting-sponsorluk', 'Hosting Sponsorluk', 7),
(281, 268, 'ozel-kampanya-haberleri', 'Özel Kampanya Haberleri', 4),
(282, 268, 'reseller-hosting', 'Reseller Hosting', 3),
(283, 268, 'sanal-sunucu', 'Sanal Sunucu', 2),
(284, 283, 'oyun-sunucusu', 'Oyun Sunucusu', 1),
(285, 283, 'pvp-server', 'PvP Server', 0),
(286, 283, 'vpn-amp-proxy', 'VPN & Proxy', 2),
(287, 268, 'site-amp-server-administration', 'Site & Server Administration', 6),
(288, 287, 'cloudflare', 'CloudFlare', 4),
(289, 287, 'cpanel-plesk-directadmin', 'cPanel, Plesk, DirectAdmin', 1),
(290, 287, 'diger-kontrol-panelleri', 'Diğer Kontrol Panelleri', 5),
(291, 287, 'server-optimizasyon', 'Server Optimizasyon', 3),
(292, 287, 'shell-script-amp-ssh-komutlari', 'Shell Script & SSH Komutları', 2),
(293, 287, 'site-guvenligi-amp-saldirilar', 'Site Güvenliği & Saldırılar', 0),
(294, 268, 'web-hosting-amp-hosting-ariyorum', 'Web Hosting & Hosting Arıyorum', 5),
(295, 294, 'ircd-hosting-amp-shell-hosting', 'IRCD Hosting & Shell Hosting', 0),
(296, 0, 'teknoloji-oyun-donanim', 'Teknoloji - Oyun - Donanım', 16),
(297, 296, 'browser-dunyasi', 'Browser Dünyası', 6),
(298, 297, 'firefox', 'Firefox', 0),
(299, 297, 'google-chrome', 'Google Chrome', 3),
(300, 297, 'internet-explorer-amp-edge', 'Internet Explorer & Edge', 1),
(301, 297, 'opera', 'Opera', 2),
(302, 296, 'donanim-bolumu', 'Donanım Bölümü', 1),
(303, 302, 'ariza-amp-teknik-destek', 'Arıza & Teknik Destek', 5),
(304, 302, 'dahili-bilesenler', 'Dahili Bileşenler', 3),
(305, 302, 'driver-sorunlari', 'Driver Sorunları', 2),
(306, 302, 'hangisini-alsam', 'Hangisini Alsam', 1),
(307, 302, 'harici-bilesenler', 'Harici Bileşenler', 4),
(308, 302, 'yeni-cikan-urunler', 'Yeni Çıkan Ürünler', 0),
(309, 296, 'guvenlik', 'Güvenlik', 5),
(310, 309, 'dokumanlar', 'Dokümanlar', 0),
(311, 309, 'virus', 'Virüs', 1),
(312, 296, 'isletim-sistemleri', 'İşletim Sistemleri', 3),
(313, 312, 'linux', 'Linux', 3),
(314, 312, 'macos', 'macOS', 5),
(315, 312, 'pardus', 'Pardus', 6),
(316, 312, 'windows-10', 'Windows 10', 4),
(317, 312, 'windows-7', 'Windows 7', 1),
(318, 312, 'windows-8', 'Windows 8', 2),
(319, 312, 'windows-vista', 'Windows Vista', 0),
(320, 296, 'ofis-uygulamalari', 'Ofis Uygulamaları', 4),
(321, 320, 'makro', 'Makro', 0),
(322, 296, 'oyun-dunyasi', 'Oyun Dünyası', 2),
(323, 322, 'browser-tabanli-oyunlar', 'Browser Tabanlı Oyunlar', 0),
(324, 322, 'cs-go', 'CS:GO', 2),
(325, 322, 'fortnite', 'Fortnite', 3),
(326, 322, 'playstation', 'PlayStation', 4),
(327, 322, 'pubg', 'PUBG', 1),
(328, 296, 'teknoloji-haberleri', 'Teknoloji Haberleri', 0),
(329, 328, 'bilisim-kitaplari', 'Bilişim Kitapları', 1),
(330, 328, 'ekoloji', 'Ekoloji', 0),
(331, 0, 'webmaster-genel', 'Webmaster Genel', 11),
(332, 331, 'bilgi-arsivi', 'Bilgi Arşivi', 2),
(333, 332, 'benzetmeli-ornekler', 'Benzetmeli Örnekler', 6),
(334, 332, 'beyin-firtinasi', 'Beyin Fırtınası', 4),
(335, 332, 'dersler', 'Dersler', 0),
(336, 332, 'e-book', 'E-Book', 3),
(337, 332, 'ipucu', 'İpucu', 5),
(338, 332, 'nedir', 'Nedir', 1),
(339, 332, 'video-anlatimli-konular', 'Video Anlatımlı konular', 2),
(340, 331, 'bilisim-hukuku', 'Bilişim Hukuku', 4),
(341, 331, 'link-degisimi', 'Link Değişimi', 8),
(342, 341, 'banner-degisimi', 'Banner Değişimi', 1),
(343, 341, 'link-degisimi-istek-ve-sorunlariniz', 'Link Değişimi İstek ve Sorunlarınız', 0),
(344, 331, 'programlar', 'Programlar', 6),
(345, 344, 'program-yardim', 'Program Yardım', 1),
(346, 344, 'webmaster-programlari', 'Webmaster Programları', 0),
(347, 331, 'proje-gelistirme-beyin-firtinasi-ortak-ariyorum', 'Proje Geliştirme - Beyin Fırtınası - Ortak Arıyorum', 3),
(348, 331, 'webmaster-genel-konular-sorunlar', 'Webmaster Genel Konular - Sorunlar', 0),
(349, 331, 'whatsapp-mirc-skype-icq', 'WhatsApp, mIRC, Skype, ICQ', 5),
(350, 331, 'yeni-baslayanlar', 'Yeni Başlayanlar', 1),
(351, 331, 'yeni-web-siteleri-site-tanitimi', 'Yeni Web Siteleri - Site Tanıtımı', 7),
(352, 351, 'benim-blogum', 'Benim Blogum', 1),
(353, 351, 'ucretsiz-hizmet-siteleri', 'Ücretsiz Hizmet Siteleri', 0),
(354, 351, 'yeni-projeler', 'Yeni Projeler', 2),
(355, 0, 'wordpress-genel', 'WordPress Genel', 10),
(356, 355, 'wordpress', 'WordPress', 0),
(357, 356, 'ucretli-wordpress-isleri', 'Ücretli WordPress İşleri', 3),
(358, 356, 'wordpress-eklentileri', 'WordPress Eklentileri', 2),
(359, 356, 'wordpress-sorunlari-amp-hatalari', 'WordPress Sorunları & Hataları', 1),
(360, 356, 'wordpress-tema-amp-eklenti-satisi', 'WordPress Tema & Eklenti Satışı', 4),
(361, 356, 'wordpress-temalari', 'WordPress Temaları', 0),
(362, 355, 'wordpress-kurulum-amp-entegrasyon', 'WordPress Kurulum & Entegrasyon', 2),
(363, 355, 'wordpress-seo-guvenlik-amp-bakim', 'WordPress SEO, Güvenlik & Bakım', 1),
(364, 355, 'wordpress-woocommerce', 'WordPress WooCommerce', 3),
(365, 364, 'woocommerce-eklentileri', 'WooCommerce Eklentileri', 1),
(366, 364, 'woocommerce-temalari', 'WooCommerce Temaları', 0);### Kategori için helper dosyamız.category_helper.php
<?php
function get_category($id = 0, $keys = NULL, $type = 'slug') {
global $categoryData;
if (preg_match('/^([0-9]+)$/i', (string) $id)) {
$type = 'row';
}
$current = $categoryData[$type];
if ($keys) {
if (is_array($keys)) {
$array = new stdClass();
foreach ($keys as $key) {
$array->{$key} = $current[$id]->{$key};
}
return (object) $array;
} else {
return $current[$id]->{$keys};
}
} elseif ($id) {
return $current[$id];
} else {
return $current;
}
}
function get_category_select($parent_id = 0, $separator = ' ', $alt = 0) {
$out = '';
foreach (get_category_parent($parent_id) as $row) {
$out .= '<option value="' . $row->id . '" title="' . join(' » ', get_category_path($row->id, 'title')) . '">' . str_repeat($separator, $alt) . $row->title . '</option>';
$out .= get_category_select($row->id, $separator, $alt + 1);
}
return $out;
}
function get_category_tree($parent_id = 0, $keys = NULL) {
$array = array();
$current = get_category($parent_id, $keys);
foreach (get_category_parent($current->id) as $row) {
$current->sub[] = get_category_tree($row->id, $keys);
}
$array[] = $current;
return $array;
}
function get_category_parent($id) {
global $categoryData;
return (isset($categoryData['parent'][$id]) ? $categoryData['parent'][$id] : array());
}
function get_category_parents($parent_id = 0) {
$array = array();
$current = get_category($parent_id);
array_push($array, $parent_id);
if ($current->parent_id > 0) {
foreach (get_category_parents($current->parent_id) as $id) {
array_push($array, (int) $id);
}
}
return $array;
}
function get_category_path($parent_id = 0, $keys = NULL) {
$array = array();
$current = get_category($parent_id);
foreach (array_reverse(get_category_parents($current->id)) as $id) {
$array[] = get_category($id, $keys);
}
return $array;
}