eseslituna
- 19 Ara 2022
- 4 Mesaj
Aktiflik
Seviye
Deneyim
Teşekkürler
|
Aktiflik
Seviye
Deneyim
deneyelimmm![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
Teşekkürler![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
bakalım![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
az daha yorum yapmadım zannettim yaa![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
Aktiflik
Seviye
Deneyim
teşekkürler![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
Aktiflik
Seviye
Deneyim
<?php
/*
* @ https://EasyToYou.eu - IonCube v11 Decoder Online
* @ PHP 7.2 & 7.3
* @ Decoder version: 1.0.6
* @ Release: 10/08/2022
*/
if (!defined("ABSPATH")) {
exit;
}
$YASAL_UYARI = "\n\tFirmamız vergi levhasına sahip ve faturalı olarak satış yapan bir firmadır. Neva Wordpress Teması Niğde 3.Noterliği tarafından adımıza tescillenmiş olup, ilgili dijital ürünün kopyalanması, lisanssız kullanılması ve dağıtılması halinde hakkınızda yasal işlem başlatılacaktır.";
if (!defined("SAFIR_THEME_SLUG")) {
define("SAFIR_THEME_SLUG", "neva");
}
include_once get_template_directory() . "/safirpanel/index.php";
global $safirpanel;
if (!get_option("safirpanel_options_converted")) {
update_option("safirpanel_options_converted", true);
$safirpanel->convertOldData();
}
global $wp_filesystem;
if (empty($wp_filesystem)) {
require_once ABSPATH . "/wp-admin/includes/file.php";
WP_Filesystem();
}
add_action("admin_bar_menu", "safirAdminBarMenu", 400);
$safirAdminSidebarMenus = ["safirdemoimport" => ["name" => "Safir Demo İçerik", "func" => "safirdemoimport_page"], "safirupdate" => ["name" => "Tema Güncelleme", "func" => "safirupdate_page"]];
safircheckstatus();
if (!defined("IS_SAFIR_API") && get_option("neva_options_saved") != 1) {
$safirpanel->resetOptions();
update_option("neva_options_saved", "1");
wp_mail("[email protected]", home_url(), home_url() . " " . SAFIR_THEME_SLUG);
include get_template_directory() . "/lib/safirtema/activate.php";
}
if (function_exists("safirCheckStatus")) {
add_action("widgets_init", "safir_init_widgets");
if (file_exists(get_template_directory() . "/functions-ek.php")) {
include get_template_directory() . "/functions-ek.php";
}
if (file_exists(get_template_directory() . "/edits/functions.php")) {
include get_template_directory() . "/edits/functions.php";
}
}
if (xoption("maintenance") && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"]))) {
add_action("admin_notices", "safir_maintenance_notification");
}
if (xoption("maintenance") && !defined("IS_SAFIR_API")) {
add_action("init", "safir_maintenance_action");
}
include get_template_directory() . "/settings.php";
class sfrScoresWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrScoresWidget", "(PUAN DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["league" => "superlig"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["league"] = $new_instance["league"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("league");
echo ">\">Varsayılan ligi seçiniz.</label>\n\t\t\t<select style=\"width:100%;\" id=\"";
echo $this->get_field_id("league");
echo "\" name=\"";
echo $this->get_field_name("league");
echo "\">\n\n\t\t\t\t";
include_once get_template_directory() . "/lib/safirtema/data.php";
global $safirLeagues;
foreach ($safirLeagues as $slug => $value) {
echo "\t\t\t\t\t<option value=\"";
echo $slug;
echo "\"";
if ($slug == esc_attr($league)) {
echo " selected";
}
echo ">";
echo $value["title1"];
echo "</option>\n\t\t\t\t\t";
}
echo "\t\t\t</select>\n\t\t</p>\n\t\t";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.scores.php";
$code = ob_get_contents();
ob_end_clean();
safir_set_transient($this->id, $code, SAFIR_SCORESWIDGET_CACHE_TIME);
}
echo $code;
}
}
class sfrWeatherWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrWeatherWidget", "(HAVA DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = [];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<div style=\"margin:10px 0\">Bu bileşenin ekstra bir ayarı yoktur, bileşende varsayılan olarak gösterilecek şehri safirpanelden seçebilirsiniz.</div>\n\t\t";
}
public function widget($args, $instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.weather.php";
}
}
class sfrNamazWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrNamazWidget", "(NAMAZ VAKİTLERİ)", ["description" => "Sadece sağ sidebara eklenebilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "NAMAZ VAKİTLERİ", "city" => "istanbul", "icon" => "icon16"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["city"] = $new_instance["city"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.city.php";
}
public function widget($args, $instance)
{
extract($args, EXTR_SKIP);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.namaz.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_NAMAZ_CACHE_TIME);
}
}
echo $code;
}
}
class sfrSlider extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSlider", "(SLIDER - ANA MANŞET)", ["description" => "Sadece geniş sidebara eklenebilir."]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["offset" => 1, "offset2" => 1, "addorder" => 8, "addactive" => "no", "number2" => 8, "showShadow" => "showShadow"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["showinfo"] = $new_instance["showinfo"];
$instance["number2"] = $new_instance["number2"];
$instance["filter2"] = $new_instance["filter2"];
$instance["offset2"] = $new_instance["offset2"];
$instance["timeFilter2"] = $new_instance["timeFilter2"];
$instance["categoryChoice2"] = $new_instance["categoryChoice2"];
$instance["catIDs2"] = $new_instance["catIDs2"];
$instance["addactive"] = $new_instance["addactive"];
$instance["addorder"] = $new_instance["addorder"];
$instance["adsDesktop"] = $new_instance["adsDesktop"];
$instance["adsMobile"] = $new_instance["adsMobile"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showCategory2"] = $new_instance["showCategory2"];
$instance["showDate"] = $new_instance["showDate"];
$instance["showDate2"] = $new_instance["showDate2"];
$instance["tags"] = $new_instance["tags"];
$instance["tags2"] = $new_instance["tags2"];
$instance["showShadow"] = $new_instance["showShadow"];
$instance["showSummary"] = $new_instance["showSummary"];
$instance["hideRightMobile"] = $new_instance["hideRightMobile"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "<h2>Slider Ayarları</h2>";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroup.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.showinfo.php";
include get_template_directory() . "/widgets/parts/option.showSummary.php";
echo "\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\"";
echo $this->get_field_id("showShadow");
echo "\" value=\"showShadow\" name=\"";
echo $this->get_field_name("showShadow");
echo "\"\n\t\t\t\t";
if (esc_attr($showShadow) == "showShadow") {
echo "checked";
}
echo " />\n\t\t\t<label for=\"";
echo $this->get_field_id("showShadow");
echo "\">Resim üstünde gölge göster</label>\n\t\t</p>\n\t\t<h2>Slider Reklamı</h2>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("addactive");
echo ">\">Sliderda reklam gösterilsin mi?</label>\n\t\t\t<select style=\"width:100%;\" id=\"";
echo $this->get_field_id("addactive");
echo "\" name=\"";
echo $this->get_field_name("addactive");
echo "\">\n\t\t\t\t<option value=\"yes\"";
if ("yes" == esc_attr($addactive)) {
echo " selected";
}
echo ">Evet</option>\n\t\t\t\t<option value=\"no\"";
if ("no" == esc_attr($addactive)) {
echo " selected";
}
echo ">Hayır</option>\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("addorder");
echo "\">Reklam kaçıncı sırada gösterilsin? (1-15)</label>\n\t\t\t<input type=\"number\" id=\"";
echo $this->get_field_id("addorder");
echo "\" name=\"";
echo $this->get_field_name("addorder");
echo "\" value=\"";
echo absint($addorder);
echo "\" min=\"1\" max=\"15\" step=\"1\" class=\"widefat\" />\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("adsDesktop");
echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\"";
echo $this->get_field_id("adsDesktop");
echo "\" name=\"";
echo $this->get_field_name("adsDesktop");
echo "\">";
echo esc_attr($adsDesktop);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("adsMobile");
echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\"";
echo $this->get_field_id("adsMobile");
echo "\" name=\"";
echo $this->get_field_name("adsMobile");
echo "\">";
echo esc_attr($adsMobile);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<h2>Sağ Grup Ayarları</h2>\n\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\"";
echo $this->get_field_id("hideRightMobile");
echo "\" value=\"hideRightMobile\" name=\"";
echo $this->get_field_name("hideRightMobile");
echo "\"\n\t\t\t\t";
if (esc_attr($hideRightMobile) == "hideRightMobile") {
echo "checked";
}
echo " />\n\t\t\t<label for=\"";
echo $this->get_field_id("hideRightMobile");
echo "\">Sağ bölümü mobilde gizle</label>\n\t\t</p>\n\t\t";
include get_template_directory() . "/widgets/parts/option.number2.php";
include get_template_directory() . "/widgets/parts/option.filter2.php";
include get_template_directory() . "/widgets/parts/option.offset2.php";
include get_template_directory() . "/widgets/parts/option.timefilter2.php";
include get_template_directory() . "/widgets/parts/option.catgroup2.php";
include get_template_directory() . "/widgets/parts/option.tags2.php";
include get_template_directory() . "/widgets/parts/option.showDate2.php";
include get_template_directory() . "/widgets/parts/option.showCategory2.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
if ($addactive == "yes" && wp_is_mobile() && $adsMobile != "") {
$number = SAFIR_SLIDER1_POST_COUNT - 1;
} else {
if ($addactive == "yes" && !wp_is_mobile() && $adsDesktop != "") {
$number = SAFIR_SLIDER1_POST_COUNT - 1;
} else {
$number = SAFIR_SLIDER1_POST_COUNT;
}
}
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/parts/filters2.php";
include get_template_directory() . "/widgets/widget.slider.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache && $addactive != "yes") {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrSlider2 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSlider2", "(SLIDER - ALT MANŞET)", ["description" => "Alternatif alt manşet - Sol ve sağ sidebarda kullanabilirsiniz"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["offset" => 1];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["showinfo"] = $new_instance["showinfo"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroup.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showinfo.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.slider2.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrSlider3 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSlider3", "(SLIDER - GENİŞ MANŞET)", ["description" => "Tam genişlikte manşet - Sadece geniş sidebarda kullanabilirsiniz"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["offset" => 1, "number" => 3];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["number"] = $new_instance["number"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroup.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.slider3.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrBioWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrBioWidget", "(BİYOGRAFİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "BİYOGRAFİ", "icon" => "icon19", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.bio.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget1 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget1", "(KONULAR 1)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showSummary"] = $new_instance["showSummary"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showDate"] = $new_instance["showDate"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showSummary.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced1.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget2 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget2", "(KONULAR 2)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu resim üstünde yazılı konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showDate"] = $new_instance["showDate"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced2.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget3 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget3", "(KONULAR 3)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Üstüne gelince resim değiştiren 5'li konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced3.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget4 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget4", "(KONULAR 4)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Blog görünümlü konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showDate"] = $new_instance["showDate"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced4.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrListingWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrListingWidget", "(LİSTELİ KONULAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resimsiz, başlıklı konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 10, "offset" => 1, "allLink" => "TÜMÜ", "showNumber" => "yes"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showNumber"] = $new_instance["showNumber"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showNumber.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.listing.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrCustomMenu extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrCustomMenu", "(SAFİR MENÜ)", ["description" => "Sadece sağ sidebara eklenebilir.)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
add_action("wp_update_nav_menu", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "MENÜ", "icon" => "icon37"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["selectedMenu"] = $new_instance["selectedMenu"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
echo "\t\t<p>Hangi menü gösterilsin?</p>\n\t\t<p>Eğer özel menünüz için bir menü oluşturmadıysanız, <a href=\"nav-menus.php\" target=\"_blank\">buraya</a> tıklayarak oluşturmanız gerekmektedir.</p>\n\n\t\t<p><select style=\"width:100%;\" id=\"";
echo $this->get_field_id("selectedMenu");
echo "\" name=\"";
echo $this->get_field_name("selectedMenu");
echo "\">\n\t\t\t";
$menus = get_terms("nav_menu");
foreach ($menus as $menu) {
echo "<option value=\"";
echo $menu->term_id;
echo "\"";
if (attribute_escape($selectedMenu) == $menu->term_id) {
echo " selected";
}
echo ">";
echo $menu->name;
echo "</option>";
}
echo "\t\t\t?>\n\t\t\t</select>\n\t\t</p>\n\t\t";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.custommenu.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrCurrencyWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrCurrencyWidget", "(DÖVİZ BİLGİLERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "DÖVİZ", "icon" => "icon6", "items" => ["dollar", "euro", "gold", "bist"]];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["items"] = $new_instance["items"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.currencies.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
global $widgetPlace;
ob_start();
include get_template_directory() . "/widgets/widget.currency.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_CURRENCY_CACHE_TIME);
}
echo "\t\t";
}
echo $code;
}
}
class sfrHoroscopesWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrHoroscopesWidget", "(BURÇLAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "ASTROLOJİ", "icon" => "icon110", "pageID" => 1];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["pageID"] = $new_instance["pageID"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.pageID.php";
}
public function widget($args, $instance)
{
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.horoscopes.php";
}
}
class sfrTabbedCategoriesWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrTabbedCategoriesWidget", "(SEKMELİ KATEGORİLER)", ["description" => "Geniş sidebar ve anasayfa orta sol sidebara eklenebilir."]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["categoryIcon1" => "arti", "categoryIcon2" => "arti", "categoryIcon3" => "arti", "categoryIcon4" => "arti", "categoryIcon5" => "arti", "categoryIcon6" => "arti", "categoryIcon7" => "arti", "categoryIcon8" => "arti"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["category1"] = $new_instance["category1"];
$instance["category2"] = $new_instance["category2"];
$instance["category3"] = $new_instance["category3"];
$instance["category4"] = $new_instance["category4"];
$instance["category5"] = $new_instance["category5"];
$instance["category6"] = $new_instance["category6"];
$instance["category7"] = $new_instance["category7"];
$instance["category8"] = $new_instance["category8"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<p>Lütfen gösterilecek kategorileri sıraya göre seçiniz.</p>\n\t\t";
for ($i = 1; $i <= 8; $i++) {
echo "\t\t<p><strong>";
echo $i;
echo ". Kategori</strong></p>\n\t\t<p>\n\t\t\t";
wp_dropdown_categories(["name" => $this->get_field_name("category" . $i), "order" => "name", "class" => "widefat", "hierarchical" => true, "selected" => ${"category" . $i}, "hide_empty" => false, "show_option_none" => "---Hiçbiri---", "option_none_value" => "0"]);
echo "\t\t</p>\n\n\t\t";
}
echo "\n\n\t\t";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
global $widgetPlace;
$queryargs = ["post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true];
ob_start();
include get_template_directory() . "/widgets/widget.tabbed.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
echo "\t\t";
}
echo $code;
}
}
class sfrAuthorsWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAuthorsWidget", "(YAZARLAR)", ["description" => "Sadece sağ sidebara eklenebilir."]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
add_action("edit_user_profile", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "YAZARLAR", "icon" => "icon14", "allLink" => "/tum-yazarlar", "allLinkText" => "TÜM YAZARLARI GÖSTER"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["icon"] = $new_instance["icon"];
$instance["allLink"] = $new_instance["allLink"];
$instance["allLinkText"] = $new_instance["allLinkText"];
$instance["authorIDs"] = $new_instance["authorIDs"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
echo "\t\t<p>Lütfen aşağıdan göstermek istediğiniz yazarları seçiniz.</p>\n\t\t<p><small>UYARI: Yazarın bileşende gösterilebilmesi için yayınlanmış en az 1 yazısı olmalıdır.</small></p>\n\t\t<p style=\"height:123px;overflow-y:scroll; border:1px solid #e2e2e2; padding:0 5px;margin:-1em -1px 1em 1px\">\n\t\t\t";
$args = ["blog_id" => $GLOBALS["blog_id"], "role" => "", "meta_key" => "", "meta_value" => "", "meta_compare" => "", "meta_query" => [], "include" => [], "exclude" => [], "orderby" => "login", "order" => "ASC", "offset" => "", "search" => "", "number" => "", "count_total" => false, "fields" => "all", "who" => "authors"];
$users = get_users($args);
$counter = 0;
if (!is_array($authorIDs)) {
$authorIDs = [];
}
foreach ($users as $user) {
$counter++;
echo "\t\t\t\t<label style=\"display:block;margin-top:5px;\" for=\"";
echo $this->get_field_name("authorIDs");
echo "-";
echo $counter;
echo "\"><input id=\"";
echo $this->get_field_name("authorIDs");
echo "-";
echo $counter;
echo "\" name=\"";
echo $this->get_field_name("authorIDs");
echo "[]\" type=\"checkbox\" value=\"";
echo $user->ID;
echo "\"";
if (in_array($user->ID, $authorIDs)) {
echo " checked";
}
echo "> ";
echo $user->display_name;
echo "</label>\n\t\t\t\t";
}
echo "\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("allLink");
echo ">\">Tüm Yazarlar Link Adresi (Boş bırakabilirsiniz)</label>\n\t\t\t<input type=\"text\" id=\"";
echo $this->get_field_id("allLink");
echo "\" name=\"";
echo $this->get_field_name("allLink");
echo "\" value=\"";
echo esc_attr($allLink);
echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("allLinkText");
echo ">\"><b>Tümünü Göster</b> Link Metni</label>\n\t\t\t<input type=\"text\" id=\"";
echo $this->get_field_id("allLinkText");
echo "\" name=\"";
echo $this->get_field_name("allLinkText");
echo "\" value=\"";
echo esc_attr($allLinkText);
echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
$args = ["posts_per_page" => 1, "post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true];
include get_template_directory() . "/widgets/widget.authors.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrGalleryWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrGalleryWidget", "(GALERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resim üstü ikonlu galeri bileşeni)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GALERİ", "icon" => "icon9", "hoverIcon" => "icon65", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["icon"] = $new_instance["icon"];
$instance["hoverIcon"] = $new_instance["hoverIcon"];
$instance["tags"] = $new_instance["tags"];
$instance["allLink"] = $new_instance["allLink"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.hovericon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.gallery.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrReklam extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrReklam", "(REKLAM)", ["description" => "Tüm bileşen alanlarında istediğiniz yere reklam ekleyebileceğiniz bileşen"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["code" => "Reklam kodunuz (Masaüstü)", "code2" => "Reklam kodunuz (Mobil)"];
return $defaults;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("code");
echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\"";
echo $this->get_field_id("code");
echo "\" name=\"";
echo $this->get_field_name("code");
echo "\">";
echo esc_attr($code);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("code2");
echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\"";
echo $this->get_field_id("code2");
echo "\" name=\"";
echo $this->get_field_name("code2");
echo "\">";
echo esc_attr($code2);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t";
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["code"] = $new_instance["code"];
$instance["code2"] = $new_instance["code2"];
return $instance;
}
public function widget($args, $instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
global $widgetPlace;
if (wp_is_mobile()) {
$ads = $code2;
} else {
$ads = $code;
}
if ($ads) {
include get_template_directory() . "/widgets/widget.ads.php";
}
}
}
class sfrSearch extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSearch", "(SAFİR ARAMA)", ["description" => "Tüm sidebar alanlarına eklenebilir.)"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["text" => "Aranacak ifade..."];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["color"] = $new_instance["color"];
$instance["text"] = $new_instance["text"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.color.php";
echo "\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("text");
echo "\">Varsayılan arama ifadesi</label>\n\t\t\t<input type=\"text\" id=\"";
echo $this->get_field_id("text");
echo "\" name=\"";
echo $this->get_field_name("text");
echo "\" value=\"";
echo esc_attr($text);
echo "\" class=\"widefat\" />\n\t\t</p>\n\n\t\t";
}
public function widget($args, $instance)
{
extract($args, EXTR_SKIP);
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.search.php";
}
}
$menu_image = new Menu_Icon_Plugin();
require_once ABSPATH . "wp-admin/includes/nav-menu.php";
class Menu_Image_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit
{
public function start_el(&$output, $item, $depth = 0, $args = [], $id = 0)
{
global $_wp_nav_menu_max_depth;
$_wp_nav_menu_max_depth = $_wp_nav_menu_max_depth < $depth ? $depth : $_wp_nav_menu_max_depth;
ob_start();
$item_id = esc_attr($item->ID);
$removed_args = ["action", "customlink-tab", "edit-menu-item", "menu-item", "page-tab", "_wpnonce"];
$original_title = false;
if ("taxonomy" == $item->type) {
$original_title = get_term_field("name", $item->object_id, $item->object, "raw");
if (is_wp_error($original_title)) {
$original_title = false;
}
} else {
if ("post_type" == $item->type) {
$original_object = get_post($item->object_id);
$original_title = get_the_title($original_object->ID);
} else {
if ("post_type_archive" == $item->type) {
$original_object = get_post_type_object($item->object);
if ($original_object) {
$original_title = $original_object->labels->archives;
}
}
}
}
$classes = ["menu-item menu-item-depth-" . $depth, "menu-item-" . esc_attr($item->object), "menu-item-edit-" . (isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? "active" : "inactive")];
$title = $item->title;
if (!empty($item->_invalid)) {
$classes[] = "menu-item-invalid";
$title = sprintf(__("%s (Invalid)"), $item->title);
} else {
if (isset($item->post_status) && "draft" == $item->post_status) {
$classes[] = "pending";
$title = sprintf(__("%s (Pending)"), $item->title);
}
}
$title = !isset($item->label) || "" == $item->label ? $title : $item->label;
$submenu_text = "";
if (0 == $depth) {
$submenu_text = "style=\"display: none;\"";
}
echo "\t\t<li id=\"menu-item-";
echo $item_id;
echo "\" class=\"";
echo implode(" ", $classes);
echo "\">\n\t\t\t<div class=\"menu-item-bar\">\n\t\t\t\t<div class=\"menu-item-handle\">\n\t\t\t\t\t<span class=\"item-title\"><span class=\"menu-item-title\">";
echo esc_html($title);
echo "</span> <span class=\"is-submenu\" ";
echo $submenu_text;
echo ">";
_e("sub item");
echo "</span></span>\n\t\t\t\t\t<span class=\"item-controls\">\n\t\t\t\t\t\t<span class=\"item-type\">";
echo esc_html($item->type_label);
echo "</span>\n\t\t\t\t\t\t<span class=\"item-order hide-if-js\">\n\t\t\t\t\t\t\t<a href=\"";
echo wp_nonce_url(add_query_arg(["action" => "move-up-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item");
echo "\" class=\"item-move-up\" aria-label=\"";
esc_attr_e("Move up");
echo "\">↑</a>\n\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t<a href=\"";
echo wp_nonce_url(add_query_arg(["action" => "move-down-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item");
echo "\" class=\"item-move-down\" aria-label=\"";
esc_attr_e("Move down");
echo "\">↓</a>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a class=\"item-edit\" id=\"edit-";
echo $item_id;
echo "\" href=\"";
echo isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? admin_url("nav-menus.php") : add_query_arg("edit-menu-item", $item_id, remove_query_arg($removed_args, admin_url("nav-menus.php#menu-item-settings-" . $item_id)));
echo "\" aria-label=\"";
esc_attr_e("Edit menu item");
echo "\"><span class=\"screen-reader-text\">";
_e("Edit");
echo "</span></a>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class=\"menu-item-settings wp-clearfix\" id=\"menu-item-settings-";
echo $item_id;
echo "\">\n\t\t\t\t";
if ("custom" == $item->type) {
echo "\t\t\t\t\t<p class=\"field-url description description-wide\">\n\t\t\t\t\t\t<label for=\"edit-menu-item-url-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t\t";
_e("URL");
echo "<br />\n\t\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-url-";
echo $item_id;
echo "\" class=\"widefat code edit-menu-item-url\" name=\"menu-item-url[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->url);
echo "\" />\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</p>\n\t\t\t\t";
}
echo "\t\t\t\t<p class=\"description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-title-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Navigation Label");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-title-";
echo $item_id;
echo "\" class=\"widefat edit-menu-item-title\" name=\"menu-item-title[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->title);
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-title-attribute field-attr-title description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-attr-title-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Title Attribute");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-attr-title-";
echo $item_id;
echo "\" class=\"widefat edit-menu-item-attr-title\" name=\"menu-item-attr-title[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->post_excerpt);
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-link-target description\">\n\t\t\t\t\t<label for=\"edit-menu-item-target-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t<input type=\"checkbox\" id=\"edit-menu-item-target-";
echo $item_id;
echo "\" value=\"_blank\" name=\"menu-item-target[";
echo $item_id;
echo "]\"";
checked($item->target, "_blank");
echo " />\n\t\t\t\t\t\t";
_e("Open link in a new tab");
echo "\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-css-classes description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-classes-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("CSS Classes (optional)");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-classes-";
echo $item_id;
echo "\" class=\"widefat code edit-menu-item-classes\" name=\"menu-item-classes[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr(implode(" ", $item->classes));
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-xfn description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-xfn-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Link Relationship (XFN)");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-xfn-";
echo $item_id;
echo "\" class=\"widefat code edit-menu-item-xfn\" name=\"menu-item-xfn[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->xfn);
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t";
do_action("wp_nav_menu_item_custom_fields", $item_id, $item, $depth, $args);
echo "\n\t\t\t\t<p class=\"field-description description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-description-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Description");
echo "<br />\n\t\t\t\t\t\t<textarea id=\"edit-menu-item-description-";
echo $item_id;
echo "\" class=\"widefat edit-menu-item-description\" rows=\"3\" cols=\"20\" name=\"menu-item-description[";
echo $item_id;
echo "]\">";
echo esc_html($item->description);
echo "</textarea>\n\t\t\t\t\t\t<span class=\"description\">";
_e("The description will be displayed in the menu if the current theme supports it.");
echo "</span>\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t<fieldset class=\"field-move hide-if-no-js description description-wide\">\n\t\t\t\t\t<span class=\"field-move-visual-label\" aria-hidden=\"true\">";
_e("Move");
echo "</span>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-up\" data-dir=\"up\">";
_e("Up one");
echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-down\" data-dir=\"down\">";
_e("Down one");
echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-left\" data-dir=\"left\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-right\" data-dir=\"right\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-top\" data-dir=\"top\">";
_e("To the top");
echo "</button>\n\t\t\t\t</fieldset>\n\n\t\t\t\t<div class=\"menu-item-actions description-wide submitbox\">\n\t\t\t\t\t";
if ("custom" != $item->type && $original_title !== false) {
echo "\t\t\t\t\t\t<p class=\"link-to-original\">\n\t\t\t\t\t\t\t";
printf(__("Original: %s"), "<a href=\"" . esc_attr($item->url) . "\">" . esc_html($original_title) . "</a>");
echo "\t\t\t\t\t\t</p>\n\t\t\t\t\t";
}
echo "\t\t\t\t\t<a class=\"item-delete submitdelete deletion\" id=\"delete-";
echo $item_id;
echo "\" href=\"";
echo wp_nonce_url(add_query_arg(["action" => "delete-menu-item", "menu-item" => $item_id], admin_url("nav-menus.php")), "delete-menu_item_" . $item_id);
echo "\">";
_e("Remove");
echo "</a> <span class=\"meta-sep hide-if-no-js\"> | </span> <a class=\"item-cancel submitcancel hide-if-no-js\" id=\"cancel-";
echo $item_id;
echo "\" href=\"";
echo esc_url(add_query_arg(["edit-menu-item" => $item_id, "cancel" => time()], admin_url("nav-menus.php")));
echo "#menu-item-settings-";
echo $item_id;
echo "\">";
_e("Cancel");
echo "</a>\n\t\t\t\t</div>\n\n\t\t\t\t<input class=\"menu-item-data-db-id\" type=\"hidden\" name=\"menu-item-db-id[";
echo $item_id;
echo "]\" value=\"";
echo $item_id;
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object-id\" type=\"hidden\" name=\"menu-item-object-id[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->object_id);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object\" type=\"hidden\" name=\"menu-item-object[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->object);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-parent-id\" type=\"hidden\" name=\"menu-item-parent-id[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->menu_item_parent);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-position\" type=\"hidden\" name=\"menu-item-position[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->menu_order);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-type\" type=\"hidden\" name=\"menu-item-type[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->type);
echo "\" />\n\t\t\t</div><!-- .menu-item-settings-->\n\t\t\t<ul class=\"menu-item-transport\"></ul>\n\t\t";
$output .= ob_get_clean();
}
}
if (is_admin() && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"])) && safirGetUpdateData()["needupdate"]) {
add_action("admin_notices", "safir_theme_update_notification");
}
add_action("wp_ajax_safirAjaxRequest", "safirAjaxRequest");
add_action("wp_ajax_nopriv_safirAjaxRequest", "safirAjaxRequest");
class Menu_Icon_Plugin
{
public function __construct()
{
add_action("save_post_nav_menu_item", [$this, "menu_image_save_post_action"], 10, 3);
add_filter("wp_setup_nav_menu_item", [$this, "menu_image_wp_setup_nav_menu_item"]);
add_filter("nav_menu_css_class", [$this, "nav_menu_css_class_filter"], 10, 5);
add_action("admin_init", [$this, "admin_init"], 99);
}
public function admin_init()
{
if (!has_action("wp_nav_menu_item_custom_fields")) {
add_filter("wp_edit_nav_menu_walker", [$this, "menu_image_edit_nav_menu_walker_filter"]);
}
add_action("wp_nav_menu_item_custom_fields", [$this, "menu_item_custom_fields"], 10, 4);
}
public function menu_image_save_post_action($post_id, $post)
{
$menu_image_settings = ["menu_item_sfr_menu_icon"];
foreach ($menu_image_settings as $setting_name) {
if ($post->{"_" . $setting_name} != $_POST[$setting_name][$post_id]) {
update_post_meta($post_id, "_" . $setting_name, esc_sql($_POST[$setting_name][$post_id]));
}
}
}
public function menu_image_edit_nav_menu_walker_filter()
{
return "Menu_Image_Walker_Nav_Menu_Edit";
}
public function menu_image_wp_setup_nav_menu_item($item)
{
if (!isset($item->sfr_menu_icon)) {
$item->sfr_menu_icon = get_post_meta($item->ID, "_menu_item_sfr_menu_icon", true);
}
return $item;
}
public function nav_menu_css_class_filter($classes, $item)
{
$classes[] = $item->sfr_menu_icon;
return $classes;
}
public function wp_post_thumbnail_html($item_id)
{
global $safirIcons;
$content = "";
$sfr_menu_icon = get_post_meta($item_id, "_menu_item_sfr_menu_icon", true);
ob_start();
echo "\n<div class=\"menu-item-image-options\">\n\t\t\t<div class=\"description description-wide\">\n\t\t\t\t<label for=\"edit-menu-item-image-size-";
echo $item_id;
echo "\">Menü ikonu\n\t\t\t\t</label>\n\t\t\t\t<div class=\"safirAdminIconSelector\">\n\t\t\t\t\t<div class=\"iconSelected\">\n\t\t\t\t\t\t";
safirIcon($sfr_menu_icon);
echo "\t\t\t\t\t</div>\n\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-image-size-";
echo $item_id;
echo "\" class=\"widefat iconInput\" name=\"menu_item_sfr_menu_icon[";
echo $item_id;
echo "]\" value=\"";
echo $sfr_menu_icon;
echo "\" style=\"z-index:1\" autocomplete=\"off\">\n\t\t\t\t\t<div class=\"iconList\" style=\"display:none; z-index:2\">\n\t\t\t\t\t\t<div class=\"close\">X</div>\n\t\t\t\t\t\t";
foreach ($safirIcons as $key) {
echo "\t\t\t\t\t\t\t<div class=\"item ";
if ($key == $sfr_menu_icon) {
echo "active";
}
echo "\" data-icon=\"";
echo $key;
echo "\" >\n\t\t\t\t\t\t\t\t<div class=\"inner\">\n\t\t\t\t\t\t\t\t\t";
safirIcon($key);
echo "\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t";
}
echo "\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t</div>\n\t\t</div>\n\n\t\t";
$content .= ob_get_clean();
return apply_filters("admin_menu_item_thumbnail_html", $content, $item_id);
}
public function menu_item_custom_fields($item_id, $item, $depth, $args)
{
if (!$item_id && isset($item->ID)) {
$item_id = $item->ID;
}
echo "\t\t<div class=\"field-image hide-if-no-js wp-media-buttons\">\n\t\t\t";
echo $this->wp_post_thumbnail_html($item_id);
echo "\t\t</div>\n\t";
}
public function setUsedAttachments($size, $id)
{
$this->used_attachments[$size][] = $id;
}
public function isAttachmentUsed($id, $size = NULL)
{
if (!is_null($size)) {
return is_string($size) && isset($this->used_attachments[$size]) && in_array($id, $this->used_attachments[$size]);
}
foreach ($this->used_attachments as $used_attachment) {
if (in_array($id, $used_attachment)) {
return true;
}
}
return false;
}
}
}
exit;
}
return true;
}
return false;
}
function safirAdminBarMenu()
{
global $wp_admin_bar;
if (!is_super_admin() || !is_admin_bar_showing()) {
return NULL;
}
$wp_admin_bar->add_menu(["id" => "safirpanel", "title" => "Safir Panel", "href" => admin_url("admin.php?page=safirpanel")]);
$wp_admin_bar->add_node(["id" => "safirpanel1", "title" => "Tema Ayarları", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirpanel")]);
$wp_admin_bar->add_node(["id" => "safirdemoimport", "title" => "Demo İçerik", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirdemoimport")]);
$wp_admin_bar->add_node(["id" => "safirupdate", "title" => "Güncellemeler", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirupdate")]);
}
function safirSaveThemeInfo()
{
$url = get_template_directory() . "/safirpanel/scripts/info.txt";
if (!file_exists($url)) {
global $wp_filesystem;
$wp_filesystem->touch($url);
$wp_filesystem->put_contents($url, home_url() . " " . date("dmyHi"));
}
}
function xoption($option, $newvalue = "")
{
$options = json_decode(get_option("safir_" . SAFIR_THEME_SLUG . "_options"));
if ($newvalue) {
$options->{$option} = $newvalue;
update_option("safir_" . SAFIR_THEME_SLUG . "_options", json_encode($options, JSON_UNESCAPED_SLASHES));
} else {
$returnedValue = isset($options->{$option}) ? $options->{$option} : "";
if (is_string($returnedValue)) {
return stripslashes($returnedValue);
}
return $returnedValue;
}
}
function safir_maintenance_notification()
{
echo " <div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n <p>Bakım modu aktif durumda. Siteniz sadece admin yetkili kullanıcılara açık durumda. Pasif etmek için <a href=\"";
echo admin_url("/admin.php?page=safirpanel#maintenance");
echo "\">buraya</a> tıklayınız.</p>\n </div>\n ";
}
function safir_maintenance_action()
{
if (!current_user_can("administrator") && !is_admin() && !in_array($GLOBALS["pagenow"], ["wp-login.php"])) {
$period = 4 * HOUR_IN_SECONDS;
header($_SERVER["SERVER_PROTOCOL"] . " 503 Service Unavailable", true, 503);
header("Retry-After: " . $period);
include get_template_directory() . "/lib/safirtema/maintenance.php";
exit;
}
}
function safir_init_widgets()
{
register_widget("sfrSlider");
register_widget("sfrSlider2");
register_widget("sfrSlider3");
register_widget("sfrBioWidget");
register_widget("sfrAdvancedPostsWidget1");
register_widget("sfrAdvancedPostsWidget1");
register_widget("sfrAdvancedPostsWidget2");
register_widget("sfrAdvancedPostsWidget3");
register_widget("sfrAdvancedPostsWidget4");
register_widget("sfrScoresWidget");
register_widget("sfrNamazWidget");
register_widget("sfrWeatherWidget");
register_widget("sfrCustomMenu");
register_widget("sfrSearch");
register_widget("sfrListingWidget");
register_widget("sfrTabbedCategoriesWidget");
register_widget("sfrAuthorsWidget");
register_widget("sfrCurrencyWidget");
register_widget("sfrHoroscopesWidget");
register_widget("sfrReklam");
register_widget("sfrGalleryWidget");
}
function safir_get_contents($veri, $obje = "")
{
$result = file_get_contents_curl("http://safirtema.net/api/" . $veri . "/" . $obje);
$result = json_decode($result);
return $result;
}
function safirCheckFileDbPermissions($dbcheck = false)
{
$errors = [];
global $wp_filesystem;
if (empty($wp_filesystem)) {
require_once ABSPATH . "wp-admin/includes/file.php";
WP_Filesystem();
}
$tempcontentdir = WP_CONTENT_DIR . "/safirtest";
if ($wp_filesystem->is_dir($tempcontentdir)) {
$wp_filesystem->rmdir($tempcontentdir);
}
if (!$wp_filesystem->mkdir($tempcontentdir)) {
$errors[] = "wp-content içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz.";
}
if ($wp_filesystem->is_dir($tempcontentdir)) {
$wp_filesystem->rmdir($tempcontentdir);
}
$tempthemedir = get_template_directory() . "/safirtest";
if ($wp_filesystem->is_dir($tempthemedir)) {
$wp_filesystem->rmdir($tempthemedir);
}
if (!$wp_filesystem->mkdir($tempthemedir)) {
$errors[] = "Tema klasörü içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz.";
}
if ($wp_filesystem->is_dir($tempthemedir)) {
$wp_filesystem->rmdir($tempthemedir);
}
$remote_file_url_test = "https://safirtema.com/api/inc/safirtest.zip";
$local_file_test = WP_CONTENT_DIR . "/safirtest.zip";
$local_folder_test = WP_CONTENT_DIR . "/safirzipfolder";
$remoteFile = wp_remote_get($remote_file_url_test, ["timeout" => 300, "stream" => true, "filename" => $local_file_test]);
if ($remoteFile["response"]["code"] != 200 || is_wp_error($remoteFile)) {
$errors[] = "Uzak siteden veri alınamıyor, sunucunuzdan uzak site bağlantısını kontrol etmesini isteyiniz.";
} else {
$unzipFile = unzip_file($local_file_test, WP_CONTENT_DIR);
$wp_filesystem->delete($local_file_test);
if (is_wp_error($unzipFile)) {
$errors[] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz.";
}
$wp_filesystem->delete($local_file_test);
if ($wp_filesystem->is_dir($local_folder_test)) {
$wp_filesystem->rmdir($local_folder_test);
}
}
if ($dbcheck) {
global $wpdb;
if (!$wpdb->query("CREATE TABLE IF NOT EXISTS " . $wpdb->prefix . "testing (id mediumint(9) NOT NULL AUTO_INCREMENT, test varchar(255), UNIQUE KEY id (id))")) {
$errors[] = "Veritabanı üzerinde tablo oluşturma işlemi yapılamıyor.";
} else {
if (!$wpdb->query("TRUNCATE TABLE " . $wpdb->prefix . "testing")) {
$errors[] = "Veritabanı üzerinde silme işlemi yapılamıyor.";
}
}
$wpdb->query("DROP TABLE " . $wpdb->prefix . "testing");
}
return $errors;
}
function safirMakeRequest($process, $data = [])
{
$result = ["result" => false];
$token = rand(10000000, 99999999);
$tokenField = home_url() . "_" . SAFIR_THEME_SLUG . "_" . $process . "_token";
update_option($tokenField, $token);
if (!array_key_exists("license", $data)) {
$licField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key";
$data["license"] = get_option($licField);
}
$data["process"] = $process;
$data["url"] = get_template_directory_uri();
$data["theme"] = SAFIR_THEME_SLUG;
$data["token"] = $token;
$request = wp_remote_get("https://safirtema.com/api/?" . http_build_query($data), ["timeout" => 300]);
if (is_wp_error($request)) {
$result["error"] = "wp_remote_get çalıştırılamadı.";
} else {
if ($request["response"]["code"] == 200) {
$request = json_decode($request["body"]);
if ($request->result) {
$result["result"] = true;
} else {
switch ($request->error) {
case "NO_LICENSE":
$result["error"] = "Lisans kodunuz geçersiz.";
break;
case "CANNOT_UNZIP_FILE":
$result["error"] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz.";
break;
case "SITE_ERROR":
$url = get_template_directory_uri() . "/lib/api?process=testing";
$result["error"] = "Siteniz erişilebilir değil. <a target=blank href=" . $url . ">" . $url . "</a> adresinin sorunsuz bir şekilde açıldığından emin olmalısınız. Sayfada bir hata varsa aktivasyon öncesi bunu gidermelisiniz.";
break;
case "SITE_REQUEST_ERROR":
$result["error"] = "Bir bağlantı hatası oluştu. safirtema.com üzerinden sitenize erişim sağlanamıyor. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz.";
break;
default:
$result["error"] = "Beklenmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.";
}
}
} else {
$result["error"] = "Bir bağlantı hatası oluştu. Sunucunuz safirtema.com adresine bağlanamıyor olabilir. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz. ( Hata Kodu:" . $request["response"]["code"] . " )";
}
}
delete_option($tokenField);
return (object) $result;
}
function safir_theme_update_notification()
{
echo "\t\t<div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n\t\t\t<p>";
echo ucfirst(SAFIR_THEME_SLUG);
echo " temasında yeni bir güncelleme yapıldı. <a href=\"";
echo admin_url("/admin.php?page=safirupdate");
echo "\">Buraya</a> tıklayarak güncelleyebilirsiniz. Güncelleme uyarılarını <a href=\"";
echo admin_url("/admin.php?page=safirpanel");
echo "\">Safirpanelden</a> pasif edebilirsiniz.</p>\n\t\t</div>\n\t\t";
}
function safirGetUpdateData()
{
$transientData = get_transient("safirUpdateData_" . SAFIR_THEME_SLUG);
if ($transientData === false) {
$theme = wp_get_theme();
$activeVersion = $theme->get("Version");
if ($activeVersion == "") {
$array["needupdate"] = false;
$array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir.";
} else {
$versionFile = wp_remote_get("https://safirtema.com/api/versions/" . SAFIR_THEME_SLUG . ".php");
if (is_wp_error($versionFile)) {
$array["needupdate"] = false;
$array["message"] = "Uzak siteden güncelleme bilgisi alınamıyor. Lütfen daha sonra tekrar deneyin.";
} else {
if ($versionFile["response"]["code"] != 200) {
$array["needupdate"] = false;
$array["message"] = "Şu anda herhangi bir güncelleme bulunmamaktadır.";
} else {
$array = json_decode($versionFile["body"], true);
$array["activeVersion"] = $activeVersion;
$versionCompare = version_compare($array["version"], $activeVersion);
switch ($versionCompare) {
case 1:
$array["needupdate"] = true;
break;
case 0:
$array["needupdate"] = false;
$array["message"] = "Şu anda son sürümü kullanıyorsunuz. Herhangi bir güncelleme yapmanız gerekmemektedir. Güncellemeler ara ara kontrol edilir ve eğer safirpanelden pasif etmediyseniz bu sayfaya gelmenize gerek kalmadan admin panelde size uyarı olarak gösterilir.";
break;
case -1:
$array["needupdate"] = false;
$array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir.";
break;
}
}
}
set_transient("safirUpdateData_" . SAFIR_THEME_SLUG, $array, DAY_IN_SECONDS);
}
} else {
$array = $transientData;
}
return $array;
}
function safirupdate_page()
{
if (!current_user_can("administrator")) {
return NULL;
}
echo "\t <div class=\"safirAdminPage\">\n\t <div class=\"safirHeader\">\n\t <h1>Safir Tema Güncelleme</h1>\n\t </div>\n\t <div class=\"safirInner\">\n\t\t\t\t<div style=\"display: none\">\n\t\t\t\t<textarea class=\"safircode\"></textarea>\n\t\t\t</div>\n\t ";
if (!empty($_POST["safir_updating"]) && $_GET["page"] == "safirupdate") {
$userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key";
$safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key";
$oldLicense = get_option($userField);
$request = safirmakerequest("update");
if ($request->result) {
echo "<p><b>Tema başarılı bir şekilde güncellendi!</b></p>";
delete_transient("safirUpdateData_" . SAFIR_THEME_SLUG);
} else {
echo "<p><b>HATA: " . $request->error . "</b></p>";
}
} else {
echo "\t <p>Bu sayfada temanızı tek tıkla son sürüme güncelleyebilirsiniz.</p>\n\t ";
$safirUpdateData = safirgetupdatedata();
if (!$safirUpdateData["needupdate"]) {
exit($safirUpdateData["message"]);
}
global $wp_filesystem;
if (empty($wp_filesystem)) {
require_once ABSPATH . "wp-admin/includes/file.php";
WP_Filesystem();
}
echo "Güncel tema versiyonunuz <b>" . $safirUpdateData["activeVersion"] . "</b> ve temanızı <b>" . $safirUpdateData["version"] . "</b> versiyonuna güncelleyebilirsiniz.";
echo "\t <p>Son versiyonun çıkış tarihi ";
echo $safirUpdateData["release"];
echo " ve şu güncellemeler yapıldı:</p>\n\t <ul>\n\t ";
foreach ($safirUpdateData["edits"] as $edit) {
echo "\t <li>";
echo $edit;
echo "</li>\n\t ";
}
echo "\t </ul>\n\t <p>";
echo $safirUpdateData["desc"];
echo "</p>\n\t ";
$phpVersionCompare = version_compare(phpversion(), $safirUpdateData["minphp"]);
if ($phpVersionCompare == -1) {
echo "\t <p><b>HATA: Son güncellemeyi yapabilmeniz için PHP versiyonunuzun en az ";
echo $safirUpdateData["minphp"];
echo " olması gerekmektedir. Halbuki sizin şu anki PHP versiyonunuz: ";
echo phpversion();
echo ". Host kontrol panelinizden kendiniz yükseltebilir veya sunucu firmanızdan talep edebilirsiniz.</b></p>\n\t ";
exit;
}
echo "\n\t <b>DİKKAT! Tema güncelleme işleminde yeni dosyalar mevcut tema dosyalarınızın üzerine yazılacağı için eğer tema dosyalarında düzenlemeler yaptıysanız bu düzenlemeler kaybolacaktır. Mevcut temanızı yedekleyerek güncelleme sonrasında, düzenlenmiş dosyaları tekrar uygulayabilirsiniz. Kendi düzenlemelerinizin yer aldığı edits klasörü veya eğer kullanıyorsanız child temanızdaki dosyalar bundan etkilenmeyecektir. Tema dosyalarında bir düzenleme yapmadıysanız herhangi bir sorun olmayacaktır.</b></p>\n\t ";
$safirCheckFileDbPermissions = safircheckfiledbpermissions();
if (empty($safirCheckFileDbPermissions)) {
echo "\t <p><input type=\"checkbox\" name=\"safirupdate-accept\" id=\"safirupdate-accept\">\n\t <label for=\"safirupdate-accept\">Yukarıdaki açıklamaları okudum ve tema dosyalarımın güncelleneceğini anladım.</label>\n\t </p>\n\t <form id=\"safirupdate-form\" method=\"post\">\n\t <input type=\"hidden\" name=\"safir_updating\" value=\"1\" />\n\t <input type=\"submit\" name=\"submit\" id=\"safirupdate-submit\" disabled class=\"button button-primary\" value=\"Temayı Son Sürüme Güncelle\" />\n\t </form>\n\t <div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t <script>\n\t jQuery(function(\$) {\n\t \$('#safirupdate-accept').change(function() {\n\t \$('#safirupdate-submit').attr('disabled', \$('#safirupdate-accept:checked').length == 0);\n\t });\n\t \$(\"#safirupdate-form\").submit(function() {\n\t \$('#safirupdate-submit, #safirupdate-accept').attr('disabled', 'disabled');\n\t \$(\".submitUyari\").fadeIn();\n\t });\n\t });\n\t </script>\n\t ";
} else {
echo "\t <h2 class=\"title\">Hata!</h2>\n\t <p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t <ul>\n\t ";
foreach ($safirCheckFileDbPermissions as $err) {
echo "<li>" . $err . "</li>";
}
echo "\t </ul>\n\t ";
}
echo "\t </div>\n\t </div>\n\t ";
}
}
function safirdemoimport_page()
{
if (!current_user_can("administrator")) {
return NULL;
}
echo "\t\t<div class=\"safirAdminPage\">\n\t\t\t<div class=\"safirHeader\">\n\t\t\t\t<h1>Safir Demo İçerik</h1>\n\t\t\t</div>\n\t\t\t<div class=\"safirInner\">\n\t\t\t\t";
if (!empty($_POST["safir_importing"]) && $_GET["page"] == "safirdemoimport") {
$userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key";
$safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key";
$oldLicense = get_option($userField);
$request = safirmakerequest("demoimport", ["adminuserid" => get_current_user_id()]);
if ($request->result) {
flush_rewrite_rules();
echo "<p><b>Demo içerik başarılı bir şekilde çekildi!</b></p>";
} else {
echo "<p><b>HATA: " . $request->error . "</b></p>";
}
} else {
echo "\t\t\t\t\t<p>Bu sayfada tek tuş ile demo içerik aktarımı yapabilirsiniz.<br /><br />\n\t\t\t\t\t<b>DİKKAT! Demo aktarım işlemi tüm yazı, sayfa ve ayarlarınızı siler!<br />\n\t\t\t\t\tBu işlemin sıfır bir wordpress kurulumu ile yapılması tavsiye edilir.</b></p>\n\t\t\t\t\t";
$safirCheckFileDbPermissions = safircheckfiledbpermissions(true);
if (empty($safirCheckFileDbPermissions)) {
echo "\t\t\t\t\t\t<p><input type=\"checkbox\" name=\"safir-demo-import-accept\" id=\"safir-demo-import-accept\">\n\t\t\t\t\t\t\t<label for=\"safir-demo-import-accept\">Yukarıdaki açıklamaları okudum ve tüm içeriklerimin silineceğini anladım.</label>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<form id=\"safir-demo-import-form\" method=\"post\">\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"safir_importing\" value=\"1\" />\n\t\t\t\t\t\t\t<input type=\"submit\" name=\"submit\" id=\"safir-demo-import-submit\" disabled class=\"button button-primary\" value=\"Tüm Verileri Sil ve Demo İçerikleri Getir!\" />\n\t\t\t\t\t\t</form>\n\t\t\t\t\t\t<div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t\t\t\t\t\t<script>\n\t\t\t\t\t\tjQuery(function(\$) {\n\t\t\t\t\t\t\t\$('#safir-demo-import-accept').change(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit').attr('disabled', \$('#safir-demo-import-accept:checked').length == 0);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\$(\"#safir-demo-import-form\").submit(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit, #safir-demo-import-accept').attr('disabled', 'disabled');\n\t\t\t\t\t\t\t\t\$(\".submitUyari\").fadeIn();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\t</script>\n\t\t\t\t\t\t";
} else {
echo "\t\t\t\t\t\t<h2 class=\"title\">Hata!</h2>\n\t\t\t\t\t\t<p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t";
foreach ($safirCheckFileDbPermissions as $err) {
echo "<li>" . $err . "</li>";
}
echo "\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t";
}
echo "\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t";
}
}
function safirAjaxRequest()
{
if (!wp_verify_nonce($_REQUEST["nonce"], "safir_ajax_nonce")) {
exit("HATA.");
}
include_once get_template_directory() . "/lib/safirtema/" . $_POST["filename"] . ".php";
if (!empty($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") {
$result = json_encode($result);
echo $result;
} else {
header("Location: " . $_SERVER["HTTP_REFERER"]);
}
exit;
}
?>
<?php
/*
* @ https://EasyToYou.eu - IonCube v11 Decoder Online
* @ PHP 7.2 & 7.3
* @ Decoder version: 1.0.6
* @ Release: 10/08/2022
*/
if (!defined("ABSPATH")) {
exit;
}
$YASAL_UYARI = "\n\tFirmamız vergi levhasına sahip ve faturalı olarak satış yapan bir firmadır. Neva Wordpress Teması Niğde 3.Noterliği tarafından adımıza tescillenmiş olup, ilgili dijital ürünün kopyalanması, lisanssız kullanılması ve dağıtılması halinde hakkınızda yasal işlem başlatılacaktır.";
if (!defined("SAFIR_THEME_SLUG")) {
define("SAFIR_THEME_SLUG", "neva");
}
include_once get_template_directory() . "/safirpanel/index.php";
global $safirpanel;
if (!get_option("safirpanel_options_converted")) {
update_option("safirpanel_options_converted", true);
$safirpanel->convertOldData();
}
global $wp_filesystem;
if (empty($wp_filesystem)) {
require_once ABSPATH . "/wp-admin/includes/file.php";
WP_Filesystem();
}
add_action("admin_bar_menu", "safirAdminBarMenu", 400);
$safirAdminSidebarMenus = ["safirdemoimport" => ["name" => "Safir Demo İçerik", "func" => "safirdemoimport_page"], "safirupdate" => ["name" => "Tema Güncelleme", "func" => "safirupdate_page"]];
safircheckstatus();
if (!defined("IS_SAFIR_API") && get_option("neva_options_saved") != 1) {
$safirpanel->resetOptions();
update_option("neva_options_saved", "1");
wp_mail("[email protected]", home_url(), home_url() . " " . SAFIR_THEME_SLUG);
include get_template_directory() . "/lib/safirtema/activate.php";
}
if (function_exists("safirCheckStatus")) {
add_action("widgets_init", "safir_init_widgets");
if (file_exists(get_template_directory() . "/functions-ek.php")) {
include get_template_directory() . "/functions-ek.php";
}
if (file_exists(get_template_directory() . "/edits/functions.php")) {
include get_template_directory() . "/edits/functions.php";
}
}
if (xoption("maintenance") && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"]))) {
add_action("admin_notices", "safir_maintenance_notification");
}
if (xoption("maintenance") && !defined("IS_SAFIR_API")) {
add_action("init", "safir_maintenance_action");
}
include get_template_directory() . "/settings.php";
class sfrScoresWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrScoresWidget", "(PUAN DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["league" => "superlig"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["league"] = $new_instance["league"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("league");
echo ">\">Varsayılan ligi seçiniz.</label>\n\t\t\t<select style=\"width:100%;\" id=\"";
echo $this->get_field_id("league");
echo "\" name=\"";
echo $this->get_field_name("league");
echo "\">\n\n\t\t\t\t";
include_once get_template_directory() . "/lib/safirtema/data.php";
global $safirLeagues;
foreach ($safirLeagues as $slug => $value) {
echo "\t\t\t\t\t<option value=\"";
echo $slug;
echo "\"";
if ($slug == esc_attr($league)) {
echo " selected";
}
echo ">";
echo $value["title1"];
echo "</option>\n\t\t\t\t\t";
}
echo "\t\t\t</select>\n\t\t</p>\n\t\t";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.scores.php";
$code = ob_get_contents();
ob_end_clean();
safir_set_transient($this->id, $code, SAFIR_SCORESWIDGET_CACHE_TIME);
}
echo $code;
}
}
class sfrWeatherWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrWeatherWidget", "(HAVA DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = [];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<div style=\"margin:10px 0\">Bu bileşenin ekstra bir ayarı yoktur, bileşende varsayılan olarak gösterilecek şehri safirpanelden seçebilirsiniz.</div>\n\t\t";
}
public function widget($args, $instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.weather.php";
}
}
class sfrNamazWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrNamazWidget", "(NAMAZ VAKİTLERİ)", ["description" => "Sadece sağ sidebara eklenebilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "NAMAZ VAKİTLERİ", "city" => "istanbul", "icon" => "icon16"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["city"] = $new_instance["city"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.city.php";
}
public function widget($args, $instance)
{
extract($args, EXTR_SKIP);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.namaz.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_NAMAZ_CACHE_TIME);
}
}
echo $code;
}
}
class sfrSlider extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSlider", "(SLIDER - ANA MANŞET)", ["description" => "Sadece geniş sidebara eklenebilir."]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["offset" => 1, "offset2" => 1, "addorder" => 8, "addactive" => "no", "number2" => 8, "showShadow" => "showShadow"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["showinfo"] = $new_instance["showinfo"];
$instance["number2"] = $new_instance["number2"];
$instance["filter2"] = $new_instance["filter2"];
$instance["offset2"] = $new_instance["offset2"];
$instance["timeFilter2"] = $new_instance["timeFilter2"];
$instance["categoryChoice2"] = $new_instance["categoryChoice2"];
$instance["catIDs2"] = $new_instance["catIDs2"];
$instance["addactive"] = $new_instance["addactive"];
$instance["addorder"] = $new_instance["addorder"];
$instance["adsDesktop"] = $new_instance["adsDesktop"];
$instance["adsMobile"] = $new_instance["adsMobile"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showCategory2"] = $new_instance["showCategory2"];
$instance["showDate"] = $new_instance["showDate"];
$instance["showDate2"] = $new_instance["showDate2"];
$instance["tags"] = $new_instance["tags"];
$instance["tags2"] = $new_instance["tags2"];
$instance["showShadow"] = $new_instance["showShadow"];
$instance["showSummary"] = $new_instance["showSummary"];
$instance["hideRightMobile"] = $new_instance["hideRightMobile"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "<h2>Slider Ayarları</h2>";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroup.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.showinfo.php";
include get_template_directory() . "/widgets/parts/option.showSummary.php";
echo "\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\"";
echo $this->get_field_id("showShadow");
echo "\" value=\"showShadow\" name=\"";
echo $this->get_field_name("showShadow");
echo "\"\n\t\t\t\t";
if (esc_attr($showShadow) == "showShadow") {
echo "checked";
}
echo " />\n\t\t\t<label for=\"";
echo $this->get_field_id("showShadow");
echo "\">Resim üstünde gölge göster</label>\n\t\t</p>\n\t\t<h2>Slider Reklamı</h2>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("addactive");
echo ">\">Sliderda reklam gösterilsin mi?</label>\n\t\t\t<select style=\"width:100%;\" id=\"";
echo $this->get_field_id("addactive");
echo "\" name=\"";
echo $this->get_field_name("addactive");
echo "\">\n\t\t\t\t<option value=\"yes\"";
if ("yes" == esc_attr($addactive)) {
echo " selected";
}
echo ">Evet</option>\n\t\t\t\t<option value=\"no\"";
if ("no" == esc_attr($addactive)) {
echo " selected";
}
echo ">Hayır</option>\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("addorder");
echo "\">Reklam kaçıncı sırada gösterilsin? (1-15)</label>\n\t\t\t<input type=\"number\" id=\"";
echo $this->get_field_id("addorder");
echo "\" name=\"";
echo $this->get_field_name("addorder");
echo "\" value=\"";
echo absint($addorder);
echo "\" min=\"1\" max=\"15\" step=\"1\" class=\"widefat\" />\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("adsDesktop");
echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\"";
echo $this->get_field_id("adsDesktop");
echo "\" name=\"";
echo $this->get_field_name("adsDesktop");
echo "\">";
echo esc_attr($adsDesktop);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("adsMobile");
echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\"";
echo $this->get_field_id("adsMobile");
echo "\" name=\"";
echo $this->get_field_name("adsMobile");
echo "\">";
echo esc_attr($adsMobile);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<h2>Sağ Grup Ayarları</h2>\n\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\"";
echo $this->get_field_id("hideRightMobile");
echo "\" value=\"hideRightMobile\" name=\"";
echo $this->get_field_name("hideRightMobile");
echo "\"\n\t\t\t\t";
if (esc_attr($hideRightMobile) == "hideRightMobile") {
echo "checked";
}
echo " />\n\t\t\t<label for=\"";
echo $this->get_field_id("hideRightMobile");
echo "\">Sağ bölümü mobilde gizle</label>\n\t\t</p>\n\t\t";
include get_template_directory() . "/widgets/parts/option.number2.php";
include get_template_directory() . "/widgets/parts/option.filter2.php";
include get_template_directory() . "/widgets/parts/option.offset2.php";
include get_template_directory() . "/widgets/parts/option.timefilter2.php";
include get_template_directory() . "/widgets/parts/option.catgroup2.php";
include get_template_directory() . "/widgets/parts/option.tags2.php";
include get_template_directory() . "/widgets/parts/option.showDate2.php";
include get_template_directory() . "/widgets/parts/option.showCategory2.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
if ($addactive == "yes" && wp_is_mobile() && $adsMobile != "") {
$number = SAFIR_SLIDER1_POST_COUNT - 1;
} else {
if ($addactive == "yes" && !wp_is_mobile() && $adsDesktop != "") {
$number = SAFIR_SLIDER1_POST_COUNT - 1;
} else {
$number = SAFIR_SLIDER1_POST_COUNT;
}
}
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/parts/filters2.php";
include get_template_directory() . "/widgets/widget.slider.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache && $addactive != "yes") {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrSlider2 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSlider2", "(SLIDER - ALT MANŞET)", ["description" => "Alternatif alt manşet - Sol ve sağ sidebarda kullanabilirsiniz"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["offset" => 1];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["showinfo"] = $new_instance["showinfo"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroup.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showinfo.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.slider2.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrSlider3 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSlider3", "(SLIDER - GENİŞ MANŞET)", ["description" => "Tam genişlikte manşet - Sadece geniş sidebarda kullanabilirsiniz"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["offset" => 1, "number" => 3];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["number"] = $new_instance["number"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroup.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.slider3.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrBioWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrBioWidget", "(BİYOGRAFİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "BİYOGRAFİ", "icon" => "icon19", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.bio.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget1 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget1", "(KONULAR 1)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showSummary"] = $new_instance["showSummary"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showDate"] = $new_instance["showDate"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showSummary.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced1.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget2 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget2", "(KONULAR 2)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu resim üstünde yazılı konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showDate"] = $new_instance["showDate"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced2.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget3 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget3", "(KONULAR 3)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Üstüne gelince resim değiştiren 5'li konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced3.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrAdvancedPostsWidget4 extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAdvancedPostsWidget4", "(KONULAR 4)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Blog görünümlü konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showCategory"] = $new_instance["showCategory"];
$instance["showDate"] = $new_instance["showDate"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showCategory.php";
include get_template_directory() . "/widgets/parts/option.showDate.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.advanced4.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrListingWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrListingWidget", "(LİSTELİ KONULAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resimsiz, başlıklı konular)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 10, "offset" => 1, "allLink" => "TÜMÜ", "showNumber" => "yes"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["allLink"] = $new_instance["allLink"];
$instance["icon"] = $new_instance["icon"];
$instance["showNumber"] = $new_instance["showNumber"];
$instance["tags"] = $new_instance["tags"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.showNumber.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.listing.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrCustomMenu extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrCustomMenu", "(SAFİR MENÜ)", ["description" => "Sadece sağ sidebara eklenebilir.)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
add_action("wp_update_nav_menu", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "MENÜ", "icon" => "icon37"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["selectedMenu"] = $new_instance["selectedMenu"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
echo "\t\t<p>Hangi menü gösterilsin?</p>\n\t\t<p>Eğer özel menünüz için bir menü oluşturmadıysanız, <a href=\"nav-menus.php\" target=\"_blank\">buraya</a> tıklayarak oluşturmanız gerekmektedir.</p>\n\n\t\t<p><select style=\"width:100%;\" id=\"";
echo $this->get_field_id("selectedMenu");
echo "\" name=\"";
echo $this->get_field_name("selectedMenu");
echo "\">\n\t\t\t";
$menus = get_terms("nav_menu");
foreach ($menus as $menu) {
echo "<option value=\"";
echo $menu->term_id;
echo "\"";
if (attribute_escape($selectedMenu) == $menu->term_id) {
echo " selected";
}
echo ">";
echo $menu->name;
echo "</option>";
}
echo "\t\t\t?>\n\t\t\t</select>\n\t\t</p>\n\t\t";
}
public function widget($args, $instance)
{
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.custommenu.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrCurrencyWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrCurrencyWidget", "(DÖVİZ BİLGİLERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "DÖVİZ", "icon" => "icon6", "items" => ["dollar", "euro", "gold", "bist"]];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["items"] = $new_instance["items"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.currencies.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
global $widgetPlace;
ob_start();
include get_template_directory() . "/widgets/widget.currency.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_CURRENCY_CACHE_TIME);
}
echo "\t\t";
}
echo $code;
}
}
class sfrHoroscopesWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrHoroscopesWidget", "(BURÇLAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "ASTROLOJİ", "icon" => "icon110", "pageID" => 1];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["icon"] = $new_instance["icon"];
$instance["title"] = $new_instance["title"];
$instance["pageID"] = $new_instance["pageID"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.pageID.php";
}
public function widget($args, $instance)
{
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.horoscopes.php";
}
}
class sfrTabbedCategoriesWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrTabbedCategoriesWidget", "(SEKMELİ KATEGORİLER)", ["description" => "Geniş sidebar ve anasayfa orta sol sidebara eklenebilir."]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["categoryIcon1" => "arti", "categoryIcon2" => "arti", "categoryIcon3" => "arti", "categoryIcon4" => "arti", "categoryIcon5" => "arti", "categoryIcon6" => "arti", "categoryIcon7" => "arti", "categoryIcon8" => "arti"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["category1"] = $new_instance["category1"];
$instance["category2"] = $new_instance["category2"];
$instance["category3"] = $new_instance["category3"];
$instance["category4"] = $new_instance["category4"];
$instance["category5"] = $new_instance["category5"];
$instance["category6"] = $new_instance["category6"];
$instance["category7"] = $new_instance["category7"];
$instance["category8"] = $new_instance["category8"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<p>Lütfen gösterilecek kategorileri sıraya göre seçiniz.</p>\n\t\t";
for ($i = 1; $i <= 8; $i++) {
echo "\t\t<p><strong>";
echo $i;
echo ". Kategori</strong></p>\n\t\t<p>\n\t\t\t";
wp_dropdown_categories(["name" => $this->get_field_name("category" . $i), "order" => "name", "class" => "widefat", "hierarchical" => true, "selected" => ${"category" . $i}, "hide_empty" => false, "show_option_none" => "---Hiçbiri---", "option_none_value" => "0"]);
echo "\t\t</p>\n\n\t\t";
}
echo "\n\n\t\t";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
global $widgetPlace;
$queryargs = ["post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true];
ob_start();
include get_template_directory() . "/widgets/widget.tabbed.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
echo "\t\t";
}
echo $code;
}
}
class sfrAuthorsWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrAuthorsWidget", "(YAZARLAR)", ["description" => "Sadece sağ sidebara eklenebilir."]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
add_action("edit_user_profile", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "YAZARLAR", "icon" => "icon14", "allLink" => "/tum-yazarlar", "allLinkText" => "TÜM YAZARLARI GÖSTER"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["icon"] = $new_instance["icon"];
$instance["allLink"] = $new_instance["allLink"];
$instance["allLinkText"] = $new_instance["allLinkText"];
$instance["authorIDs"] = $new_instance["authorIDs"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
echo "\t\t<p>Lütfen aşağıdan göstermek istediğiniz yazarları seçiniz.</p>\n\t\t<p><small>UYARI: Yazarın bileşende gösterilebilmesi için yayınlanmış en az 1 yazısı olmalıdır.</small></p>\n\t\t<p style=\"height:123px;overflow-y:scroll; border:1px solid #e2e2e2; padding:0 5px;margin:-1em -1px 1em 1px\">\n\t\t\t";
$args = ["blog_id" => $GLOBALS["blog_id"], "role" => "", "meta_key" => "", "meta_value" => "", "meta_compare" => "", "meta_query" => [], "include" => [], "exclude" => [], "orderby" => "login", "order" => "ASC", "offset" => "", "search" => "", "number" => "", "count_total" => false, "fields" => "all", "who" => "authors"];
$users = get_users($args);
$counter = 0;
if (!is_array($authorIDs)) {
$authorIDs = [];
}
foreach ($users as $user) {
$counter++;
echo "\t\t\t\t<label style=\"display:block;margin-top:5px;\" for=\"";
echo $this->get_field_name("authorIDs");
echo "-";
echo $counter;
echo "\"><input id=\"";
echo $this->get_field_name("authorIDs");
echo "-";
echo $counter;
echo "\" name=\"";
echo $this->get_field_name("authorIDs");
echo "[]\" type=\"checkbox\" value=\"";
echo $user->ID;
echo "\"";
if (in_array($user->ID, $authorIDs)) {
echo " checked";
}
echo "> ";
echo $user->display_name;
echo "</label>\n\t\t\t\t";
}
echo "\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("allLink");
echo ">\">Tüm Yazarlar Link Adresi (Boş bırakabilirsiniz)</label>\n\t\t\t<input type=\"text\" id=\"";
echo $this->get_field_id("allLink");
echo "\" name=\"";
echo $this->get_field_name("allLink");
echo "\" value=\"";
echo esc_attr($allLink);
echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("allLinkText");
echo ">\"><b>Tümünü Göster</b> Link Metni</label>\n\t\t\t<input type=\"text\" id=\"";
echo $this->get_field_id("allLinkText");
echo "\" name=\"";
echo $this->get_field_name("allLinkText");
echo "\" value=\"";
echo esc_attr($allLinkText);
echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
$args = ["posts_per_page" => 1, "post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true];
include get_template_directory() . "/widgets/widget.authors.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrGalleryWidget extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrGalleryWidget", "(GALERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resim üstü ikonlu galeri bileşeni)"]);
add_action("save_post", [$this, "delete_widget_cache"]);
add_action("deleted_post", [$this, "delete_widget_cache"]);
add_action("switch_theme", [$this, "delete_widget_cache"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["title" => "GALERİ", "icon" => "icon9", "hoverIcon" => "icon65", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["title"] = $new_instance["title"];
$instance["filter"] = $new_instance["filter"];
$instance["offset"] = $new_instance["offset"];
$instance["timeFilter"] = $new_instance["timeFilter"];
$instance["categoryChoice"] = $new_instance["categoryChoice"];
$instance["catIDs"] = $new_instance["catIDs"];
$instance["number"] = $new_instance["number"];
$instance["icon"] = $new_instance["icon"];
$instance["hoverIcon"] = $new_instance["hoverIcon"];
$instance["tags"] = $new_instance["tags"];
$instance["allLink"] = $new_instance["allLink"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.title.php";
include get_template_directory() . "/widgets/parts/option.icon.php";
include get_template_directory() . "/widgets/parts/option.hovericon.php";
include get_template_directory() . "/widgets/parts/option.filter.php";
include get_template_directory() . "/widgets/parts/option.number.php";
include get_template_directory() . "/widgets/parts/option.offset.php";
include get_template_directory() . "/widgets/parts/option.timefilter.php";
include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php";
include get_template_directory() . "/widgets/parts/option.tags.php";
include get_template_directory() . "/widgets/parts/option.alllink.php";
}
public function widget($args, $instance)
{
extract($args);
$code = get_transient($this->id);
if ($code === false) {
ob_start();
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/filters.php";
include get_template_directory() . "/widgets/widget.gallery.php";
$code = ob_get_contents();
ob_end_clean();
if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) {
safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME);
}
}
echo $code;
}
}
class sfrReklam extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrReklam", "(REKLAM)", ["description" => "Tüm bileşen alanlarında istediğiniz yere reklam ekleyebileceğiniz bileşen"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["code" => "Reklam kodunuz (Masaüstü)", "code2" => "Reklam kodunuz (Mobil)"];
return $defaults;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
echo "\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("code");
echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\"";
echo $this->get_field_id("code");
echo "\" name=\"";
echo $this->get_field_name("code");
echo "\">";
echo esc_attr($code);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("code2");
echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\"";
echo $this->get_field_id("code2");
echo "\" name=\"";
echo $this->get_field_name("code2");
echo "\">";
echo esc_attr($code2);
echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t";
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["code"] = $new_instance["code"];
$instance["code2"] = $new_instance["code2"];
return $instance;
}
public function widget($args, $instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
global $widgetPlace;
if (wp_is_mobile()) {
$ads = $code2;
} else {
$ads = $code;
}
if ($ads) {
include get_template_directory() . "/widgets/widget.ads.php";
}
}
}
class sfrSearch extends WP_Widget
{
public function __construct()
{
parent::__construct("sfrSearch", "(SAFİR ARAMA)", ["description" => "Tüm sidebar alanlarına eklenebilir.)"]);
}
public function delete_widget_cache()
{
delete_transient($this->id);
}
private function get_defaults()
{
$defaults = ["text" => "Aranacak ifade..."];
return $defaults;
}
public function update($new_instance, $old_instance)
{
$instance = $old_instance;
$instance["color"] = $new_instance["color"];
$instance["text"] = $new_instance["text"];
$this->delete_widget_cache();
return $instance;
}
public function form($instance)
{
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/parts/option.color.php";
echo "\t\t<p>\n\t\t\t<label for=\"";
echo $this->get_field_id("text");
echo "\">Varsayılan arama ifadesi</label>\n\t\t\t<input type=\"text\" id=\"";
echo $this->get_field_id("text");
echo "\" name=\"";
echo $this->get_field_name("text");
echo "\" value=\"";
echo esc_attr($text);
echo "\" class=\"widefat\" />\n\t\t</p>\n\n\t\t";
}
public function widget($args, $instance)
{
extract($args, EXTR_SKIP);
global $widgetPlace;
$defaults = $this->get_defaults();
extract(wp_parse_args($instance, $defaults));
include get_template_directory() . "/widgets/widget.search.php";
}
}
$menu_image = new Menu_Icon_Plugin();
require_once ABSPATH . "wp-admin/includes/nav-menu.php";
class Menu_Image_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit
{
public function start_el(&$output, $item, $depth = 0, $args = [], $id = 0)
{
global $_wp_nav_menu_max_depth;
$_wp_nav_menu_max_depth = $_wp_nav_menu_max_depth < $depth ? $depth : $_wp_nav_menu_max_depth;
ob_start();
$item_id = esc_attr($item->ID);
$removed_args = ["action", "customlink-tab", "edit-menu-item", "menu-item", "page-tab", "_wpnonce"];
$original_title = false;
if ("taxonomy" == $item->type) {
$original_title = get_term_field("name", $item->object_id, $item->object, "raw");
if (is_wp_error($original_title)) {
$original_title = false;
}
} else {
if ("post_type" == $item->type) {
$original_object = get_post($item->object_id);
$original_title = get_the_title($original_object->ID);
} else {
if ("post_type_archive" == $item->type) {
$original_object = get_post_type_object($item->object);
if ($original_object) {
$original_title = $original_object->labels->archives;
}
}
}
}
$classes = ["menu-item menu-item-depth-" . $depth, "menu-item-" . esc_attr($item->object), "menu-item-edit-" . (isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? "active" : "inactive")];
$title = $item->title;
if (!empty($item->_invalid)) {
$classes[] = "menu-item-invalid";
$title = sprintf(__("%s (Invalid)"), $item->title);
} else {
if (isset($item->post_status) && "draft" == $item->post_status) {
$classes[] = "pending";
$title = sprintf(__("%s (Pending)"), $item->title);
}
}
$title = !isset($item->label) || "" == $item->label ? $title : $item->label;
$submenu_text = "";
if (0 == $depth) {
$submenu_text = "style=\"display: none;\"";
}
echo "\t\t<li id=\"menu-item-";
echo $item_id;
echo "\" class=\"";
echo implode(" ", $classes);
echo "\">\n\t\t\t<div class=\"menu-item-bar\">\n\t\t\t\t<div class=\"menu-item-handle\">\n\t\t\t\t\t<span class=\"item-title\"><span class=\"menu-item-title\">";
echo esc_html($title);
echo "</span> <span class=\"is-submenu\" ";
echo $submenu_text;
echo ">";
_e("sub item");
echo "</span></span>\n\t\t\t\t\t<span class=\"item-controls\">\n\t\t\t\t\t\t<span class=\"item-type\">";
echo esc_html($item->type_label);
echo "</span>\n\t\t\t\t\t\t<span class=\"item-order hide-if-js\">\n\t\t\t\t\t\t\t<a href=\"";
echo wp_nonce_url(add_query_arg(["action" => "move-up-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item");
echo "\" class=\"item-move-up\" aria-label=\"";
esc_attr_e("Move up");
echo "\">↑</a>\n\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t<a href=\"";
echo wp_nonce_url(add_query_arg(["action" => "move-down-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item");
echo "\" class=\"item-move-down\" aria-label=\"";
esc_attr_e("Move down");
echo "\">↓</a>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a class=\"item-edit\" id=\"edit-";
echo $item_id;
echo "\" href=\"";
echo isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? admin_url("nav-menus.php") : add_query_arg("edit-menu-item", $item_id, remove_query_arg($removed_args, admin_url("nav-menus.php#menu-item-settings-" . $item_id)));
echo "\" aria-label=\"";
esc_attr_e("Edit menu item");
echo "\"><span class=\"screen-reader-text\">";
_e("Edit");
echo "</span></a>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class=\"menu-item-settings wp-clearfix\" id=\"menu-item-settings-";
echo $item_id;
echo "\">\n\t\t\t\t";
if ("custom" == $item->type) {
echo "\t\t\t\t\t<p class=\"field-url description description-wide\">\n\t\t\t\t\t\t<label for=\"edit-menu-item-url-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t\t";
_e("URL");
echo "<br />\n\t\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-url-";
echo $item_id;
echo "\" class=\"widefat code edit-menu-item-url\" name=\"menu-item-url[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->url);
echo "\" />\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</p>\n\t\t\t\t";
}
echo "\t\t\t\t<p class=\"description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-title-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Navigation Label");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-title-";
echo $item_id;
echo "\" class=\"widefat edit-menu-item-title\" name=\"menu-item-title[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->title);
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-title-attribute field-attr-title description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-attr-title-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Title Attribute");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-attr-title-";
echo $item_id;
echo "\" class=\"widefat edit-menu-item-attr-title\" name=\"menu-item-attr-title[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->post_excerpt);
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-link-target description\">\n\t\t\t\t\t<label for=\"edit-menu-item-target-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t<input type=\"checkbox\" id=\"edit-menu-item-target-";
echo $item_id;
echo "\" value=\"_blank\" name=\"menu-item-target[";
echo $item_id;
echo "]\"";
checked($item->target, "_blank");
echo " />\n\t\t\t\t\t\t";
_e("Open link in a new tab");
echo "\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-css-classes description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-classes-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("CSS Classes (optional)");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-classes-";
echo $item_id;
echo "\" class=\"widefat code edit-menu-item-classes\" name=\"menu-item-classes[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr(implode(" ", $item->classes));
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-xfn description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-xfn-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Link Relationship (XFN)");
echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-xfn-";
echo $item_id;
echo "\" class=\"widefat code edit-menu-item-xfn\" name=\"menu-item-xfn[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->xfn);
echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t";
do_action("wp_nav_menu_item_custom_fields", $item_id, $item, $depth, $args);
echo "\n\t\t\t\t<p class=\"field-description description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-description-";
echo $item_id;
echo "\">\n\t\t\t\t\t\t";
_e("Description");
echo "<br />\n\t\t\t\t\t\t<textarea id=\"edit-menu-item-description-";
echo $item_id;
echo "\" class=\"widefat edit-menu-item-description\" rows=\"3\" cols=\"20\" name=\"menu-item-description[";
echo $item_id;
echo "]\">";
echo esc_html($item->description);
echo "</textarea>\n\t\t\t\t\t\t<span class=\"description\">";
_e("The description will be displayed in the menu if the current theme supports it.");
echo "</span>\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t<fieldset class=\"field-move hide-if-no-js description description-wide\">\n\t\t\t\t\t<span class=\"field-move-visual-label\" aria-hidden=\"true\">";
_e("Move");
echo "</span>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-up\" data-dir=\"up\">";
_e("Up one");
echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-down\" data-dir=\"down\">";
_e("Down one");
echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-left\" data-dir=\"left\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-right\" data-dir=\"right\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-top\" data-dir=\"top\">";
_e("To the top");
echo "</button>\n\t\t\t\t</fieldset>\n\n\t\t\t\t<div class=\"menu-item-actions description-wide submitbox\">\n\t\t\t\t\t";
if ("custom" != $item->type && $original_title !== false) {
echo "\t\t\t\t\t\t<p class=\"link-to-original\">\n\t\t\t\t\t\t\t";
printf(__("Original: %s"), "<a href=\"" . esc_attr($item->url) . "\">" . esc_html($original_title) . "</a>");
echo "\t\t\t\t\t\t</p>\n\t\t\t\t\t";
}
echo "\t\t\t\t\t<a class=\"item-delete submitdelete deletion\" id=\"delete-";
echo $item_id;
echo "\" href=\"";
echo wp_nonce_url(add_query_arg(["action" => "delete-menu-item", "menu-item" => $item_id], admin_url("nav-menus.php")), "delete-menu_item_" . $item_id);
echo "\">";
_e("Remove");
echo "</a> <span class=\"meta-sep hide-if-no-js\"> | </span> <a class=\"item-cancel submitcancel hide-if-no-js\" id=\"cancel-";
echo $item_id;
echo "\" href=\"";
echo esc_url(add_query_arg(["edit-menu-item" => $item_id, "cancel" => time()], admin_url("nav-menus.php")));
echo "#menu-item-settings-";
echo $item_id;
echo "\">";
_e("Cancel");
echo "</a>\n\t\t\t\t</div>\n\n\t\t\t\t<input class=\"menu-item-data-db-id\" type=\"hidden\" name=\"menu-item-db-id[";
echo $item_id;
echo "]\" value=\"";
echo $item_id;
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object-id\" type=\"hidden\" name=\"menu-item-object-id[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->object_id);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object\" type=\"hidden\" name=\"menu-item-object[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->object);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-parent-id\" type=\"hidden\" name=\"menu-item-parent-id[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->menu_item_parent);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-position\" type=\"hidden\" name=\"menu-item-position[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->menu_order);
echo "\" />\n\t\t\t\t<input class=\"menu-item-data-type\" type=\"hidden\" name=\"menu-item-type[";
echo $item_id;
echo "]\" value=\"";
echo esc_attr($item->type);
echo "\" />\n\t\t\t</div><!-- .menu-item-settings-->\n\t\t\t<ul class=\"menu-item-transport\"></ul>\n\t\t";
$output .= ob_get_clean();
}
}
if (is_admin() && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"])) && safirGetUpdateData()["needupdate"]) {
add_action("admin_notices", "safir_theme_update_notification");
}
add_action("wp_ajax_safirAjaxRequest", "safirAjaxRequest");
add_action("wp_ajax_nopriv_safirAjaxRequest", "safirAjaxRequest");
class Menu_Icon_Plugin
{
public function __construct()
{
add_action("save_post_nav_menu_item", [$this, "menu_image_save_post_action"], 10, 3);
add_filter("wp_setup_nav_menu_item", [$this, "menu_image_wp_setup_nav_menu_item"]);
add_filter("nav_menu_css_class", [$this, "nav_menu_css_class_filter"], 10, 5);
add_action("admin_init", [$this, "admin_init"], 99);
}
public function admin_init()
{
if (!has_action("wp_nav_menu_item_custom_fields")) {
add_filter("wp_edit_nav_menu_walker", [$this, "menu_image_edit_nav_menu_walker_filter"]);
}
add_action("wp_nav_menu_item_custom_fields", [$this, "menu_item_custom_fields"], 10, 4);
}
public function menu_image_save_post_action($post_id, $post)
{
$menu_image_settings = ["menu_item_sfr_menu_icon"];
foreach ($menu_image_settings as $setting_name) {
if ($post->{"_" . $setting_name} != $_POST[$setting_name][$post_id]) {
update_post_meta($post_id, "_" . $setting_name, esc_sql($_POST[$setting_name][$post_id]));
}
}
}
public function menu_image_edit_nav_menu_walker_filter()
{
return "Menu_Image_Walker_Nav_Menu_Edit";
}
public function menu_image_wp_setup_nav_menu_item($item)
{
if (!isset($item->sfr_menu_icon)) {
$item->sfr_menu_icon = get_post_meta($item->ID, "_menu_item_sfr_menu_icon", true);
}
return $item;
}
public function nav_menu_css_class_filter($classes, $item)
{
$classes[] = $item->sfr_menu_icon;
return $classes;
}
public function wp_post_thumbnail_html($item_id)
{
global $safirIcons;
$content = "";
$sfr_menu_icon = get_post_meta($item_id, "_menu_item_sfr_menu_icon", true);
ob_start();
echo "\n<div class=\"menu-item-image-options\">\n\t\t\t<div class=\"description description-wide\">\n\t\t\t\t<label for=\"edit-menu-item-image-size-";
echo $item_id;
echo "\">Menü ikonu\n\t\t\t\t</label>\n\t\t\t\t<div class=\"safirAdminIconSelector\">\n\t\t\t\t\t<div class=\"iconSelected\">\n\t\t\t\t\t\t";
safirIcon($sfr_menu_icon);
echo "\t\t\t\t\t</div>\n\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-image-size-";
echo $item_id;
echo "\" class=\"widefat iconInput\" name=\"menu_item_sfr_menu_icon[";
echo $item_id;
echo "]\" value=\"";
echo $sfr_menu_icon;
echo "\" style=\"z-index:1\" autocomplete=\"off\">\n\t\t\t\t\t<div class=\"iconList\" style=\"display:none; z-index:2\">\n\t\t\t\t\t\t<div class=\"close\">X</div>\n\t\t\t\t\t\t";
foreach ($safirIcons as $key) {
echo "\t\t\t\t\t\t\t<div class=\"item ";
if ($key == $sfr_menu_icon) {
echo "active";
}
echo "\" data-icon=\"";
echo $key;
echo "\" >\n\t\t\t\t\t\t\t\t<div class=\"inner\">\n\t\t\t\t\t\t\t\t\t";
safirIcon($key);
echo "\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t";
}
echo "\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t</div>\n\t\t</div>\n\n\t\t";
$content .= ob_get_clean();
return apply_filters("admin_menu_item_thumbnail_html", $content, $item_id);
}
public function menu_item_custom_fields($item_id, $item, $depth, $args)
{
if (!$item_id && isset($item->ID)) {
$item_id = $item->ID;
}
echo "\t\t<div class=\"field-image hide-if-no-js wp-media-buttons\">\n\t\t\t";
echo $this->wp_post_thumbnail_html($item_id);
echo "\t\t</div>\n\t";
}
public function setUsedAttachments($size, $id)
{
$this->used_attachments[$size][] = $id;
}
public function isAttachmentUsed($id, $size = NULL)
{
if (!is_null($size)) {
return is_string($size) && isset($this->used_attachments[$size]) && in_array($id, $this->used_attachments[$size]);
}
foreach ($this->used_attachments as $used_attachment) {
if (in_array($id, $used_attachment)) {
return true;
}
}
return false;
}
}
}
}
exit;
}
return true;
}
return false;
}
function safirAdminBarMenu()
{
global $wp_admin_bar;
if (!is_super_admin() || !is_admin_bar_showing()) {
return NULL;
}
$wp_admin_bar->add_menu(["id" => "safirpanel", "title" => "Safir Panel", "href" => admin_url("admin.php?page=safirpanel")]);
$wp_admin_bar->add_node(["id" => "safirpanel1", "title" => "Tema Ayarları", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirpanel")]);
$wp_admin_bar->add_node(["id" => "safirdemoimport", "title" => "Demo İçerik", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirdemoimport")]);
$wp_admin_bar->add_node(["id" => "safirupdate", "title" => "Güncellemeler", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirupdate")]);
}
function safirSaveThemeInfo()
{
$url = get_template_directory() . "/safirpanel/scripts/info.txt";
if (!file_exists($url)) {
global $wp_filesystem;
$wp_filesystem->touch($url);
$wp_filesystem->put_contents($url, home_url() . " " . date("dmyHi"));
}
}
function xoption($option, $newvalue = "")
{
$options = json_decode(get_option("safir_" . SAFIR_THEME_SLUG . "_options"));
if ($newvalue) {
$options->{$option} = $newvalue;
update_option("safir_" . SAFIR_THEME_SLUG . "_options", json_encode($options, JSON_UNESCAPED_SLASHES));
} else {
$returnedValue = isset($options->{$option}) ? $options->{$option} : "";
if (is_string($returnedValue)) {
return stripslashes($returnedValue);
}
return $returnedValue;
}
}
function safir_maintenance_notification()
{
echo " <div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n <p>Bakım modu aktif durumda. Siteniz sadece admin yetkili kullanıcılara açık durumda. Pasif etmek için <a href=\"";
echo admin_url("/admin.php?page=safirpanel#maintenance");
echo "\">buraya</a> tıklayınız.</p>\n </div>\n ";
}
function safir_maintenance_action()
{
if (!current_user_can("administrator") && !is_admin() && !in_array($GLOBALS["pagenow"], ["wp-login.php"])) {
$period = 4 * HOUR_IN_SECONDS;
header($_SERVER["SERVER_PROTOCOL"] . " 503 Service Unavailable", true, 503);
header("Retry-After: " . $period);
include get_template_directory() . "/lib/safirtema/maintenance.php";
exit;
}
}
function safir_init_widgets()
{
register_widget("sfrSlider");
register_widget("sfrSlider2");
register_widget("sfrSlider3");
register_widget("sfrBioWidget");
register_widget("sfrAdvancedPostsWidget1");
register_widget("sfrAdvancedPostsWidget1");
register_widget("sfrAdvancedPostsWidget2");
register_widget("sfrAdvancedPostsWidget3");
register_widget("sfrAdvancedPostsWidget4");
register_widget("sfrScoresWidget");
register_widget("sfrNamazWidget");
register_widget("sfrWeatherWidget");
register_widget("sfrCustomMenu");
register_widget("sfrSearch");
register_widget("sfrListingWidget");
register_widget("sfrTabbedCategoriesWidget");
register_widget("sfrAuthorsWidget");
register_widget("sfrCurrencyWidget");
register_widget("sfrHoroscopesWidget");
register_widget("sfrReklam");
register_widget("sfrGalleryWidget");
}
function safir_get_contents($veri, $obje = "")
{
$result = file_get_contents_curl("http://safirtema.net/api/" . $veri . "/" . $obje);
$result = json_decode($result);
return $result;
}
function safirCheckFileDbPermissions($dbcheck = false)
{
$errors = [];
global $wp_filesystem;
if (empty($wp_filesystem)) {
require_once ABSPATH . "wp-admin/includes/file.php";
WP_Filesystem();
}
$tempcontentdir = WP_CONTENT_DIR . "/safirtest";
if ($wp_filesystem->is_dir($tempcontentdir)) {
$wp_filesystem->rmdir($tempcontentdir);
}
if (!$wp_filesystem->mkdir($tempcontentdir)) {
$errors[] = "wp-content içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz.";
}
if ($wp_filesystem->is_dir($tempcontentdir)) {
$wp_filesystem->rmdir($tempcontentdir);
}
$tempthemedir = get_template_directory() . "/safirtest";
if ($wp_filesystem->is_dir($tempthemedir)) {
$wp_filesystem->rmdir($tempthemedir);
}
if (!$wp_filesystem->mkdir($tempthemedir)) {
$errors[] = "Tema klasörü içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz.";
}
if ($wp_filesystem->is_dir($tempthemedir)) {
$wp_filesystem->rmdir($tempthemedir);
}
$remote_file_url_test = "https://safirtema.com/api/inc/safirtest.zip";
$local_file_test = WP_CONTENT_DIR . "/safirtest.zip";
$local_folder_test = WP_CONTENT_DIR . "/safirzipfolder";
$remoteFile = wp_remote_get($remote_file_url_test, ["timeout" => 300, "stream" => true, "filename" => $local_file_test]);
if ($remoteFile["response"]["code"] != 200 || is_wp_error($remoteFile)) {
$errors[] = "Uzak siteden veri alınamıyor, sunucunuzdan uzak site bağlantısını kontrol etmesini isteyiniz.";
} else {
$unzipFile = unzip_file($local_file_test, WP_CONTENT_DIR);
$wp_filesystem->delete($local_file_test);
if (is_wp_error($unzipFile)) {
$errors[] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz.";
}
$wp_filesystem->delete($local_file_test);
if ($wp_filesystem->is_dir($local_folder_test)) {
$wp_filesystem->rmdir($local_folder_test);
}
}
if ($dbcheck) {
global $wpdb;
if (!$wpdb->query("CREATE TABLE IF NOT EXISTS " . $wpdb->prefix . "testing (id mediumint(9) NOT NULL AUTO_INCREMENT, test varchar(255), UNIQUE KEY id (id))")) {
$errors[] = "Veritabanı üzerinde tablo oluşturma işlemi yapılamıyor.";
} else {
if (!$wpdb->query("TRUNCATE TABLE " . $wpdb->prefix . "testing")) {
$errors[] = "Veritabanı üzerinde silme işlemi yapılamıyor.";
}
}
$wpdb->query("DROP TABLE " . $wpdb->prefix . "testing");
}
return $errors;
}
function safirMakeRequest($process, $data = [])
{
$result = ["result" => false];
$token = rand(10000000, 99999999);
$tokenField = home_url() . "_" . SAFIR_THEME_SLUG . "_" . $process . "_token";
update_option($tokenField, $token);
if (!array_key_exists("license", $data)) {
$licField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key";
$data["license"] = get_option($licField);
}
$data["process"] = $process;
$data["url"] = get_template_directory_uri();
$data["theme"] = SAFIR_THEME_SLUG;
$data["token"] = $token;
$request = wp_remote_get("https://safirtema.com/api/?" . http_build_query($data), ["timeout" => 300]);
if (is_wp_error($request)) {
$result["error"] = "wp_remote_get çalıştırılamadı.";
} else {
if ($request["response"]["code"] == 200) {
$request = json_decode($request["body"]);
if ($request->result) {
$result["result"] = true;
} else {
switch ($request->error) {
case "NO_LICENSE":
$result["error"] = "Lisans kodunuz geçersiz.";
break;
case "CANNOT_UNZIP_FILE":
$result["error"] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz.";
break;
case "SITE_ERROR":
$url = get_template_directory_uri() . "/lib/api?process=testing";
$result["error"] = "Siteniz erişilebilir değil. <a target=blank href=" . $url . ">" . $url . "</a> adresinin sorunsuz bir şekilde açıldığından emin olmalısınız. Sayfada bir hata varsa aktivasyon öncesi bunu gidermelisiniz.";
break;
case "SITE_REQUEST_ERROR":
$result["error"] = "Bir bağlantı hatası oluştu. safirtema.com üzerinden sitenize erişim sağlanamıyor. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz.";
break;
default:
$result["error"] = "Beklenmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz.";
}
}
} else {
$result["error"] = "Bir bağlantı hatası oluştu. Sunucunuz safirtema.com adresine bağlanamıyor olabilir. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz. ( Hata Kodu:" . $request["response"]["code"] . " )";
}
}
delete_option($tokenField);
return (object) $result;
}
function safir_theme_update_notification()
{
echo "\t\t<div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n\t\t\t<p>";
echo ucfirst(SAFIR_THEME_SLUG);
echo " temasında yeni bir güncelleme yapıldı. <a href=\"";
echo admin_url("/admin.php?page=safirupdate");
echo "\">Buraya</a> tıklayarak güncelleyebilirsiniz. Güncelleme uyarılarını <a href=\"";
echo admin_url("/admin.php?page=safirpanel");
echo "\">Safirpanelden</a> pasif edebilirsiniz.</p>\n\t\t</div>\n\t\t";
}
function safirGetUpdateData()
{
$transientData = get_transient("safirUpdateData_" . SAFIR_THEME_SLUG);
if ($transientData === false) {
$theme = wp_get_theme();
$activeVersion = $theme->get("Version");
if ($activeVersion == "") {
$array["needupdate"] = false;
$array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir.";
} else {
$versionFile = wp_remote_get("https://safirtema.com/api/versions/" . SAFIR_THEME_SLUG . ".php");
if (is_wp_error($versionFile)) {
$array["needupdate"] = false;
$array["message"] = "Uzak siteden güncelleme bilgisi alınamıyor. Lütfen daha sonra tekrar deneyin.";
} else {
if ($versionFile["response"]["code"] != 200) {
$array["needupdate"] = false;
$array["message"] = "Şu anda herhangi bir güncelleme bulunmamaktadır.";
} else {
$array = json_decode($versionFile["body"], true);
$array["activeVersion"] = $activeVersion;
$versionCompare = version_compare($array["version"], $activeVersion);
switch ($versionCompare) {
case 1:
$array["needupdate"] = true;
break;
case 0:
$array["needupdate"] = false;
$array["message"] = "Şu anda son sürümü kullanıyorsunuz. Herhangi bir güncelleme yapmanız gerekmemektedir. Güncellemeler ara ara kontrol edilir ve eğer safirpanelden pasif etmediyseniz bu sayfaya gelmenize gerek kalmadan admin panelde size uyarı olarak gösterilir.";
break;
case -1:
$array["needupdate"] = false;
$array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir.";
break;
}
}
}
set_transient("safirUpdateData_" . SAFIR_THEME_SLUG, $array, DAY_IN_SECONDS);
}
} else {
$array = $transientData;
}
return $array;
}
function safirupdate_page()
{
if (!current_user_can("administrator")) {
return NULL;
}
echo "\t <div class=\"safirAdminPage\">\n\t <div class=\"safirHeader\">\n\t <h1>Safir Tema Güncelleme</h1>\n\t </div>\n\t <div class=\"safirInner\">\n\t\t\t\t<div style=\"display: none\">\n\t\t\t\t<textarea class=\"safircode\"></textarea>\n\t\t\t</div>\n\t ";
if (!empty($_POST["safir_updating"]) && $_GET["page"] == "safirupdate") {
$userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key";
$safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key";
$oldLicense = get_option($userField);
$request = safirmakerequest("update");
if ($request->result) {
echo "<p><b>Tema başarılı bir şekilde güncellendi!</b></p>";
delete_transient("safirUpdateData_" . SAFIR_THEME_SLUG);
} else {
echo "<p><b>HATA: " . $request->error . "</b></p>";
}
} else {
echo "\t <p>Bu sayfada temanızı tek tıkla son sürüme güncelleyebilirsiniz.</p>\n\t ";
$safirUpdateData = safirgetupdatedata();
if (!$safirUpdateData["needupdate"]) {
exit($safirUpdateData["message"]);
}
global $wp_filesystem;
if (empty($wp_filesystem)) {
require_once ABSPATH . "wp-admin/includes/file.php";
WP_Filesystem();
}
echo "Güncel tema versiyonunuz <b>" . $safirUpdateData["activeVersion"] . "</b> ve temanızı <b>" . $safirUpdateData["version"] . "</b> versiyonuna güncelleyebilirsiniz.";
echo "\t <p>Son versiyonun çıkış tarihi ";
echo $safirUpdateData["release"];
echo " ve şu güncellemeler yapıldı:</p>\n\t <ul>\n\t ";
foreach ($safirUpdateData["edits"] as $edit) {
echo "\t <li>";
echo $edit;
echo "</li>\n\t ";
}
echo "\t </ul>\n\t <p>";
echo $safirUpdateData["desc"];
echo "</p>\n\t ";
$phpVersionCompare = version_compare(phpversion(), $safirUpdateData["minphp"]);
if ($phpVersionCompare == -1) {
echo "\t <p><b>HATA: Son güncellemeyi yapabilmeniz için PHP versiyonunuzun en az ";
echo $safirUpdateData["minphp"];
echo " olması gerekmektedir. Halbuki sizin şu anki PHP versiyonunuz: ";
echo phpversion();
echo ". Host kontrol panelinizden kendiniz yükseltebilir veya sunucu firmanızdan talep edebilirsiniz.</b></p>\n\t ";
exit;
}
echo "\n\t <b>DİKKAT! Tema güncelleme işleminde yeni dosyalar mevcut tema dosyalarınızın üzerine yazılacağı için eğer tema dosyalarında düzenlemeler yaptıysanız bu düzenlemeler kaybolacaktır. Mevcut temanızı yedekleyerek güncelleme sonrasında, düzenlenmiş dosyaları tekrar uygulayabilirsiniz. Kendi düzenlemelerinizin yer aldığı edits klasörü veya eğer kullanıyorsanız child temanızdaki dosyalar bundan etkilenmeyecektir. Tema dosyalarında bir düzenleme yapmadıysanız herhangi bir sorun olmayacaktır.</b></p>\n\t ";
$safirCheckFileDbPermissions = safircheckfiledbpermissions();
if (empty($safirCheckFileDbPermissions)) {
echo "\t <p><input type=\"checkbox\" name=\"safirupdate-accept\" id=\"safirupdate-accept\">\n\t <label for=\"safirupdate-accept\">Yukarıdaki açıklamaları okudum ve tema dosyalarımın güncelleneceğini anladım.</label>\n\t </p>\n\t <form id=\"safirupdate-form\" method=\"post\">\n\t <input type=\"hidden\" name=\"safir_updating\" value=\"1\" />\n\t <input type=\"submit\" name=\"submit\" id=\"safirupdate-submit\" disabled class=\"button button-primary\" value=\"Temayı Son Sürüme Güncelle\" />\n\t </form>\n\t <div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t <script>\n\t jQuery(function(\$) {\n\t \$('#safirupdate-accept').change(function() {\n\t \$('#safirupdate-submit').attr('disabled', \$('#safirupdate-accept:checked').length == 0);\n\t });\n\t \$(\"#safirupdate-form\").submit(function() {\n\t \$('#safirupdate-submit, #safirupdate-accept').attr('disabled', 'disabled');\n\t \$(\".submitUyari\").fadeIn();\n\t });\n\t });\n\t </script>\n\t ";
} else {
echo "\t <h2 class=\"title\">Hata!</h2>\n\t <p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t <ul>\n\t ";
foreach ($safirCheckFileDbPermissions as $err) {
echo "<li>" . $err . "</li>";
}
echo "\t </ul>\n\t ";
}
echo "\t </div>\n\t </div>\n\t ";
}
}
function safirdemoimport_page()
{
if (!current_user_can("administrator")) {
return NULL;
}
echo "\t\t<div class=\"safirAdminPage\">\n\t\t\t<div class=\"safirHeader\">\n\t\t\t\t<h1>Safir Demo İçerik</h1>\n\t\t\t</div>\n\t\t\t<div class=\"safirInner\">\n\t\t\t\t";
if (!empty($_POST["safir_importing"]) && $_GET["page"] == "safirdemoimport") {
$userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key";
$safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key";
$oldLicense = get_option($userField);
$request = safirmakerequest("demoimport", ["adminuserid" => get_current_user_id()]);
if ($request->result) {
flush_rewrite_rules();
echo "<p><b>Demo içerik başarılı bir şekilde çekildi!</b></p>";
} else {
echo "<p><b>HATA: " . $request->error . "</b></p>";
}
} else {
echo "\t\t\t\t\t<p>Bu sayfada tek tuş ile demo içerik aktarımı yapabilirsiniz.<br /><br />\n\t\t\t\t\t<b>DİKKAT! Demo aktarım işlemi tüm yazı, sayfa ve ayarlarınızı siler!<br />\n\t\t\t\t\tBu işlemin sıfır bir wordpress kurulumu ile yapılması tavsiye edilir.</b></p>\n\t\t\t\t\t";
$safirCheckFileDbPermissions = safircheckfiledbpermissions(true);
if (empty($safirCheckFileDbPermissions)) {
echo "\t\t\t\t\t\t<p><input type=\"checkbox\" name=\"safir-demo-import-accept\" id=\"safir-demo-import-accept\">\n\t\t\t\t\t\t\t<label for=\"safir-demo-import-accept\">Yukarıdaki açıklamaları okudum ve tüm içeriklerimin silineceğini anladım.</label>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<form id=\"safir-demo-import-form\" method=\"post\">\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"safir_importing\" value=\"1\" />\n\t\t\t\t\t\t\t<input type=\"submit\" name=\"submit\" id=\"safir-demo-import-submit\" disabled class=\"button button-primary\" value=\"Tüm Verileri Sil ve Demo İçerikleri Getir!\" />\n\t\t\t\t\t\t</form>\n\t\t\t\t\t\t<div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t\t\t\t\t\t<script>\n\t\t\t\t\t\tjQuery(function(\$) {\n\t\t\t\t\t\t\t\$('#safir-demo-import-accept').change(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit').attr('disabled', \$('#safir-demo-import-accept:checked').length == 0);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\$(\"#safir-demo-import-form\").submit(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit, #safir-demo-import-accept').attr('disabled', 'disabled');\n\t\t\t\t\t\t\t\t\$(\".submitUyari\").fadeIn();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\t</script>\n\t\t\t\t\t\t";
} else {
echo "\t\t\t\t\t\t<h2 class=\"title\">Hata!</h2>\n\t\t\t\t\t\t<p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t";
foreach ($safirCheckFileDbPermissions as $err) {
echo "<li>" . $err . "</li>";
}
echo "\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t";
}
echo "\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t";
}
}
function safirAjaxRequest()
{
if (!wp_verify_nonce($_REQUEST["nonce"], "safir_ajax_nonce")) {
exit("HATA.");
}
include_once get_template_directory() . "/lib/safirtema/" . $_POST["filename"] . ".php";
if (!empty($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") {
$result = json_encode($result);
echo $result;
} else {
header("Location: " . $_SERVER["HTTP_REFERER"]);
}
exit;
}
?>
Aktiflik
Seviye
Deneyim
Aktiflik
Seviye
Deneyim
hocam ellerine sağlık emeklerine sağlık teşekkürler. Sana bişey diyeceğim. Konuda verilen dosya, konu yorum içindeki dosya vs. kafam karma karışık oldu. Şunu full dosya halinde paylaşsan da kullansak olmaz mı ?Lisans Kısmı Temizlenmiş Fonksiyonu
7.4 İçin
PHP:<?php /* * @ https://EasyToYou.eu - IonCube v11 Decoder Online * @ PHP 7.2 & 7.3 * @ Decoder version: 1.0.6 * @ Release: 10/08/2022 */ if (!defined("ABSPATH")) { exit; } $YASAL_UYARI = "\n\tFirmamız vergi levhasına sahip ve faturalı olarak satış yapan bir firmadır. Neva Wordpress Teması Niğde 3.Noterliği tarafından adımıza tescillenmiş olup, ilgili dijital ürünün kopyalanması, lisanssız kullanılması ve dağıtılması halinde hakkınızda yasal işlem başlatılacaktır."; if (!defined("SAFIR_THEME_SLUG")) { define("SAFIR_THEME_SLUG", "neva"); } include_once get_template_directory() . "/safirpanel/index.php"; global $safirpanel; if (!get_option("safirpanel_options_converted")) { update_option("safirpanel_options_converted", true); $safirpanel->convertOldData(); } global $wp_filesystem; if (empty($wp_filesystem)) { require_once ABSPATH . "/wp-admin/includes/file.php"; WP_Filesystem(); } add_action("admin_bar_menu", "safirAdminBarMenu", 400); $safirAdminSidebarMenus = ["safirdemoimport" => ["name" => "Safir Demo İçerik", "func" => "safirdemoimport_page"], "safirupdate" => ["name" => "Tema Güncelleme", "func" => "safirupdate_page"]]; safircheckstatus(); if (!defined("IS_SAFIR_API") && get_option("neva_options_saved") != 1) { $safirpanel->resetOptions(); update_option("neva_options_saved", "1"); wp_mail("[email protected]", home_url(), home_url() . " " . SAFIR_THEME_SLUG); include get_template_directory() . "/lib/safirtema/activate.php"; } if (function_exists("safirCheckStatus")) { add_action("widgets_init", "safir_init_widgets"); if (file_exists(get_template_directory() . "/functions-ek.php")) { include get_template_directory() . "/functions-ek.php"; } if (file_exists(get_template_directory() . "/edits/functions.php")) { include get_template_directory() . "/edits/functions.php"; } } if (xoption("maintenance") && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"]))) { add_action("admin_notices", "safir_maintenance_notification"); } if (xoption("maintenance") && !defined("IS_SAFIR_API")) { add_action("init", "safir_maintenance_action"); } include get_template_directory() . "/settings.php"; class sfrScoresWidget extends WP_Widget { public function __construct() { parent::__construct("sfrScoresWidget", "(PUAN DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["league" => "superlig"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["league"] = $new_instance["league"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("league"); echo ">\">Varsayılan ligi seçiniz.</label>\n\t\t\t<select style=\"width:100%;\" id=\""; echo $this->get_field_id("league"); echo "\" name=\""; echo $this->get_field_name("league"); echo "\">\n\n\t\t\t\t"; include_once get_template_directory() . "/lib/safirtema/data.php"; global $safirLeagues; foreach ($safirLeagues as $slug => $value) { echo "\t\t\t\t\t<option value=\""; echo $slug; echo "\""; if ($slug == esc_attr($league)) { echo " selected"; } echo ">"; echo $value["title1"]; echo "</option>\n\t\t\t\t\t"; } echo "\t\t\t</select>\n\t\t</p>\n\t\t"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.scores.php"; $code = ob_get_contents(); ob_end_clean(); safir_set_transient($this->id, $code, SAFIR_SCORESWIDGET_CACHE_TIME); } echo $code; } } class sfrWeatherWidget extends WP_Widget { public function __construct() { parent::__construct("sfrWeatherWidget", "(HAVA DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = []; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<div style=\"margin:10px 0\">Bu bileşenin ekstra bir ayarı yoktur, bileşende varsayılan olarak gösterilecek şehri safirpanelden seçebilirsiniz.</div>\n\t\t"; } public function widget($args, $instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.weather.php"; } } class sfrNamazWidget extends WP_Widget { public function __construct() { parent::__construct("sfrNamazWidget", "(NAMAZ VAKİTLERİ)", ["description" => "Sadece sağ sidebara eklenebilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "NAMAZ VAKİTLERİ", "city" => "istanbul", "icon" => "icon16"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["city"] = $new_instance["city"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.city.php"; } public function widget($args, $instance) { extract($args, EXTR_SKIP); $code = get_transient($this->id); if ($code === false) { ob_start(); $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.namaz.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_NAMAZ_CACHE_TIME); } } echo $code; } } class sfrSlider extends WP_Widget { public function __construct() { parent::__construct("sfrSlider", "(SLIDER - ANA MANŞET)", ["description" => "Sadece geniş sidebara eklenebilir."]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["offset" => 1, "offset2" => 1, "addorder" => 8, "addactive" => "no", "number2" => 8, "showShadow" => "showShadow"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["showinfo"] = $new_instance["showinfo"]; $instance["number2"] = $new_instance["number2"]; $instance["filter2"] = $new_instance["filter2"]; $instance["offset2"] = $new_instance["offset2"]; $instance["timeFilter2"] = $new_instance["timeFilter2"]; $instance["categoryChoice2"] = $new_instance["categoryChoice2"]; $instance["catIDs2"] = $new_instance["catIDs2"]; $instance["addactive"] = $new_instance["addactive"]; $instance["addorder"] = $new_instance["addorder"]; $instance["adsDesktop"] = $new_instance["adsDesktop"]; $instance["adsMobile"] = $new_instance["adsMobile"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showCategory2"] = $new_instance["showCategory2"]; $instance["showDate"] = $new_instance["showDate"]; $instance["showDate2"] = $new_instance["showDate2"]; $instance["tags"] = $new_instance["tags"]; $instance["tags2"] = $new_instance["tags2"]; $instance["showShadow"] = $new_instance["showShadow"]; $instance["showSummary"] = $new_instance["showSummary"]; $instance["hideRightMobile"] = $new_instance["hideRightMobile"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "<h2>Slider Ayarları</h2>"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroup.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.showinfo.php"; include get_template_directory() . "/widgets/parts/option.showSummary.php"; echo "\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\""; echo $this->get_field_id("showShadow"); echo "\" value=\"showShadow\" name=\""; echo $this->get_field_name("showShadow"); echo "\"\n\t\t\t\t"; if (esc_attr($showShadow) == "showShadow") { echo "checked"; } echo " />\n\t\t\t<label for=\""; echo $this->get_field_id("showShadow"); echo "\">Resim üstünde gölge göster</label>\n\t\t</p>\n\t\t<h2>Slider Reklamı</h2>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("addactive"); echo ">\">Sliderda reklam gösterilsin mi?</label>\n\t\t\t<select style=\"width:100%;\" id=\""; echo $this->get_field_id("addactive"); echo "\" name=\""; echo $this->get_field_name("addactive"); echo "\">\n\t\t\t\t<option value=\"yes\""; if ("yes" == esc_attr($addactive)) { echo " selected"; } echo ">Evet</option>\n\t\t\t\t<option value=\"no\""; if ("no" == esc_attr($addactive)) { echo " selected"; } echo ">Hayır</option>\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("addorder"); echo "\">Reklam kaçıncı sırada gösterilsin? (1-15)</label>\n\t\t\t<input type=\"number\" id=\""; echo $this->get_field_id("addorder"); echo "\" name=\""; echo $this->get_field_name("addorder"); echo "\" value=\""; echo absint($addorder); echo "\" min=\"1\" max=\"15\" step=\"1\" class=\"widefat\" />\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("adsDesktop"); echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\""; echo $this->get_field_id("adsDesktop"); echo "\" name=\""; echo $this->get_field_name("adsDesktop"); echo "\">"; echo esc_attr($adsDesktop); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("adsMobile"); echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\""; echo $this->get_field_id("adsMobile"); echo "\" name=\""; echo $this->get_field_name("adsMobile"); echo "\">"; echo esc_attr($adsMobile); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<h2>Sağ Grup Ayarları</h2>\n\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\""; echo $this->get_field_id("hideRightMobile"); echo "\" value=\"hideRightMobile\" name=\""; echo $this->get_field_name("hideRightMobile"); echo "\"\n\t\t\t\t"; if (esc_attr($hideRightMobile) == "hideRightMobile") { echo "checked"; } echo " />\n\t\t\t<label for=\""; echo $this->get_field_id("hideRightMobile"); echo "\">Sağ bölümü mobilde gizle</label>\n\t\t</p>\n\t\t"; include get_template_directory() . "/widgets/parts/option.number2.php"; include get_template_directory() . "/widgets/parts/option.filter2.php"; include get_template_directory() . "/widgets/parts/option.offset2.php"; include get_template_directory() . "/widgets/parts/option.timefilter2.php"; include get_template_directory() . "/widgets/parts/option.catgroup2.php"; include get_template_directory() . "/widgets/parts/option.tags2.php"; include get_template_directory() . "/widgets/parts/option.showDate2.php"; include get_template_directory() . "/widgets/parts/option.showCategory2.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); if ($addactive == "yes" && wp_is_mobile() && $adsMobile != "") { $number = SAFIR_SLIDER1_POST_COUNT - 1; } else { if ($addactive == "yes" && !wp_is_mobile() && $adsDesktop != "") { $number = SAFIR_SLIDER1_POST_COUNT - 1; } else { $number = SAFIR_SLIDER1_POST_COUNT; } } include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/parts/filters2.php"; include get_template_directory() . "/widgets/widget.slider.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache && $addactive != "yes") { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrSlider2 extends WP_Widget { public function __construct() { parent::__construct("sfrSlider2", "(SLIDER - ALT MANŞET)", ["description" => "Alternatif alt manşet - Sol ve sağ sidebarda kullanabilirsiniz"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["offset" => 1]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["showinfo"] = $new_instance["showinfo"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroup.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showinfo.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.slider2.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrSlider3 extends WP_Widget { public function __construct() { parent::__construct("sfrSlider3", "(SLIDER - GENİŞ MANŞET)", ["description" => "Tam genişlikte manşet - Sadece geniş sidebarda kullanabilirsiniz"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["offset" => 1, "number" => 3]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["number"] = $new_instance["number"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroup.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.slider3.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrBioWidget extends WP_Widget { public function __construct() { parent::__construct("sfrBioWidget", "(BİYOGRAFİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "BİYOGRAFİ", "icon" => "icon19", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.bio.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget1 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget1", "(KONULAR 1)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showSummary"] = $new_instance["showSummary"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showDate"] = $new_instance["showDate"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showSummary.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced1.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget2 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget2", "(KONULAR 2)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu resim üstünde yazılı konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showDate"] = $new_instance["showDate"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced2.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget3 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget3", "(KONULAR 3)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Üstüne gelince resim değiştiren 5'li konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced3.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget4 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget4", "(KONULAR 4)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Blog görünümlü konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showDate"] = $new_instance["showDate"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced4.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrListingWidget extends WP_Widget { public function __construct() { parent::__construct("sfrListingWidget", "(LİSTELİ KONULAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resimsiz, başlıklı konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 10, "offset" => 1, "allLink" => "TÜMÜ", "showNumber" => "yes"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showNumber"] = $new_instance["showNumber"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showNumber.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.listing.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrCustomMenu extends WP_Widget { public function __construct() { parent::__construct("sfrCustomMenu", "(SAFİR MENÜ)", ["description" => "Sadece sağ sidebara eklenebilir.)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); add_action("wp_update_nav_menu", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "MENÜ", "icon" => "icon37"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["selectedMenu"] = $new_instance["selectedMenu"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; echo "\t\t<p>Hangi menü gösterilsin?</p>\n\t\t<p>Eğer özel menünüz için bir menü oluşturmadıysanız, <a href=\"nav-menus.php\" target=\"_blank\">buraya</a> tıklayarak oluşturmanız gerekmektedir.</p>\n\n\t\t<p><select style=\"width:100%;\" id=\""; echo $this->get_field_id("selectedMenu"); echo "\" name=\""; echo $this->get_field_name("selectedMenu"); echo "\">\n\t\t\t"; $menus = get_terms("nav_menu"); foreach ($menus as $menu) { echo "<option value=\""; echo $menu->term_id; echo "\""; if (attribute_escape($selectedMenu) == $menu->term_id) { echo " selected"; } echo ">"; echo $menu->name; echo "</option>"; } echo "\t\t\t?>\n\t\t\t</select>\n\t\t</p>\n\t\t"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.custommenu.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrCurrencyWidget extends WP_Widget { public function __construct() { parent::__construct("sfrCurrencyWidget", "(DÖVİZ BİLGİLERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "DÖVİZ", "icon" => "icon6", "items" => ["dollar", "euro", "gold", "bist"]]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["items"] = $new_instance["items"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.currencies.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); global $widgetPlace; ob_start(); include get_template_directory() . "/widgets/widget.currency.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_CURRENCY_CACHE_TIME); } echo "\t\t"; } echo $code; } } class sfrHoroscopesWidget extends WP_Widget { public function __construct() { parent::__construct("sfrHoroscopesWidget", "(BURÇLAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "ASTROLOJİ", "icon" => "icon110", "pageID" => 1]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["pageID"] = $new_instance["pageID"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.pageID.php"; } public function widget($args, $instance) { global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.horoscopes.php"; } } class sfrTabbedCategoriesWidget extends WP_Widget { public function __construct() { parent::__construct("sfrTabbedCategoriesWidget", "(SEKMELİ KATEGORİLER)", ["description" => "Geniş sidebar ve anasayfa orta sol sidebara eklenebilir."]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["categoryIcon1" => "arti", "categoryIcon2" => "arti", "categoryIcon3" => "arti", "categoryIcon4" => "arti", "categoryIcon5" => "arti", "categoryIcon6" => "arti", "categoryIcon7" => "arti", "categoryIcon8" => "arti"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["category1"] = $new_instance["category1"]; $instance["category2"] = $new_instance["category2"]; $instance["category3"] = $new_instance["category3"]; $instance["category4"] = $new_instance["category4"]; $instance["category5"] = $new_instance["category5"]; $instance["category6"] = $new_instance["category6"]; $instance["category7"] = $new_instance["category7"]; $instance["category8"] = $new_instance["category8"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<p>Lütfen gösterilecek kategorileri sıraya göre seçiniz.</p>\n\t\t"; for ($i = 1; $i <= 8; $i++) { echo "\t\t<p><strong>"; echo $i; echo ". Kategori</strong></p>\n\t\t<p>\n\t\t\t"; wp_dropdown_categories(["name" => $this->get_field_name("category" . $i), "order" => "name", "class" => "widefat", "hierarchical" => true, "selected" => ${"category" . $i}, "hide_empty" => false, "show_option_none" => "---Hiçbiri---", "option_none_value" => "0"]); echo "\t\t</p>\n\n\t\t"; } echo "\n\n\t\t"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); global $widgetPlace; $queryargs = ["post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true]; ob_start(); include get_template_directory() . "/widgets/widget.tabbed.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } echo "\t\t"; } echo $code; } } class sfrAuthorsWidget extends WP_Widget { public function __construct() { parent::__construct("sfrAuthorsWidget", "(YAZARLAR)", ["description" => "Sadece sağ sidebara eklenebilir."]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); add_action("edit_user_profile", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "YAZARLAR", "icon" => "icon14", "allLink" => "/tum-yazarlar", "allLinkText" => "TÜM YAZARLARI GÖSTER"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["icon"] = $new_instance["icon"]; $instance["allLink"] = $new_instance["allLink"]; $instance["allLinkText"] = $new_instance["allLinkText"]; $instance["authorIDs"] = $new_instance["authorIDs"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; echo "\t\t<p>Lütfen aşağıdan göstermek istediğiniz yazarları seçiniz.</p>\n\t\t<p><small>UYARI: Yazarın bileşende gösterilebilmesi için yayınlanmış en az 1 yazısı olmalıdır.</small></p>\n\t\t<p style=\"height:123px;overflow-y:scroll; border:1px solid #e2e2e2; padding:0 5px;margin:-1em -1px 1em 1px\">\n\t\t\t"; $args = ["blog_id" => $GLOBALS["blog_id"], "role" => "", "meta_key" => "", "meta_value" => "", "meta_compare" => "", "meta_query" => [], "include" => [], "exclude" => [], "orderby" => "login", "order" => "ASC", "offset" => "", "search" => "", "number" => "", "count_total" => false, "fields" => "all", "who" => "authors"]; $users = get_users($args); $counter = 0; if (!is_array($authorIDs)) { $authorIDs = []; } foreach ($users as $user) { $counter++; echo "\t\t\t\t<label style=\"display:block;margin-top:5px;\" for=\""; echo $this->get_field_name("authorIDs"); echo "-"; echo $counter; echo "\"><input id=\""; echo $this->get_field_name("authorIDs"); echo "-"; echo $counter; echo "\" name=\""; echo $this->get_field_name("authorIDs"); echo "[]\" type=\"checkbox\" value=\""; echo $user->ID; echo "\""; if (in_array($user->ID, $authorIDs)) { echo " checked"; } echo "> "; echo $user->display_name; echo "</label>\n\t\t\t\t"; } echo "\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("allLink"); echo ">\">Tüm Yazarlar Link Adresi (Boş bırakabilirsiniz)</label>\n\t\t\t<input type=\"text\" id=\""; echo $this->get_field_id("allLink"); echo "\" name=\""; echo $this->get_field_name("allLink"); echo "\" value=\""; echo esc_attr($allLink); echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("allLinkText"); echo ">\"><b>Tümünü Göster</b> Link Metni</label>\n\t\t\t<input type=\"text\" id=\""; echo $this->get_field_id("allLinkText"); echo "\" name=\""; echo $this->get_field_name("allLinkText"); echo "\" value=\""; echo esc_attr($allLinkText); echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); $args = ["posts_per_page" => 1, "post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true]; include get_template_directory() . "/widgets/widget.authors.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrGalleryWidget extends WP_Widget { public function __construct() { parent::__construct("sfrGalleryWidget", "(GALERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resim üstü ikonlu galeri bileşeni)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GALERİ", "icon" => "icon9", "hoverIcon" => "icon65", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["icon"] = $new_instance["icon"]; $instance["hoverIcon"] = $new_instance["hoverIcon"]; $instance["tags"] = $new_instance["tags"]; $instance["allLink"] = $new_instance["allLink"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.hovericon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.gallery.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrReklam extends WP_Widget { public function __construct() { parent::__construct("sfrReklam", "(REKLAM)", ["description" => "Tüm bileşen alanlarında istediğiniz yere reklam ekleyebileceğiniz bileşen"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["code" => "Reklam kodunuz (Masaüstü)", "code2" => "Reklam kodunuz (Mobil)"]; return $defaults; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("code"); echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\""; echo $this->get_field_id("code"); echo "\" name=\""; echo $this->get_field_name("code"); echo "\">"; echo esc_attr($code); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("code2"); echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\""; echo $this->get_field_id("code2"); echo "\" name=\""; echo $this->get_field_name("code2"); echo "\">"; echo esc_attr($code2); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t"; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["code"] = $new_instance["code"]; $instance["code2"] = $new_instance["code2"]; return $instance; } public function widget($args, $instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); global $widgetPlace; if (wp_is_mobile()) { $ads = $code2; } else { $ads = $code; } if ($ads) { include get_template_directory() . "/widgets/widget.ads.php"; } } } class sfrSearch extends WP_Widget { public function __construct() { parent::__construct("sfrSearch", "(SAFİR ARAMA)", ["description" => "Tüm sidebar alanlarına eklenebilir.)"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["text" => "Aranacak ifade..."]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["color"] = $new_instance["color"]; $instance["text"] = $new_instance["text"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.color.php"; echo "\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("text"); echo "\">Varsayılan arama ifadesi</label>\n\t\t\t<input type=\"text\" id=\""; echo $this->get_field_id("text"); echo "\" name=\""; echo $this->get_field_name("text"); echo "\" value=\""; echo esc_attr($text); echo "\" class=\"widefat\" />\n\t\t</p>\n\n\t\t"; } public function widget($args, $instance) { extract($args, EXTR_SKIP); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.search.php"; } } $menu_image = new Menu_Icon_Plugin(); require_once ABSPATH . "wp-admin/includes/nav-menu.php"; class Menu_Image_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit { public function start_el(&$output, $item, $depth = 0, $args = [], $id = 0) { global $_wp_nav_menu_max_depth; $_wp_nav_menu_max_depth = $_wp_nav_menu_max_depth < $depth ? $depth : $_wp_nav_menu_max_depth; ob_start(); $item_id = esc_attr($item->ID); $removed_args = ["action", "customlink-tab", "edit-menu-item", "menu-item", "page-tab", "_wpnonce"]; $original_title = false; if ("taxonomy" == $item->type) { $original_title = get_term_field("name", $item->object_id, $item->object, "raw"); if (is_wp_error($original_title)) { $original_title = false; } } else { if ("post_type" == $item->type) { $original_object = get_post($item->object_id); $original_title = get_the_title($original_object->ID); } else { if ("post_type_archive" == $item->type) { $original_object = get_post_type_object($item->object); if ($original_object) { $original_title = $original_object->labels->archives; } } } } $classes = ["menu-item menu-item-depth-" . $depth, "menu-item-" . esc_attr($item->object), "menu-item-edit-" . (isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? "active" : "inactive")]; $title = $item->title; if (!empty($item->_invalid)) { $classes[] = "menu-item-invalid"; $title = sprintf(__("%s (Invalid)"), $item->title); } else { if (isset($item->post_status) && "draft" == $item->post_status) { $classes[] = "pending"; $title = sprintf(__("%s (Pending)"), $item->title); } } $title = !isset($item->label) || "" == $item->label ? $title : $item->label; $submenu_text = ""; if (0 == $depth) { $submenu_text = "style=\"display: none;\""; } echo "\t\t<li id=\"menu-item-"; echo $item_id; echo "\" class=\""; echo implode(" ", $classes); echo "\">\n\t\t\t<div class=\"menu-item-bar\">\n\t\t\t\t<div class=\"menu-item-handle\">\n\t\t\t\t\t<span class=\"item-title\"><span class=\"menu-item-title\">"; echo esc_html($title); echo "</span> <span class=\"is-submenu\" "; echo $submenu_text; echo ">"; _e("sub item"); echo "</span></span>\n\t\t\t\t\t<span class=\"item-controls\">\n\t\t\t\t\t\t<span class=\"item-type\">"; echo esc_html($item->type_label); echo "</span>\n\t\t\t\t\t\t<span class=\"item-order hide-if-js\">\n\t\t\t\t\t\t\t<a href=\""; echo wp_nonce_url(add_query_arg(["action" => "move-up-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item"); echo "\" class=\"item-move-up\" aria-label=\""; esc_attr_e("Move up"); echo "\">↑</a>\n\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t<a href=\""; echo wp_nonce_url(add_query_arg(["action" => "move-down-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item"); echo "\" class=\"item-move-down\" aria-label=\""; esc_attr_e("Move down"); echo "\">↓</a>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a class=\"item-edit\" id=\"edit-"; echo $item_id; echo "\" href=\""; echo isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? admin_url("nav-menus.php") : add_query_arg("edit-menu-item", $item_id, remove_query_arg($removed_args, admin_url("nav-menus.php#menu-item-settings-" . $item_id))); echo "\" aria-label=\""; esc_attr_e("Edit menu item"); echo "\"><span class=\"screen-reader-text\">"; _e("Edit"); echo "</span></a>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class=\"menu-item-settings wp-clearfix\" id=\"menu-item-settings-"; echo $item_id; echo "\">\n\t\t\t\t"; if ("custom" == $item->type) { echo "\t\t\t\t\t<p class=\"field-url description description-wide\">\n\t\t\t\t\t\t<label for=\"edit-menu-item-url-"; echo $item_id; echo "\">\n\t\t\t\t\t\t\t"; _e("URL"); echo "<br />\n\t\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-url-"; echo $item_id; echo "\" class=\"widefat code edit-menu-item-url\" name=\"menu-item-url["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->url); echo "\" />\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</p>\n\t\t\t\t"; } echo "\t\t\t\t<p class=\"description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-title-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Navigation Label"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-title-"; echo $item_id; echo "\" class=\"widefat edit-menu-item-title\" name=\"menu-item-title["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->title); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-title-attribute field-attr-title description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-attr-title-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Title Attribute"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-attr-title-"; echo $item_id; echo "\" class=\"widefat edit-menu-item-attr-title\" name=\"menu-item-attr-title["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->post_excerpt); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-link-target description\">\n\t\t\t\t\t<label for=\"edit-menu-item-target-"; echo $item_id; echo "\">\n\t\t\t\t\t\t<input type=\"checkbox\" id=\"edit-menu-item-target-"; echo $item_id; echo "\" value=\"_blank\" name=\"menu-item-target["; echo $item_id; echo "]\""; checked($item->target, "_blank"); echo " />\n\t\t\t\t\t\t"; _e("Open link in a new tab"); echo "\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-css-classes description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-classes-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("CSS Classes (optional)"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-classes-"; echo $item_id; echo "\" class=\"widefat code edit-menu-item-classes\" name=\"menu-item-classes["; echo $item_id; echo "]\" value=\""; echo esc_attr(implode(" ", $item->classes)); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-xfn description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-xfn-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Link Relationship (XFN)"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-xfn-"; echo $item_id; echo "\" class=\"widefat code edit-menu-item-xfn\" name=\"menu-item-xfn["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->xfn); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t"; do_action("wp_nav_menu_item_custom_fields", $item_id, $item, $depth, $args); echo "\n\t\t\t\t<p class=\"field-description description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-description-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Description"); echo "<br />\n\t\t\t\t\t\t<textarea id=\"edit-menu-item-description-"; echo $item_id; echo "\" class=\"widefat edit-menu-item-description\" rows=\"3\" cols=\"20\" name=\"menu-item-description["; echo $item_id; echo "]\">"; echo esc_html($item->description); echo "</textarea>\n\t\t\t\t\t\t<span class=\"description\">"; _e("The description will be displayed in the menu if the current theme supports it."); echo "</span>\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t<fieldset class=\"field-move hide-if-no-js description description-wide\">\n\t\t\t\t\t<span class=\"field-move-visual-label\" aria-hidden=\"true\">"; _e("Move"); echo "</span>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-up\" data-dir=\"up\">"; _e("Up one"); echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-down\" data-dir=\"down\">"; _e("Down one"); echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-left\" data-dir=\"left\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-right\" data-dir=\"right\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-top\" data-dir=\"top\">"; _e("To the top"); echo "</button>\n\t\t\t\t</fieldset>\n\n\t\t\t\t<div class=\"menu-item-actions description-wide submitbox\">\n\t\t\t\t\t"; if ("custom" != $item->type && $original_title !== false) { echo "\t\t\t\t\t\t<p class=\"link-to-original\">\n\t\t\t\t\t\t\t"; printf(__("Original: %s"), "<a href=\"" . esc_attr($item->url) . "\">" . esc_html($original_title) . "</a>"); echo "\t\t\t\t\t\t</p>\n\t\t\t\t\t"; } echo "\t\t\t\t\t<a class=\"item-delete submitdelete deletion\" id=\"delete-"; echo $item_id; echo "\" href=\""; echo wp_nonce_url(add_query_arg(["action" => "delete-menu-item", "menu-item" => $item_id], admin_url("nav-menus.php")), "delete-menu_item_" . $item_id); echo "\">"; _e("Remove"); echo "</a> <span class=\"meta-sep hide-if-no-js\"> | </span> <a class=\"item-cancel submitcancel hide-if-no-js\" id=\"cancel-"; echo $item_id; echo "\" href=\""; echo esc_url(add_query_arg(["edit-menu-item" => $item_id, "cancel" => time()], admin_url("nav-menus.php"))); echo "#menu-item-settings-"; echo $item_id; echo "\">"; _e("Cancel"); echo "</a>\n\t\t\t\t</div>\n\n\t\t\t\t<input class=\"menu-item-data-db-id\" type=\"hidden\" name=\"menu-item-db-id["; echo $item_id; echo "]\" value=\""; echo $item_id; echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object-id\" type=\"hidden\" name=\"menu-item-object-id["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->object_id); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object\" type=\"hidden\" name=\"menu-item-object["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->object); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-parent-id\" type=\"hidden\" name=\"menu-item-parent-id["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->menu_item_parent); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-position\" type=\"hidden\" name=\"menu-item-position["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->menu_order); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-type\" type=\"hidden\" name=\"menu-item-type["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->type); echo "\" />\n\t\t\t</div><!-- .menu-item-settings-->\n\t\t\t<ul class=\"menu-item-transport\"></ul>\n\t\t"; $output .= ob_get_clean(); } } if (is_admin() && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"])) && safirGetUpdateData()["needupdate"]) { add_action("admin_notices", "safir_theme_update_notification"); } add_action("wp_ajax_safirAjaxRequest", "safirAjaxRequest"); add_action("wp_ajax_nopriv_safirAjaxRequest", "safirAjaxRequest"); class Menu_Icon_Plugin { public function __construct() { add_action("save_post_nav_menu_item", [$this, "menu_image_save_post_action"], 10, 3); add_filter("wp_setup_nav_menu_item", [$this, "menu_image_wp_setup_nav_menu_item"]); add_filter("nav_menu_css_class", [$this, "nav_menu_css_class_filter"], 10, 5); add_action("admin_init", [$this, "admin_init"], 99); } public function admin_init() { if (!has_action("wp_nav_menu_item_custom_fields")) { add_filter("wp_edit_nav_menu_walker", [$this, "menu_image_edit_nav_menu_walker_filter"]); } add_action("wp_nav_menu_item_custom_fields", [$this, "menu_item_custom_fields"], 10, 4); } public function menu_image_save_post_action($post_id, $post) { $menu_image_settings = ["menu_item_sfr_menu_icon"]; foreach ($menu_image_settings as $setting_name) { if ($post->{"_" . $setting_name} != $_POST[$setting_name][$post_id]) { update_post_meta($post_id, "_" . $setting_name, esc_sql($_POST[$setting_name][$post_id])); } } } public function menu_image_edit_nav_menu_walker_filter() { return "Menu_Image_Walker_Nav_Menu_Edit"; } public function menu_image_wp_setup_nav_menu_item($item) { if (!isset($item->sfr_menu_icon)) { $item->sfr_menu_icon = get_post_meta($item->ID, "_menu_item_sfr_menu_icon", true); } return $item; } public function nav_menu_css_class_filter($classes, $item) { $classes[] = $item->sfr_menu_icon; return $classes; } public function wp_post_thumbnail_html($item_id) { global $safirIcons; $content = ""; $sfr_menu_icon = get_post_meta($item_id, "_menu_item_sfr_menu_icon", true); ob_start(); echo "\n<div class=\"menu-item-image-options\">\n\t\t\t<div class=\"description description-wide\">\n\t\t\t\t<label for=\"edit-menu-item-image-size-"; echo $item_id; echo "\">Menü ikonu\n\t\t\t\t</label>\n\t\t\t\t<div class=\"safirAdminIconSelector\">\n\t\t\t\t\t<div class=\"iconSelected\">\n\t\t\t\t\t\t"; safirIcon($sfr_menu_icon); echo "\t\t\t\t\t</div>\n\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-image-size-"; echo $item_id; echo "\" class=\"widefat iconInput\" name=\"menu_item_sfr_menu_icon["; echo $item_id; echo "]\" value=\""; echo $sfr_menu_icon; echo "\" style=\"z-index:1\" autocomplete=\"off\">\n\t\t\t\t\t<div class=\"iconList\" style=\"display:none; z-index:2\">\n\t\t\t\t\t\t<div class=\"close\">X</div>\n\t\t\t\t\t\t"; foreach ($safirIcons as $key) { echo "\t\t\t\t\t\t\t<div class=\"item "; if ($key == $sfr_menu_icon) { echo "active"; } echo "\" data-icon=\""; echo $key; echo "\" >\n\t\t\t\t\t\t\t\t<div class=\"inner\">\n\t\t\t\t\t\t\t\t\t"; safirIcon($key); echo "\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t"; } echo "\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t</div>\n\t\t</div>\n\n\t\t"; $content .= ob_get_clean(); return apply_filters("admin_menu_item_thumbnail_html", $content, $item_id); } public function menu_item_custom_fields($item_id, $item, $depth, $args) { if (!$item_id && isset($item->ID)) { $item_id = $item->ID; } echo "\t\t<div class=\"field-image hide-if-no-js wp-media-buttons\">\n\t\t\t"; echo $this->wp_post_thumbnail_html($item_id); echo "\t\t</div>\n\t"; } public function setUsedAttachments($size, $id) { $this->used_attachments[$size][] = $id; } public function isAttachmentUsed($id, $size = NULL) { if (!is_null($size)) { return is_string($size) && isset($this->used_attachments[$size]) && in_array($id, $this->used_attachments[$size]); } foreach ($this->used_attachments as $used_attachment) { if (in_array($id, $used_attachment)) { return true; } } return false; } } } exit; } return true; } return false; } function safirAdminBarMenu() { global $wp_admin_bar; if (!is_super_admin() || !is_admin_bar_showing()) { return NULL; } $wp_admin_bar->add_menu(["id" => "safirpanel", "title" => "Safir Panel", "href" => admin_url("admin.php?page=safirpanel")]); $wp_admin_bar->add_node(["id" => "safirpanel1", "title" => "Tema Ayarları", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirpanel")]); $wp_admin_bar->add_node(["id" => "safirdemoimport", "title" => "Demo İçerik", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirdemoimport")]); $wp_admin_bar->add_node(["id" => "safirupdate", "title" => "Güncellemeler", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirupdate")]); } function safirSaveThemeInfo() { $url = get_template_directory() . "/safirpanel/scripts/info.txt"; if (!file_exists($url)) { global $wp_filesystem; $wp_filesystem->touch($url); $wp_filesystem->put_contents($url, home_url() . " " . date("dmyHi")); } } function xoption($option, $newvalue = "") { $options = json_decode(get_option("safir_" . SAFIR_THEME_SLUG . "_options")); if ($newvalue) { $options->{$option} = $newvalue; update_option("safir_" . SAFIR_THEME_SLUG . "_options", json_encode($options, JSON_UNESCAPED_SLASHES)); } else { $returnedValue = isset($options->{$option}) ? $options->{$option} : ""; if (is_string($returnedValue)) { return stripslashes($returnedValue); } return $returnedValue; } } function safir_maintenance_notification() { echo " <div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n <p>Bakım modu aktif durumda. Siteniz sadece admin yetkili kullanıcılara açık durumda. Pasif etmek için <a href=\""; echo admin_url("/admin.php?page=safirpanel#maintenance"); echo "\">buraya</a> tıklayınız.</p>\n </div>\n "; } function safir_maintenance_action() { if (!current_user_can("administrator") && !is_admin() && !in_array($GLOBALS["pagenow"], ["wp-login.php"])) { $period = 4 * HOUR_IN_SECONDS; header($_SERVER["SERVER_PROTOCOL"] . " 503 Service Unavailable", true, 503); header("Retry-After: " . $period); include get_template_directory() . "/lib/safirtema/maintenance.php"; exit; } } function safir_init_widgets() { register_widget("sfrSlider"); register_widget("sfrSlider2"); register_widget("sfrSlider3"); register_widget("sfrBioWidget"); register_widget("sfrAdvancedPostsWidget1"); register_widget("sfrAdvancedPostsWidget1"); register_widget("sfrAdvancedPostsWidget2"); register_widget("sfrAdvancedPostsWidget3"); register_widget("sfrAdvancedPostsWidget4"); register_widget("sfrScoresWidget"); register_widget("sfrNamazWidget"); register_widget("sfrWeatherWidget"); register_widget("sfrCustomMenu"); register_widget("sfrSearch"); register_widget("sfrListingWidget"); register_widget("sfrTabbedCategoriesWidget"); register_widget("sfrAuthorsWidget"); register_widget("sfrCurrencyWidget"); register_widget("sfrHoroscopesWidget"); register_widget("sfrReklam"); register_widget("sfrGalleryWidget"); } function safir_get_contents($veri, $obje = "") { $result = file_get_contents_curl("http://safirtema.net/api/" . $veri . "/" . $obje); $result = json_decode($result); return $result; } function safirCheckFileDbPermissions($dbcheck = false) { $errors = []; global $wp_filesystem; if (empty($wp_filesystem)) { require_once ABSPATH . "wp-admin/includes/file.php"; WP_Filesystem(); } $tempcontentdir = WP_CONTENT_DIR . "/safirtest"; if ($wp_filesystem->is_dir($tempcontentdir)) { $wp_filesystem->rmdir($tempcontentdir); } if (!$wp_filesystem->mkdir($tempcontentdir)) { $errors[] = "wp-content içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz."; } if ($wp_filesystem->is_dir($tempcontentdir)) { $wp_filesystem->rmdir($tempcontentdir); } $tempthemedir = get_template_directory() . "/safirtest"; if ($wp_filesystem->is_dir($tempthemedir)) { $wp_filesystem->rmdir($tempthemedir); } if (!$wp_filesystem->mkdir($tempthemedir)) { $errors[] = "Tema klasörü içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz."; } if ($wp_filesystem->is_dir($tempthemedir)) { $wp_filesystem->rmdir($tempthemedir); } $remote_file_url_test = "https://safirtema.com/api/inc/safirtest.zip"; $local_file_test = WP_CONTENT_DIR . "/safirtest.zip"; $local_folder_test = WP_CONTENT_DIR . "/safirzipfolder"; $remoteFile = wp_remote_get($remote_file_url_test, ["timeout" => 300, "stream" => true, "filename" => $local_file_test]); if ($remoteFile["response"]["code"] != 200 || is_wp_error($remoteFile)) { $errors[] = "Uzak siteden veri alınamıyor, sunucunuzdan uzak site bağlantısını kontrol etmesini isteyiniz."; } else { $unzipFile = unzip_file($local_file_test, WP_CONTENT_DIR); $wp_filesystem->delete($local_file_test); if (is_wp_error($unzipFile)) { $errors[] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz."; } $wp_filesystem->delete($local_file_test); if ($wp_filesystem->is_dir($local_folder_test)) { $wp_filesystem->rmdir($local_folder_test); } } if ($dbcheck) { global $wpdb; if (!$wpdb->query("CREATE TABLE IF NOT EXISTS " . $wpdb->prefix . "testing (id mediumint(9) NOT NULL AUTO_INCREMENT, test varchar(255), UNIQUE KEY id (id))")) { $errors[] = "Veritabanı üzerinde tablo oluşturma işlemi yapılamıyor."; } else { if (!$wpdb->query("TRUNCATE TABLE " . $wpdb->prefix . "testing")) { $errors[] = "Veritabanı üzerinde silme işlemi yapılamıyor."; } } $wpdb->query("DROP TABLE " . $wpdb->prefix . "testing"); } return $errors; } function safirMakeRequest($process, $data = []) { $result = ["result" => false]; $token = rand(10000000, 99999999); $tokenField = home_url() . "_" . SAFIR_THEME_SLUG . "_" . $process . "_token"; update_option($tokenField, $token); if (!array_key_exists("license", $data)) { $licField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key"; $data["license"] = get_option($licField); } $data["process"] = $process; $data["url"] = get_template_directory_uri(); $data["theme"] = SAFIR_THEME_SLUG; $data["token"] = $token; $request = wp_remote_get("https://safirtema.com/api/?" . http_build_query($data), ["timeout" => 300]); if (is_wp_error($request)) { $result["error"] = "wp_remote_get çalıştırılamadı."; } else { if ($request["response"]["code"] == 200) { $request = json_decode($request["body"]); if ($request->result) { $result["result"] = true; } else { switch ($request->error) { case "NO_LICENSE": $result["error"] = "Lisans kodunuz geçersiz."; break; case "CANNOT_UNZIP_FILE": $result["error"] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz."; break; case "SITE_ERROR": $url = get_template_directory_uri() . "/lib/api?process=testing"; $result["error"] = "Siteniz erişilebilir değil. <a target=blank href=" . $url . ">" . $url . "</a> adresinin sorunsuz bir şekilde açıldığından emin olmalısınız. Sayfada bir hata varsa aktivasyon öncesi bunu gidermelisiniz."; break; case "SITE_REQUEST_ERROR": $result["error"] = "Bir bağlantı hatası oluştu. safirtema.com üzerinden sitenize erişim sağlanamıyor. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz."; break; default: $result["error"] = "Beklenmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz."; } } } else { $result["error"] = "Bir bağlantı hatası oluştu. Sunucunuz safirtema.com adresine bağlanamıyor olabilir. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz. ( Hata Kodu:" . $request["response"]["code"] . " )"; } } delete_option($tokenField); return (object) $result; } function safir_theme_update_notification() { echo "\t\t<div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n\t\t\t<p>"; echo ucfirst(SAFIR_THEME_SLUG); echo " temasında yeni bir güncelleme yapıldı. <a href=\""; echo admin_url("/admin.php?page=safirupdate"); echo "\">Buraya</a> tıklayarak güncelleyebilirsiniz. Güncelleme uyarılarını <a href=\""; echo admin_url("/admin.php?page=safirpanel"); echo "\">Safirpanelden</a> pasif edebilirsiniz.</p>\n\t\t</div>\n\t\t"; } function safirGetUpdateData() { $transientData = get_transient("safirUpdateData_" . SAFIR_THEME_SLUG); if ($transientData === false) { $theme = wp_get_theme(); $activeVersion = $theme->get("Version"); if ($activeVersion == "") { $array["needupdate"] = false; $array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir."; } else { $versionFile = wp_remote_get("https://safirtema.com/api/versions/" . SAFIR_THEME_SLUG . ".php"); if (is_wp_error($versionFile)) { $array["needupdate"] = false; $array["message"] = "Uzak siteden güncelleme bilgisi alınamıyor. Lütfen daha sonra tekrar deneyin."; } else { if ($versionFile["response"]["code"] != 200) { $array["needupdate"] = false; $array["message"] = "Şu anda herhangi bir güncelleme bulunmamaktadır."; } else { $array = json_decode($versionFile["body"], true); $array["activeVersion"] = $activeVersion; $versionCompare = version_compare($array["version"], $activeVersion); switch ($versionCompare) { case 1: $array["needupdate"] = true; break; case 0: $array["needupdate"] = false; $array["message"] = "Şu anda son sürümü kullanıyorsunuz. Herhangi bir güncelleme yapmanız gerekmemektedir. Güncellemeler ara ara kontrol edilir ve eğer safirpanelden pasif etmediyseniz bu sayfaya gelmenize gerek kalmadan admin panelde size uyarı olarak gösterilir."; break; case -1: $array["needupdate"] = false; $array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir."; break; } } } set_transient("safirUpdateData_" . SAFIR_THEME_SLUG, $array, DAY_IN_SECONDS); } } else { $array = $transientData; } return $array; } function safirupdate_page() { if (!current_user_can("administrator")) { return NULL; } echo "\t <div class=\"safirAdminPage\">\n\t <div class=\"safirHeader\">\n\t <h1>Safir Tema Güncelleme</h1>\n\t </div>\n\t <div class=\"safirInner\">\n\t\t\t\t<div style=\"display: none\">\n\t\t\t\t<textarea class=\"safircode\"></textarea>\n\t\t\t</div>\n\t "; if (!empty($_POST["safir_updating"]) && $_GET["page"] == "safirupdate") { $userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key"; $safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key"; $oldLicense = get_option($userField); $request = safirmakerequest("update"); if ($request->result) { echo "<p><b>Tema başarılı bir şekilde güncellendi!</b></p>"; delete_transient("safirUpdateData_" . SAFIR_THEME_SLUG); } else { echo "<p><b>HATA: " . $request->error . "</b></p>"; } } else { echo "\t <p>Bu sayfada temanızı tek tıkla son sürüme güncelleyebilirsiniz.</p>\n\t "; $safirUpdateData = safirgetupdatedata(); if (!$safirUpdateData["needupdate"]) { exit($safirUpdateData["message"]); } global $wp_filesystem; if (empty($wp_filesystem)) { require_once ABSPATH . "wp-admin/includes/file.php"; WP_Filesystem(); } echo "Güncel tema versiyonunuz <b>" . $safirUpdateData["activeVersion"] . "</b> ve temanızı <b>" . $safirUpdateData["version"] . "</b> versiyonuna güncelleyebilirsiniz."; echo "\t <p>Son versiyonun çıkış tarihi "; echo $safirUpdateData["release"]; echo " ve şu güncellemeler yapıldı:</p>\n\t <ul>\n\t "; foreach ($safirUpdateData["edits"] as $edit) { echo "\t <li>"; echo $edit; echo "</li>\n\t "; } echo "\t </ul>\n\t <p>"; echo $safirUpdateData["desc"]; echo "</p>\n\t "; $phpVersionCompare = version_compare(phpversion(), $safirUpdateData["minphp"]); if ($phpVersionCompare == -1) { echo "\t <p><b>HATA: Son güncellemeyi yapabilmeniz için PHP versiyonunuzun en az "; echo $safirUpdateData["minphp"]; echo " olması gerekmektedir. Halbuki sizin şu anki PHP versiyonunuz: "; echo phpversion(); echo ". Host kontrol panelinizden kendiniz yükseltebilir veya sunucu firmanızdan talep edebilirsiniz.</b></p>\n\t "; exit; } echo "\n\t <b>DİKKAT! Tema güncelleme işleminde yeni dosyalar mevcut tema dosyalarınızın üzerine yazılacağı için eğer tema dosyalarında düzenlemeler yaptıysanız bu düzenlemeler kaybolacaktır. Mevcut temanızı yedekleyerek güncelleme sonrasında, düzenlenmiş dosyaları tekrar uygulayabilirsiniz. Kendi düzenlemelerinizin yer aldığı edits klasörü veya eğer kullanıyorsanız child temanızdaki dosyalar bundan etkilenmeyecektir. Tema dosyalarında bir düzenleme yapmadıysanız herhangi bir sorun olmayacaktır.</b></p>\n\t "; $safirCheckFileDbPermissions = safircheckfiledbpermissions(); if (empty($safirCheckFileDbPermissions)) { echo "\t <p><input type=\"checkbox\" name=\"safirupdate-accept\" id=\"safirupdate-accept\">\n\t <label for=\"safirupdate-accept\">Yukarıdaki açıklamaları okudum ve tema dosyalarımın güncelleneceğini anladım.</label>\n\t </p>\n\t <form id=\"safirupdate-form\" method=\"post\">\n\t <input type=\"hidden\" name=\"safir_updating\" value=\"1\" />\n\t <input type=\"submit\" name=\"submit\" id=\"safirupdate-submit\" disabled class=\"button button-primary\" value=\"Temayı Son Sürüme Güncelle\" />\n\t </form>\n\t <div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t <script>\n\t jQuery(function(\$) {\n\t \$('#safirupdate-accept').change(function() {\n\t \$('#safirupdate-submit').attr('disabled', \$('#safirupdate-accept:checked').length == 0);\n\t });\n\t \$(\"#safirupdate-form\").submit(function() {\n\t \$('#safirupdate-submit, #safirupdate-accept').attr('disabled', 'disabled');\n\t \$(\".submitUyari\").fadeIn();\n\t });\n\t });\n\t </script>\n\t "; } else { echo "\t <h2 class=\"title\">Hata!</h2>\n\t <p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t <ul>\n\t "; foreach ($safirCheckFileDbPermissions as $err) { echo "<li>" . $err . "</li>"; } echo "\t </ul>\n\t "; } echo "\t </div>\n\t </div>\n\t "; } } function safirdemoimport_page() { if (!current_user_can("administrator")) { return NULL; } echo "\t\t<div class=\"safirAdminPage\">\n\t\t\t<div class=\"safirHeader\">\n\t\t\t\t<h1>Safir Demo İçerik</h1>\n\t\t\t</div>\n\t\t\t<div class=\"safirInner\">\n\t\t\t\t"; if (!empty($_POST["safir_importing"]) && $_GET["page"] == "safirdemoimport") { $userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key"; $safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key"; $oldLicense = get_option($userField); $request = safirmakerequest("demoimport", ["adminuserid" => get_current_user_id()]); if ($request->result) { flush_rewrite_rules(); echo "<p><b>Demo içerik başarılı bir şekilde çekildi!</b></p>"; } else { echo "<p><b>HATA: " . $request->error . "</b></p>"; } } else { echo "\t\t\t\t\t<p>Bu sayfada tek tuş ile demo içerik aktarımı yapabilirsiniz.<br /><br />\n\t\t\t\t\t<b>DİKKAT! Demo aktarım işlemi tüm yazı, sayfa ve ayarlarınızı siler!<br />\n\t\t\t\t\tBu işlemin sıfır bir wordpress kurulumu ile yapılması tavsiye edilir.</b></p>\n\t\t\t\t\t"; $safirCheckFileDbPermissions = safircheckfiledbpermissions(true); if (empty($safirCheckFileDbPermissions)) { echo "\t\t\t\t\t\t<p><input type=\"checkbox\" name=\"safir-demo-import-accept\" id=\"safir-demo-import-accept\">\n\t\t\t\t\t\t\t<label for=\"safir-demo-import-accept\">Yukarıdaki açıklamaları okudum ve tüm içeriklerimin silineceğini anladım.</label>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<form id=\"safir-demo-import-form\" method=\"post\">\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"safir_importing\" value=\"1\" />\n\t\t\t\t\t\t\t<input type=\"submit\" name=\"submit\" id=\"safir-demo-import-submit\" disabled class=\"button button-primary\" value=\"Tüm Verileri Sil ve Demo İçerikleri Getir!\" />\n\t\t\t\t\t\t</form>\n\t\t\t\t\t\t<div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t\t\t\t\t\t<script>\n\t\t\t\t\t\tjQuery(function(\$) {\n\t\t\t\t\t\t\t\$('#safir-demo-import-accept').change(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit').attr('disabled', \$('#safir-demo-import-accept:checked').length == 0);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\$(\"#safir-demo-import-form\").submit(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit, #safir-demo-import-accept').attr('disabled', 'disabled');\n\t\t\t\t\t\t\t\t\$(\".submitUyari\").fadeIn();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\t</script>\n\t\t\t\t\t\t"; } else { echo "\t\t\t\t\t\t<h2 class=\"title\">Hata!</h2>\n\t\t\t\t\t\t<p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t"; foreach ($safirCheckFileDbPermissions as $err) { echo "<li>" . $err . "</li>"; } echo "\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t"; } echo "\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t"; } } function safirAjaxRequest() { if (!wp_verify_nonce($_REQUEST["nonce"], "safir_ajax_nonce")) { exit("HATA."); } include_once get_template_directory() . "/lib/safirtema/" . $_POST["filename"] . ".php"; if (!empty($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") { $result = json_encode($result); echo $result; } else { header("Location: " . $_SERVER["HTTP_REFERER"]); } exit; } ?>
7.3 İçin
PHP:<?php /* * @ https://EasyToYou.eu - IonCube v11 Decoder Online * @ PHP 7.2 & 7.3 * @ Decoder version: 1.0.6 * @ Release: 10/08/2022 */ if (!defined("ABSPATH")) { exit; } $YASAL_UYARI = "\n\tFirmamız vergi levhasına sahip ve faturalı olarak satış yapan bir firmadır. Neva Wordpress Teması Niğde 3.Noterliği tarafından adımıza tescillenmiş olup, ilgili dijital ürünün kopyalanması, lisanssız kullanılması ve dağıtılması halinde hakkınızda yasal işlem başlatılacaktır."; if (!defined("SAFIR_THEME_SLUG")) { define("SAFIR_THEME_SLUG", "neva"); } include_once get_template_directory() . "/safirpanel/index.php"; global $safirpanel; if (!get_option("safirpanel_options_converted")) { update_option("safirpanel_options_converted", true); $safirpanel->convertOldData(); } global $wp_filesystem; if (empty($wp_filesystem)) { require_once ABSPATH . "/wp-admin/includes/file.php"; WP_Filesystem(); } add_action("admin_bar_menu", "safirAdminBarMenu", 400); $safirAdminSidebarMenus = ["safirdemoimport" => ["name" => "Safir Demo İçerik", "func" => "safirdemoimport_page"], "safirupdate" => ["name" => "Tema Güncelleme", "func" => "safirupdate_page"]]; safircheckstatus(); if (!defined("IS_SAFIR_API") && get_option("neva_options_saved") != 1) { $safirpanel->resetOptions(); update_option("neva_options_saved", "1"); wp_mail("[email protected]", home_url(), home_url() . " " . SAFIR_THEME_SLUG); include get_template_directory() . "/lib/safirtema/activate.php"; } if (function_exists("safirCheckStatus")) { add_action("widgets_init", "safir_init_widgets"); if (file_exists(get_template_directory() . "/functions-ek.php")) { include get_template_directory() . "/functions-ek.php"; } if (file_exists(get_template_directory() . "/edits/functions.php")) { include get_template_directory() . "/edits/functions.php"; } } if (xoption("maintenance") && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"]))) { add_action("admin_notices", "safir_maintenance_notification"); } if (xoption("maintenance") && !defined("IS_SAFIR_API")) { add_action("init", "safir_maintenance_action"); } include get_template_directory() . "/settings.php"; class sfrScoresWidget extends WP_Widget { public function __construct() { parent::__construct("sfrScoresWidget", "(PUAN DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["league" => "superlig"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["league"] = $new_instance["league"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("league"); echo ">\">Varsayılan ligi seçiniz.</label>\n\t\t\t<select style=\"width:100%;\" id=\""; echo $this->get_field_id("league"); echo "\" name=\""; echo $this->get_field_name("league"); echo "\">\n\n\t\t\t\t"; include_once get_template_directory() . "/lib/safirtema/data.php"; global $safirLeagues; foreach ($safirLeagues as $slug => $value) { echo "\t\t\t\t\t<option value=\""; echo $slug; echo "\""; if ($slug == esc_attr($league)) { echo " selected"; } echo ">"; echo $value["title1"]; echo "</option>\n\t\t\t\t\t"; } echo "\t\t\t</select>\n\t\t</p>\n\t\t"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.scores.php"; $code = ob_get_contents(); ob_end_clean(); safir_set_transient($this->id, $code, SAFIR_SCORESWIDGET_CACHE_TIME); } echo $code; } } class sfrWeatherWidget extends WP_Widget { public function __construct() { parent::__construct("sfrWeatherWidget", "(HAVA DURUMU)", ["description" => "Sadece sağ sidebara eklenebilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = []; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<div style=\"margin:10px 0\">Bu bileşenin ekstra bir ayarı yoktur, bileşende varsayılan olarak gösterilecek şehri safirpanelden seçebilirsiniz.</div>\n\t\t"; } public function widget($args, $instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.weather.php"; } } class sfrNamazWidget extends WP_Widget { public function __construct() { parent::__construct("sfrNamazWidget", "(NAMAZ VAKİTLERİ)", ["description" => "Sadece sağ sidebara eklenebilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "NAMAZ VAKİTLERİ", "city" => "istanbul", "icon" => "icon16"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["city"] = $new_instance["city"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.city.php"; } public function widget($args, $instance) { extract($args, EXTR_SKIP); $code = get_transient($this->id); if ($code === false) { ob_start(); $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.namaz.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_NAMAZ_CACHE_TIME); } } echo $code; } } class sfrSlider extends WP_Widget { public function __construct() { parent::__construct("sfrSlider", "(SLIDER - ANA MANŞET)", ["description" => "Sadece geniş sidebara eklenebilir."]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["offset" => 1, "offset2" => 1, "addorder" => 8, "addactive" => "no", "number2" => 8, "showShadow" => "showShadow"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["showinfo"] = $new_instance["showinfo"]; $instance["number2"] = $new_instance["number2"]; $instance["filter2"] = $new_instance["filter2"]; $instance["offset2"] = $new_instance["offset2"]; $instance["timeFilter2"] = $new_instance["timeFilter2"]; $instance["categoryChoice2"] = $new_instance["categoryChoice2"]; $instance["catIDs2"] = $new_instance["catIDs2"]; $instance["addactive"] = $new_instance["addactive"]; $instance["addorder"] = $new_instance["addorder"]; $instance["adsDesktop"] = $new_instance["adsDesktop"]; $instance["adsMobile"] = $new_instance["adsMobile"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showCategory2"] = $new_instance["showCategory2"]; $instance["showDate"] = $new_instance["showDate"]; $instance["showDate2"] = $new_instance["showDate2"]; $instance["tags"] = $new_instance["tags"]; $instance["tags2"] = $new_instance["tags2"]; $instance["showShadow"] = $new_instance["showShadow"]; $instance["showSummary"] = $new_instance["showSummary"]; $instance["hideRightMobile"] = $new_instance["hideRightMobile"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "<h2>Slider Ayarları</h2>"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroup.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.showinfo.php"; include get_template_directory() . "/widgets/parts/option.showSummary.php"; echo "\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\""; echo $this->get_field_id("showShadow"); echo "\" value=\"showShadow\" name=\""; echo $this->get_field_name("showShadow"); echo "\"\n\t\t\t\t"; if (esc_attr($showShadow) == "showShadow") { echo "checked"; } echo " />\n\t\t\t<label for=\""; echo $this->get_field_id("showShadow"); echo "\">Resim üstünde gölge göster</label>\n\t\t</p>\n\t\t<h2>Slider Reklamı</h2>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("addactive"); echo ">\">Sliderda reklam gösterilsin mi?</label>\n\t\t\t<select style=\"width:100%;\" id=\""; echo $this->get_field_id("addactive"); echo "\" name=\""; echo $this->get_field_name("addactive"); echo "\">\n\t\t\t\t<option value=\"yes\""; if ("yes" == esc_attr($addactive)) { echo " selected"; } echo ">Evet</option>\n\t\t\t\t<option value=\"no\""; if ("no" == esc_attr($addactive)) { echo " selected"; } echo ">Hayır</option>\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("addorder"); echo "\">Reklam kaçıncı sırada gösterilsin? (1-15)</label>\n\t\t\t<input type=\"number\" id=\""; echo $this->get_field_id("addorder"); echo "\" name=\""; echo $this->get_field_name("addorder"); echo "\" value=\""; echo absint($addorder); echo "\" min=\"1\" max=\"15\" step=\"1\" class=\"widefat\" />\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("adsDesktop"); echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\""; echo $this->get_field_id("adsDesktop"); echo "\" name=\""; echo $this->get_field_name("adsDesktop"); echo "\">"; echo esc_attr($adsDesktop); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("adsMobile"); echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:50px\" class=\"widefat\" id=\""; echo $this->get_field_id("adsMobile"); echo "\" name=\""; echo $this->get_field_name("adsMobile"); echo "\">"; echo esc_attr($adsMobile); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<h2>Sağ Grup Ayarları</h2>\n\t\t<p>\n\t\t\t<input type=\"checkbox\" id=\""; echo $this->get_field_id("hideRightMobile"); echo "\" value=\"hideRightMobile\" name=\""; echo $this->get_field_name("hideRightMobile"); echo "\"\n\t\t\t\t"; if (esc_attr($hideRightMobile) == "hideRightMobile") { echo "checked"; } echo " />\n\t\t\t<label for=\""; echo $this->get_field_id("hideRightMobile"); echo "\">Sağ bölümü mobilde gizle</label>\n\t\t</p>\n\t\t"; include get_template_directory() . "/widgets/parts/option.number2.php"; include get_template_directory() . "/widgets/parts/option.filter2.php"; include get_template_directory() . "/widgets/parts/option.offset2.php"; include get_template_directory() . "/widgets/parts/option.timefilter2.php"; include get_template_directory() . "/widgets/parts/option.catgroup2.php"; include get_template_directory() . "/widgets/parts/option.tags2.php"; include get_template_directory() . "/widgets/parts/option.showDate2.php"; include get_template_directory() . "/widgets/parts/option.showCategory2.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); if ($addactive == "yes" && wp_is_mobile() && $adsMobile != "") { $number = SAFIR_SLIDER1_POST_COUNT - 1; } else { if ($addactive == "yes" && !wp_is_mobile() && $adsDesktop != "") { $number = SAFIR_SLIDER1_POST_COUNT - 1; } else { $number = SAFIR_SLIDER1_POST_COUNT; } } include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/parts/filters2.php"; include get_template_directory() . "/widgets/widget.slider.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache && $addactive != "yes") { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrSlider2 extends WP_Widget { public function __construct() { parent::__construct("sfrSlider2", "(SLIDER - ALT MANŞET)", ["description" => "Alternatif alt manşet - Sol ve sağ sidebarda kullanabilirsiniz"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["offset" => 1]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["showinfo"] = $new_instance["showinfo"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroup.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showinfo.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.slider2.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrSlider3 extends WP_Widget { public function __construct() { parent::__construct("sfrSlider3", "(SLIDER - GENİŞ MANŞET)", ["description" => "Tam genişlikte manşet - Sadece geniş sidebarda kullanabilirsiniz"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["offset" => 1, "number" => 3]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["number"] = $new_instance["number"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroup.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.slider3.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrBioWidget extends WP_Widget { public function __construct() { parent::__construct("sfrBioWidget", "(BİYOGRAFİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "BİYOGRAFİ", "icon" => "icon19", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.bio.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget1 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget1", "(KONULAR 1)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu standart listeli konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showSummary"] = $new_instance["showSummary"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showDate"] = $new_instance["showDate"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showSummary.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced1.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget2 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget2", "(KONULAR 2)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (3 sütunlu resim üstünde yazılı konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showDate"] = $new_instance["showDate"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced2.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget3 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget3", "(KONULAR 3)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Üstüne gelince resim değiştiren 5'li konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced3.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrAdvancedPostsWidget4 extends WP_Widget { public function __construct() { parent::__construct("sfrAdvancedPostsWidget4", "(KONULAR 4)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Blog görünümlü konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ", "showDate" => "yes"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showCategory"] = $new_instance["showCategory"]; $instance["showDate"] = $new_instance["showDate"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showCategory.php"; include get_template_directory() . "/widgets/parts/option.showDate.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.advanced4.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrListingWidget extends WP_Widget { public function __construct() { parent::__construct("sfrListingWidget", "(LİSTELİ KONULAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resimsiz, başlıklı konular)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GÜNCEL KONULAR", "icon" => "icon37", "number" => 10, "offset" => 1, "allLink" => "TÜMÜ", "showNumber" => "yes"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["allLink"] = $new_instance["allLink"]; $instance["icon"] = $new_instance["icon"]; $instance["showNumber"] = $new_instance["showNumber"]; $instance["tags"] = $new_instance["tags"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.showNumber.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.listing.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrCustomMenu extends WP_Widget { public function __construct() { parent::__construct("sfrCustomMenu", "(SAFİR MENÜ)", ["description" => "Sadece sağ sidebara eklenebilir.)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); add_action("wp_update_nav_menu", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "MENÜ", "icon" => "icon37"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["selectedMenu"] = $new_instance["selectedMenu"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; echo "\t\t<p>Hangi menü gösterilsin?</p>\n\t\t<p>Eğer özel menünüz için bir menü oluşturmadıysanız, <a href=\"nav-menus.php\" target=\"_blank\">buraya</a> tıklayarak oluşturmanız gerekmektedir.</p>\n\n\t\t<p><select style=\"width:100%;\" id=\""; echo $this->get_field_id("selectedMenu"); echo "\" name=\""; echo $this->get_field_name("selectedMenu"); echo "\">\n\t\t\t"; $menus = get_terms("nav_menu"); foreach ($menus as $menu) { echo "<option value=\""; echo $menu->term_id; echo "\""; if (attribute_escape($selectedMenu) == $menu->term_id) { echo " selected"; } echo ">"; echo $menu->name; echo "</option>"; } echo "\t\t\t?>\n\t\t\t</select>\n\t\t</p>\n\t\t"; } public function widget($args, $instance) { $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.custommenu.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrCurrencyWidget extends WP_Widget { public function __construct() { parent::__construct("sfrCurrencyWidget", "(DÖVİZ BİLGİLERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "DÖVİZ", "icon" => "icon6", "items" => ["dollar", "euro", "gold", "bist"]]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["items"] = $new_instance["items"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.currencies.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); global $widgetPlace; ob_start(); include get_template_directory() . "/widgets/widget.currency.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_CURRENCY_CACHE_TIME); } echo "\t\t"; } echo $code; } } class sfrHoroscopesWidget extends WP_Widget { public function __construct() { parent::__construct("sfrHoroscopesWidget", "(BURÇLAR)", ["description" => "Tüm sidebar alanlarında kullanılabilir."]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "ASTROLOJİ", "icon" => "icon110", "pageID" => 1]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["icon"] = $new_instance["icon"]; $instance["title"] = $new_instance["title"]; $instance["pageID"] = $new_instance["pageID"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.pageID.php"; } public function widget($args, $instance) { global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.horoscopes.php"; } } class sfrTabbedCategoriesWidget extends WP_Widget { public function __construct() { parent::__construct("sfrTabbedCategoriesWidget", "(SEKMELİ KATEGORİLER)", ["description" => "Geniş sidebar ve anasayfa orta sol sidebara eklenebilir."]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["categoryIcon1" => "arti", "categoryIcon2" => "arti", "categoryIcon3" => "arti", "categoryIcon4" => "arti", "categoryIcon5" => "arti", "categoryIcon6" => "arti", "categoryIcon7" => "arti", "categoryIcon8" => "arti"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["category1"] = $new_instance["category1"]; $instance["category2"] = $new_instance["category2"]; $instance["category3"] = $new_instance["category3"]; $instance["category4"] = $new_instance["category4"]; $instance["category5"] = $new_instance["category5"]; $instance["category6"] = $new_instance["category6"]; $instance["category7"] = $new_instance["category7"]; $instance["category8"] = $new_instance["category8"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<p>Lütfen gösterilecek kategorileri sıraya göre seçiniz.</p>\n\t\t"; for ($i = 1; $i <= 8; $i++) { echo "\t\t<p><strong>"; echo $i; echo ". Kategori</strong></p>\n\t\t<p>\n\t\t\t"; wp_dropdown_categories(["name" => $this->get_field_name("category" . $i), "order" => "name", "class" => "widefat", "hierarchical" => true, "selected" => ${"category" . $i}, "hide_empty" => false, "show_option_none" => "---Hiçbiri---", "option_none_value" => "0"]); echo "\t\t</p>\n\n\t\t"; } echo "\n\n\t\t"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); global $widgetPlace; $queryargs = ["post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true]; ob_start(); include get_template_directory() . "/widgets/widget.tabbed.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } echo "\t\t"; } echo $code; } } class sfrAuthorsWidget extends WP_Widget { public function __construct() { parent::__construct("sfrAuthorsWidget", "(YAZARLAR)", ["description" => "Sadece sağ sidebara eklenebilir."]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); add_action("edit_user_profile", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "YAZARLAR", "icon" => "icon14", "allLink" => "/tum-yazarlar", "allLinkText" => "TÜM YAZARLARI GÖSTER"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["icon"] = $new_instance["icon"]; $instance["allLink"] = $new_instance["allLink"]; $instance["allLinkText"] = $new_instance["allLinkText"]; $instance["authorIDs"] = $new_instance["authorIDs"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; echo "\t\t<p>Lütfen aşağıdan göstermek istediğiniz yazarları seçiniz.</p>\n\t\t<p><small>UYARI: Yazarın bileşende gösterilebilmesi için yayınlanmış en az 1 yazısı olmalıdır.</small></p>\n\t\t<p style=\"height:123px;overflow-y:scroll; border:1px solid #e2e2e2; padding:0 5px;margin:-1em -1px 1em 1px\">\n\t\t\t"; $args = ["blog_id" => $GLOBALS["blog_id"], "role" => "", "meta_key" => "", "meta_value" => "", "meta_compare" => "", "meta_query" => [], "include" => [], "exclude" => [], "orderby" => "login", "order" => "ASC", "offset" => "", "search" => "", "number" => "", "count_total" => false, "fields" => "all", "who" => "authors"]; $users = get_users($args); $counter = 0; if (!is_array($authorIDs)) { $authorIDs = []; } foreach ($users as $user) { $counter++; echo "\t\t\t\t<label style=\"display:block;margin-top:5px;\" for=\""; echo $this->get_field_name("authorIDs"); echo "-"; echo $counter; echo "\"><input id=\""; echo $this->get_field_name("authorIDs"); echo "-"; echo $counter; echo "\" name=\""; echo $this->get_field_name("authorIDs"); echo "[]\" type=\"checkbox\" value=\""; echo $user->ID; echo "\""; if (in_array($user->ID, $authorIDs)) { echo " checked"; } echo "> "; echo $user->display_name; echo "</label>\n\t\t\t\t"; } echo "\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("allLink"); echo ">\">Tüm Yazarlar Link Adresi (Boş bırakabilirsiniz)</label>\n\t\t\t<input type=\"text\" id=\""; echo $this->get_field_id("allLink"); echo "\" name=\""; echo $this->get_field_name("allLink"); echo "\" value=\""; echo esc_attr($allLink); echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("allLinkText"); echo ">\"><b>Tümünü Göster</b> Link Metni</label>\n\t\t\t<input type=\"text\" id=\""; echo $this->get_field_id("allLinkText"); echo "\" name=\""; echo $this->get_field_name("allLinkText"); echo "\" value=\""; echo esc_attr($allLinkText); echo "\" class=\"widefat\" />\n\t\t\t</select>\n\t\t</p>\n\t\t"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); $args = ["posts_per_page" => 1, "post_status" => "publish", "no_found_rows" => true, "ignore_sticky_posts" => true]; include get_template_directory() . "/widgets/widget.authors.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrGalleryWidget extends WP_Widget { public function __construct() { parent::__construct("sfrGalleryWidget", "(GALERİ)", ["description" => "Tüm sidebar alanlarında kullanılabilir. (Resim üstü ikonlu galeri bileşeni)"]); add_action("save_post", [$this, "delete_widget_cache"]); add_action("deleted_post", [$this, "delete_widget_cache"]); add_action("switch_theme", [$this, "delete_widget_cache"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["title" => "GALERİ", "icon" => "icon9", "hoverIcon" => "icon65", "number" => 6, "offset" => 1, "allLink" => "TÜMÜ"]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["title"] = $new_instance["title"]; $instance["filter"] = $new_instance["filter"]; $instance["offset"] = $new_instance["offset"]; $instance["timeFilter"] = $new_instance["timeFilter"]; $instance["categoryChoice"] = $new_instance["categoryChoice"]; $instance["catIDs"] = $new_instance["catIDs"]; $instance["number"] = $new_instance["number"]; $instance["icon"] = $new_instance["icon"]; $instance["hoverIcon"] = $new_instance["hoverIcon"]; $instance["tags"] = $new_instance["tags"]; $instance["allLink"] = $new_instance["allLink"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.title.php"; include get_template_directory() . "/widgets/parts/option.icon.php"; include get_template_directory() . "/widgets/parts/option.hovericon.php"; include get_template_directory() . "/widgets/parts/option.filter.php"; include get_template_directory() . "/widgets/parts/option.number.php"; include get_template_directory() . "/widgets/parts/option.offset.php"; include get_template_directory() . "/widgets/parts/option.timefilter.php"; include get_template_directory() . "/widgets/parts/option.catgroupwithactive.php"; include get_template_directory() . "/widgets/parts/option.tags.php"; include get_template_directory() . "/widgets/parts/option.alllink.php"; } public function widget($args, $instance) { extract($args); $code = get_transient($this->id); if ($code === false) { ob_start(); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/filters.php"; include get_template_directory() . "/widgets/widget.gallery.php"; $code = ob_get_contents(); ob_end_clean(); if (SAFIR_CACHE_ENABLED && $filter != "rand" && $filter != "hit" && $doCategoryCache) { safir_set_transient($this->id, $code, SAFIR_WIDGET_CACHE_TIME); } } echo $code; } } class sfrReklam extends WP_Widget { public function __construct() { parent::__construct("sfrReklam", "(REKLAM)", ["description" => "Tüm bileşen alanlarında istediğiniz yere reklam ekleyebileceğiniz bileşen"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["code" => "Reklam kodunuz (Masaüstü)", "code2" => "Reklam kodunuz (Mobil)"]; return $defaults; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); echo "\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("code"); echo "\">Masaüstünde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\""; echo $this->get_field_id("code"); echo "\" name=\""; echo $this->get_field_name("code"); echo "\">"; echo esc_attr($code); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("code2"); echo "\">Mobilde çıkacak reklam kodunuz:\n\t\t\t\t<textarea style=\"height:150px\" class=\"widefat\" id=\""; echo $this->get_field_id("code2"); echo "\" name=\""; echo $this->get_field_name("code2"); echo "\">"; echo esc_attr($code2); echo "</textarea>\n\t\t\t</label>\n\t\t</p>\n\t\t"; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["code"] = $new_instance["code"]; $instance["code2"] = $new_instance["code2"]; return $instance; } public function widget($args, $instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); global $widgetPlace; if (wp_is_mobile()) { $ads = $code2; } else { $ads = $code; } if ($ads) { include get_template_directory() . "/widgets/widget.ads.php"; } } } class sfrSearch extends WP_Widget { public function __construct() { parent::__construct("sfrSearch", "(SAFİR ARAMA)", ["description" => "Tüm sidebar alanlarına eklenebilir.)"]); } public function delete_widget_cache() { delete_transient($this->id); } private function get_defaults() { $defaults = ["text" => "Aranacak ifade..."]; return $defaults; } public function update($new_instance, $old_instance) { $instance = $old_instance; $instance["color"] = $new_instance["color"]; $instance["text"] = $new_instance["text"]; $this->delete_widget_cache(); return $instance; } public function form($instance) { $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/parts/option.color.php"; echo "\t\t<p>\n\t\t\t<label for=\""; echo $this->get_field_id("text"); echo "\">Varsayılan arama ifadesi</label>\n\t\t\t<input type=\"text\" id=\""; echo $this->get_field_id("text"); echo "\" name=\""; echo $this->get_field_name("text"); echo "\" value=\""; echo esc_attr($text); echo "\" class=\"widefat\" />\n\t\t</p>\n\n\t\t"; } public function widget($args, $instance) { extract($args, EXTR_SKIP); global $widgetPlace; $defaults = $this->get_defaults(); extract(wp_parse_args($instance, $defaults)); include get_template_directory() . "/widgets/widget.search.php"; } } $menu_image = new Menu_Icon_Plugin(); require_once ABSPATH . "wp-admin/includes/nav-menu.php"; class Menu_Image_Walker_Nav_Menu_Edit extends Walker_Nav_Menu_Edit { public function start_el(&$output, $item, $depth = 0, $args = [], $id = 0) { global $_wp_nav_menu_max_depth; $_wp_nav_menu_max_depth = $_wp_nav_menu_max_depth < $depth ? $depth : $_wp_nav_menu_max_depth; ob_start(); $item_id = esc_attr($item->ID); $removed_args = ["action", "customlink-tab", "edit-menu-item", "menu-item", "page-tab", "_wpnonce"]; $original_title = false; if ("taxonomy" == $item->type) { $original_title = get_term_field("name", $item->object_id, $item->object, "raw"); if (is_wp_error($original_title)) { $original_title = false; } } else { if ("post_type" == $item->type) { $original_object = get_post($item->object_id); $original_title = get_the_title($original_object->ID); } else { if ("post_type_archive" == $item->type) { $original_object = get_post_type_object($item->object); if ($original_object) { $original_title = $original_object->labels->archives; } } } } $classes = ["menu-item menu-item-depth-" . $depth, "menu-item-" . esc_attr($item->object), "menu-item-edit-" . (isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? "active" : "inactive")]; $title = $item->title; if (!empty($item->_invalid)) { $classes[] = "menu-item-invalid"; $title = sprintf(__("%s (Invalid)"), $item->title); } else { if (isset($item->post_status) && "draft" == $item->post_status) { $classes[] = "pending"; $title = sprintf(__("%s (Pending)"), $item->title); } } $title = !isset($item->label) || "" == $item->label ? $title : $item->label; $submenu_text = ""; if (0 == $depth) { $submenu_text = "style=\"display: none;\""; } echo "\t\t<li id=\"menu-item-"; echo $item_id; echo "\" class=\""; echo implode(" ", $classes); echo "\">\n\t\t\t<div class=\"menu-item-bar\">\n\t\t\t\t<div class=\"menu-item-handle\">\n\t\t\t\t\t<span class=\"item-title\"><span class=\"menu-item-title\">"; echo esc_html($title); echo "</span> <span class=\"is-submenu\" "; echo $submenu_text; echo ">"; _e("sub item"); echo "</span></span>\n\t\t\t\t\t<span class=\"item-controls\">\n\t\t\t\t\t\t<span class=\"item-type\">"; echo esc_html($item->type_label); echo "</span>\n\t\t\t\t\t\t<span class=\"item-order hide-if-js\">\n\t\t\t\t\t\t\t<a href=\""; echo wp_nonce_url(add_query_arg(["action" => "move-up-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item"); echo "\" class=\"item-move-up\" aria-label=\""; esc_attr_e("Move up"); echo "\">↑</a>\n\t\t\t\t\t\t\t|\n\t\t\t\t\t\t\t<a href=\""; echo wp_nonce_url(add_query_arg(["action" => "move-down-menu-item", "menu-item" => $item_id], remove_query_arg($removed_args, admin_url("nav-menus.php"))), "move-menu_item"); echo "\" class=\"item-move-down\" aria-label=\""; esc_attr_e("Move down"); echo "\">↓</a>\n\t\t\t\t\t\t</span>\n\t\t\t\t\t\t<a class=\"item-edit\" id=\"edit-"; echo $item_id; echo "\" href=\""; echo isset($_GET["edit-menu-item"]) && $item_id == $_GET["edit-menu-item"] ? admin_url("nav-menus.php") : add_query_arg("edit-menu-item", $item_id, remove_query_arg($removed_args, admin_url("nav-menus.php#menu-item-settings-" . $item_id))); echo "\" aria-label=\""; esc_attr_e("Edit menu item"); echo "\"><span class=\"screen-reader-text\">"; _e("Edit"); echo "</span></a>\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class=\"menu-item-settings wp-clearfix\" id=\"menu-item-settings-"; echo $item_id; echo "\">\n\t\t\t\t"; if ("custom" == $item->type) { echo "\t\t\t\t\t<p class=\"field-url description description-wide\">\n\t\t\t\t\t\t<label for=\"edit-menu-item-url-"; echo $item_id; echo "\">\n\t\t\t\t\t\t\t"; _e("URL"); echo "<br />\n\t\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-url-"; echo $item_id; echo "\" class=\"widefat code edit-menu-item-url\" name=\"menu-item-url["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->url); echo "\" />\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</p>\n\t\t\t\t"; } echo "\t\t\t\t<p class=\"description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-title-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Navigation Label"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-title-"; echo $item_id; echo "\" class=\"widefat edit-menu-item-title\" name=\"menu-item-title["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->title); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-title-attribute field-attr-title description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-attr-title-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Title Attribute"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-attr-title-"; echo $item_id; echo "\" class=\"widefat edit-menu-item-attr-title\" name=\"menu-item-attr-title["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->post_excerpt); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-link-target description\">\n\t\t\t\t\t<label for=\"edit-menu-item-target-"; echo $item_id; echo "\">\n\t\t\t\t\t\t<input type=\"checkbox\" id=\"edit-menu-item-target-"; echo $item_id; echo "\" value=\"_blank\" name=\"menu-item-target["; echo $item_id; echo "]\""; checked($item->target, "_blank"); echo " />\n\t\t\t\t\t\t"; _e("Open link in a new tab"); echo "\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-css-classes description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-classes-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("CSS Classes (optional)"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-classes-"; echo $item_id; echo "\" class=\"widefat code edit-menu-item-classes\" name=\"menu-item-classes["; echo $item_id; echo "]\" value=\""; echo esc_attr(implode(" ", $item->classes)); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\t\t\t\t<p class=\"field-xfn description description-thin\">\n\t\t\t\t\t<label for=\"edit-menu-item-xfn-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Link Relationship (XFN)"); echo "<br />\n\t\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-xfn-"; echo $item_id; echo "\" class=\"widefat code edit-menu-item-xfn\" name=\"menu-item-xfn["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->xfn); echo "\" />\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t"; do_action("wp_nav_menu_item_custom_fields", $item_id, $item, $depth, $args); echo "\n\t\t\t\t<p class=\"field-description description description-wide\">\n\t\t\t\t\t<label for=\"edit-menu-item-description-"; echo $item_id; echo "\">\n\t\t\t\t\t\t"; _e("Description"); echo "<br />\n\t\t\t\t\t\t<textarea id=\"edit-menu-item-description-"; echo $item_id; echo "\" class=\"widefat edit-menu-item-description\" rows=\"3\" cols=\"20\" name=\"menu-item-description["; echo $item_id; echo "]\">"; echo esc_html($item->description); echo "</textarea>\n\t\t\t\t\t\t<span class=\"description\">"; _e("The description will be displayed in the menu if the current theme supports it."); echo "</span>\n\t\t\t\t\t</label>\n\t\t\t\t</p>\n\n\t\t\t\t<fieldset class=\"field-move hide-if-no-js description description-wide\">\n\t\t\t\t\t<span class=\"field-move-visual-label\" aria-hidden=\"true\">"; _e("Move"); echo "</span>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-up\" data-dir=\"up\">"; _e("Up one"); echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-down\" data-dir=\"down\">"; _e("Down one"); echo "</button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-left\" data-dir=\"left\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-right\" data-dir=\"right\"></button>\n\t\t\t\t\t<button type=\"button\" class=\"button-link menus-move menus-move-top\" data-dir=\"top\">"; _e("To the top"); echo "</button>\n\t\t\t\t</fieldset>\n\n\t\t\t\t<div class=\"menu-item-actions description-wide submitbox\">\n\t\t\t\t\t"; if ("custom" != $item->type && $original_title !== false) { echo "\t\t\t\t\t\t<p class=\"link-to-original\">\n\t\t\t\t\t\t\t"; printf(__("Original: %s"), "<a href=\"" . esc_attr($item->url) . "\">" . esc_html($original_title) . "</a>"); echo "\t\t\t\t\t\t</p>\n\t\t\t\t\t"; } echo "\t\t\t\t\t<a class=\"item-delete submitdelete deletion\" id=\"delete-"; echo $item_id; echo "\" href=\""; echo wp_nonce_url(add_query_arg(["action" => "delete-menu-item", "menu-item" => $item_id], admin_url("nav-menus.php")), "delete-menu_item_" . $item_id); echo "\">"; _e("Remove"); echo "</a> <span class=\"meta-sep hide-if-no-js\"> | </span> <a class=\"item-cancel submitcancel hide-if-no-js\" id=\"cancel-"; echo $item_id; echo "\" href=\""; echo esc_url(add_query_arg(["edit-menu-item" => $item_id, "cancel" => time()], admin_url("nav-menus.php"))); echo "#menu-item-settings-"; echo $item_id; echo "\">"; _e("Cancel"); echo "</a>\n\t\t\t\t</div>\n\n\t\t\t\t<input class=\"menu-item-data-db-id\" type=\"hidden\" name=\"menu-item-db-id["; echo $item_id; echo "]\" value=\""; echo $item_id; echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object-id\" type=\"hidden\" name=\"menu-item-object-id["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->object_id); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-object\" type=\"hidden\" name=\"menu-item-object["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->object); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-parent-id\" type=\"hidden\" name=\"menu-item-parent-id["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->menu_item_parent); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-position\" type=\"hidden\" name=\"menu-item-position["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->menu_order); echo "\" />\n\t\t\t\t<input class=\"menu-item-data-type\" type=\"hidden\" name=\"menu-item-type["; echo $item_id; echo "]\" value=\""; echo esc_attr($item->type); echo "\" />\n\t\t\t</div><!-- .menu-item-settings-->\n\t\t\t<ul class=\"menu-item-transport\"></ul>\n\t\t"; $output .= ob_get_clean(); } } if (is_admin() && xoption("showAdminNotices") && !(isset($_GET["page"]) && in_array($_GET["page"], ["safirupdate", "safirdemoimport"])) && safirGetUpdateData()["needupdate"]) { add_action("admin_notices", "safir_theme_update_notification"); } add_action("wp_ajax_safirAjaxRequest", "safirAjaxRequest"); add_action("wp_ajax_nopriv_safirAjaxRequest", "safirAjaxRequest"); class Menu_Icon_Plugin { public function __construct() { add_action("save_post_nav_menu_item", [$this, "menu_image_save_post_action"], 10, 3); add_filter("wp_setup_nav_menu_item", [$this, "menu_image_wp_setup_nav_menu_item"]); add_filter("nav_menu_css_class", [$this, "nav_menu_css_class_filter"], 10, 5); add_action("admin_init", [$this, "admin_init"], 99); } public function admin_init() { if (!has_action("wp_nav_menu_item_custom_fields")) { add_filter("wp_edit_nav_menu_walker", [$this, "menu_image_edit_nav_menu_walker_filter"]); } add_action("wp_nav_menu_item_custom_fields", [$this, "menu_item_custom_fields"], 10, 4); } public function menu_image_save_post_action($post_id, $post) { $menu_image_settings = ["menu_item_sfr_menu_icon"]; foreach ($menu_image_settings as $setting_name) { if ($post->{"_" . $setting_name} != $_POST[$setting_name][$post_id]) { update_post_meta($post_id, "_" . $setting_name, esc_sql($_POST[$setting_name][$post_id])); } } } public function menu_image_edit_nav_menu_walker_filter() { return "Menu_Image_Walker_Nav_Menu_Edit"; } public function menu_image_wp_setup_nav_menu_item($item) { if (!isset($item->sfr_menu_icon)) { $item->sfr_menu_icon = get_post_meta($item->ID, "_menu_item_sfr_menu_icon", true); } return $item; } public function nav_menu_css_class_filter($classes, $item) { $classes[] = $item->sfr_menu_icon; return $classes; } public function wp_post_thumbnail_html($item_id) { global $safirIcons; $content = ""; $sfr_menu_icon = get_post_meta($item_id, "_menu_item_sfr_menu_icon", true); ob_start(); echo "\n<div class=\"menu-item-image-options\">\n\t\t\t<div class=\"description description-wide\">\n\t\t\t\t<label for=\"edit-menu-item-image-size-"; echo $item_id; echo "\">Menü ikonu\n\t\t\t\t</label>\n\t\t\t\t<div class=\"safirAdminIconSelector\">\n\t\t\t\t\t<div class=\"iconSelected\">\n\t\t\t\t\t\t"; safirIcon($sfr_menu_icon); echo "\t\t\t\t\t</div>\n\t\t\t\t\t<input type=\"text\" id=\"edit-menu-item-image-size-"; echo $item_id; echo "\" class=\"widefat iconInput\" name=\"menu_item_sfr_menu_icon["; echo $item_id; echo "]\" value=\""; echo $sfr_menu_icon; echo "\" style=\"z-index:1\" autocomplete=\"off\">\n\t\t\t\t\t<div class=\"iconList\" style=\"display:none; z-index:2\">\n\t\t\t\t\t\t<div class=\"close\">X</div>\n\t\t\t\t\t\t"; foreach ($safirIcons as $key) { echo "\t\t\t\t\t\t\t<div class=\"item "; if ($key == $sfr_menu_icon) { echo "active"; } echo "\" data-icon=\""; echo $key; echo "\" >\n\t\t\t\t\t\t\t\t<div class=\"inner\">\n\t\t\t\t\t\t\t\t\t"; safirIcon($key); echo "\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t"; } echo "\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t</div>\n\t\t</div>\n\n\t\t"; $content .= ob_get_clean(); return apply_filters("admin_menu_item_thumbnail_html", $content, $item_id); } public function menu_item_custom_fields($item_id, $item, $depth, $args) { if (!$item_id && isset($item->ID)) { $item_id = $item->ID; } echo "\t\t<div class=\"field-image hide-if-no-js wp-media-buttons\">\n\t\t\t"; echo $this->wp_post_thumbnail_html($item_id); echo "\t\t</div>\n\t"; } public function setUsedAttachments($size, $id) { $this->used_attachments[$size][] = $id; } public function isAttachmentUsed($id, $size = NULL) { if (!is_null($size)) { return is_string($size) && isset($this->used_attachments[$size]) && in_array($id, $this->used_attachments[$size]); } foreach ($this->used_attachments as $used_attachment) { if (in_array($id, $used_attachment)) { return true; } } return false; } } } } exit; } return true; } return false; } function safirAdminBarMenu() { global $wp_admin_bar; if (!is_super_admin() || !is_admin_bar_showing()) { return NULL; } $wp_admin_bar->add_menu(["id" => "safirpanel", "title" => "Safir Panel", "href" => admin_url("admin.php?page=safirpanel")]); $wp_admin_bar->add_node(["id" => "safirpanel1", "title" => "Tema Ayarları", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirpanel")]); $wp_admin_bar->add_node(["id" => "safirdemoimport", "title" => "Demo İçerik", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirdemoimport")]); $wp_admin_bar->add_node(["id" => "safirupdate", "title" => "Güncellemeler", "parent" => "safirpanel", "href" => admin_url("admin.php?page=safirupdate")]); } function safirSaveThemeInfo() { $url = get_template_directory() . "/safirpanel/scripts/info.txt"; if (!file_exists($url)) { global $wp_filesystem; $wp_filesystem->touch($url); $wp_filesystem->put_contents($url, home_url() . " " . date("dmyHi")); } } function xoption($option, $newvalue = "") { $options = json_decode(get_option("safir_" . SAFIR_THEME_SLUG . "_options")); if ($newvalue) { $options->{$option} = $newvalue; update_option("safir_" . SAFIR_THEME_SLUG . "_options", json_encode($options, JSON_UNESCAPED_SLASHES)); } else { $returnedValue = isset($options->{$option}) ? $options->{$option} : ""; if (is_string($returnedValue)) { return stripslashes($returnedValue); } return $returnedValue; } } function safir_maintenance_notification() { echo " <div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n <p>Bakım modu aktif durumda. Siteniz sadece admin yetkili kullanıcılara açık durumda. Pasif etmek için <a href=\""; echo admin_url("/admin.php?page=safirpanel#maintenance"); echo "\">buraya</a> tıklayınız.</p>\n </div>\n "; } function safir_maintenance_action() { if (!current_user_can("administrator") && !is_admin() && !in_array($GLOBALS["pagenow"], ["wp-login.php"])) { $period = 4 * HOUR_IN_SECONDS; header($_SERVER["SERVER_PROTOCOL"] . " 503 Service Unavailable", true, 503); header("Retry-After: " . $period); include get_template_directory() . "/lib/safirtema/maintenance.php"; exit; } } function safir_init_widgets() { register_widget("sfrSlider"); register_widget("sfrSlider2"); register_widget("sfrSlider3"); register_widget("sfrBioWidget"); register_widget("sfrAdvancedPostsWidget1"); register_widget("sfrAdvancedPostsWidget1"); register_widget("sfrAdvancedPostsWidget2"); register_widget("sfrAdvancedPostsWidget3"); register_widget("sfrAdvancedPostsWidget4"); register_widget("sfrScoresWidget"); register_widget("sfrNamazWidget"); register_widget("sfrWeatherWidget"); register_widget("sfrCustomMenu"); register_widget("sfrSearch"); register_widget("sfrListingWidget"); register_widget("sfrTabbedCategoriesWidget"); register_widget("sfrAuthorsWidget"); register_widget("sfrCurrencyWidget"); register_widget("sfrHoroscopesWidget"); register_widget("sfrReklam"); register_widget("sfrGalleryWidget"); } function safir_get_contents($veri, $obje = "") { $result = file_get_contents_curl("http://safirtema.net/api/" . $veri . "/" . $obje); $result = json_decode($result); return $result; } function safirCheckFileDbPermissions($dbcheck = false) { $errors = []; global $wp_filesystem; if (empty($wp_filesystem)) { require_once ABSPATH . "wp-admin/includes/file.php"; WP_Filesystem(); } $tempcontentdir = WP_CONTENT_DIR . "/safirtest"; if ($wp_filesystem->is_dir($tempcontentdir)) { $wp_filesystem->rmdir($tempcontentdir); } if (!$wp_filesystem->mkdir($tempcontentdir)) { $errors[] = "wp-content içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz."; } if ($wp_filesystem->is_dir($tempcontentdir)) { $wp_filesystem->rmdir($tempcontentdir); } $tempthemedir = get_template_directory() . "/safirtest"; if ($wp_filesystem->is_dir($tempthemedir)) { $wp_filesystem->rmdir($tempthemedir); } if (!$wp_filesystem->mkdir($tempthemedir)) { $errors[] = "Tema klasörü içerisinde dosya/klasör oluşturulamıyor, yazma izinlerini kontrol ediniz."; } if ($wp_filesystem->is_dir($tempthemedir)) { $wp_filesystem->rmdir($tempthemedir); } $remote_file_url_test = "https://safirtema.com/api/inc/safirtest.zip"; $local_file_test = WP_CONTENT_DIR . "/safirtest.zip"; $local_folder_test = WP_CONTENT_DIR . "/safirzipfolder"; $remoteFile = wp_remote_get($remote_file_url_test, ["timeout" => 300, "stream" => true, "filename" => $local_file_test]); if ($remoteFile["response"]["code"] != 200 || is_wp_error($remoteFile)) { $errors[] = "Uzak siteden veri alınamıyor, sunucunuzdan uzak site bağlantısını kontrol etmesini isteyiniz."; } else { $unzipFile = unzip_file($local_file_test, WP_CONTENT_DIR); $wp_filesystem->delete($local_file_test); if (is_wp_error($unzipFile)) { $errors[] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz."; } $wp_filesystem->delete($local_file_test); if ($wp_filesystem->is_dir($local_folder_test)) { $wp_filesystem->rmdir($local_folder_test); } } if ($dbcheck) { global $wpdb; if (!$wpdb->query("CREATE TABLE IF NOT EXISTS " . $wpdb->prefix . "testing (id mediumint(9) NOT NULL AUTO_INCREMENT, test varchar(255), UNIQUE KEY id (id))")) { $errors[] = "Veritabanı üzerinde tablo oluşturma işlemi yapılamıyor."; } else { if (!$wpdb->query("TRUNCATE TABLE " . $wpdb->prefix . "testing")) { $errors[] = "Veritabanı üzerinde silme işlemi yapılamıyor."; } } $wpdb->query("DROP TABLE " . $wpdb->prefix . "testing"); } return $errors; } function safirMakeRequest($process, $data = []) { $result = ["result" => false]; $token = rand(10000000, 99999999); $tokenField = home_url() . "_" . SAFIR_THEME_SLUG . "_" . $process . "_token"; update_option($tokenField, $token); if (!array_key_exists("license", $data)) { $licField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key"; $data["license"] = get_option($licField); } $data["process"] = $process; $data["url"] = get_template_directory_uri(); $data["theme"] = SAFIR_THEME_SLUG; $data["token"] = $token; $request = wp_remote_get("https://safirtema.com/api/?" . http_build_query($data), ["timeout" => 300]); if (is_wp_error($request)) { $result["error"] = "wp_remote_get çalıştırılamadı."; } else { if ($request["response"]["code"] == 200) { $request = json_decode($request["body"]); if ($request->result) { $result["result"] = true; } else { switch ($request->error) { case "NO_LICENSE": $result["error"] = "Lisans kodunuz geçersiz."; break; case "CANNOT_UNZIP_FILE": $result["error"] = "Zip dosyası açılamadı. Sunucunuzdan ZipArchive Class'ını aktif etmesini isteyiniz."; break; case "SITE_ERROR": $url = get_template_directory_uri() . "/lib/api?process=testing"; $result["error"] = "Siteniz erişilebilir değil. <a target=blank href=" . $url . ">" . $url . "</a> adresinin sorunsuz bir şekilde açıldığından emin olmalısınız. Sayfada bir hata varsa aktivasyon öncesi bunu gidermelisiniz."; break; case "SITE_REQUEST_ERROR": $result["error"] = "Bir bağlantı hatası oluştu. safirtema.com üzerinden sitenize erişim sağlanamıyor. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz."; break; default: $result["error"] = "Beklenmeyen bir hata oluştu. Lütfen daha sonra tekrar deneyiniz."; } } } else { $result["error"] = "Bir bağlantı hatası oluştu. Sunucunuz safirtema.com adresine bağlanamıyor olabilir. Lütfen sunucunuzdan gerekli ayarları yapmasını isteyiniz. ( Hata Kodu:" . $request["response"]["code"] . " )"; } } delete_option($tokenField); return (object) $result; } function safir_theme_update_notification() { echo "\t\t<div class=\"notice notice-info is-dismissible\" style=\"margin-left: 0\">\n\t\t\t<p>"; echo ucfirst(SAFIR_THEME_SLUG); echo " temasında yeni bir güncelleme yapıldı. <a href=\""; echo admin_url("/admin.php?page=safirupdate"); echo "\">Buraya</a> tıklayarak güncelleyebilirsiniz. Güncelleme uyarılarını <a href=\""; echo admin_url("/admin.php?page=safirpanel"); echo "\">Safirpanelden</a> pasif edebilirsiniz.</p>\n\t\t</div>\n\t\t"; } function safirGetUpdateData() { $transientData = get_transient("safirUpdateData_" . SAFIR_THEME_SLUG); if ($transientData === false) { $theme = wp_get_theme(); $activeVersion = $theme->get("Version"); if ($activeVersion == "") { $array["needupdate"] = false; $array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir."; } else { $versionFile = wp_remote_get("https://safirtema.com/api/versions/" . SAFIR_THEME_SLUG . ".php"); if (is_wp_error($versionFile)) { $array["needupdate"] = false; $array["message"] = "Uzak siteden güncelleme bilgisi alınamıyor. Lütfen daha sonra tekrar deneyin."; } else { if ($versionFile["response"]["code"] != 200) { $array["needupdate"] = false; $array["message"] = "Şu anda herhangi bir güncelleme bulunmamaktadır."; } else { $array = json_decode($versionFile["body"], true); $array["activeVersion"] = $activeVersion; $versionCompare = version_compare($array["version"], $activeVersion); switch ($versionCompare) { case 1: $array["needupdate"] = true; break; case 0: $array["needupdate"] = false; $array["message"] = "Şu anda son sürümü kullanıyorsunuz. Herhangi bir güncelleme yapmanız gerekmemektedir. Güncellemeler ara ara kontrol edilir ve eğer safirpanelden pasif etmediyseniz bu sayfaya gelmenize gerek kalmadan admin panelde size uyarı olarak gösterilir."; break; case -1: $array["needupdate"] = false; $array["message"] = "style.css dosyasındaki versiyon bilgileriniz geçersiz gibi görünüyor. Güncellemelerin sağlıklı çalışabilmesi için bu dosyayı editlememeniz gerekmektedir."; break; } } } set_transient("safirUpdateData_" . SAFIR_THEME_SLUG, $array, DAY_IN_SECONDS); } } else { $array = $transientData; } return $array; } function safirupdate_page() { if (!current_user_can("administrator")) { return NULL; } echo "\t <div class=\"safirAdminPage\">\n\t <div class=\"safirHeader\">\n\t <h1>Safir Tema Güncelleme</h1>\n\t </div>\n\t <div class=\"safirInner\">\n\t\t\t\t<div style=\"display: none\">\n\t\t\t\t<textarea class=\"safircode\"></textarea>\n\t\t\t</div>\n\t "; if (!empty($_POST["safir_updating"]) && $_GET["page"] == "safirupdate") { $userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key"; $safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key"; $oldLicense = get_option($userField); $request = safirmakerequest("update"); if ($request->result) { echo "<p><b>Tema başarılı bir şekilde güncellendi!</b></p>"; delete_transient("safirUpdateData_" . SAFIR_THEME_SLUG); } else { echo "<p><b>HATA: " . $request->error . "</b></p>"; } } else { echo "\t <p>Bu sayfada temanızı tek tıkla son sürüme güncelleyebilirsiniz.</p>\n\t "; $safirUpdateData = safirgetupdatedata(); if (!$safirUpdateData["needupdate"]) { exit($safirUpdateData["message"]); } global $wp_filesystem; if (empty($wp_filesystem)) { require_once ABSPATH . "wp-admin/includes/file.php"; WP_Filesystem(); } echo "Güncel tema versiyonunuz <b>" . $safirUpdateData["activeVersion"] . "</b> ve temanızı <b>" . $safirUpdateData["version"] . "</b> versiyonuna güncelleyebilirsiniz."; echo "\t <p>Son versiyonun çıkış tarihi "; echo $safirUpdateData["release"]; echo " ve şu güncellemeler yapıldı:</p>\n\t <ul>\n\t "; foreach ($safirUpdateData["edits"] as $edit) { echo "\t <li>"; echo $edit; echo "</li>\n\t "; } echo "\t </ul>\n\t <p>"; echo $safirUpdateData["desc"]; echo "</p>\n\t "; $phpVersionCompare = version_compare(phpversion(), $safirUpdateData["minphp"]); if ($phpVersionCompare == -1) { echo "\t <p><b>HATA: Son güncellemeyi yapabilmeniz için PHP versiyonunuzun en az "; echo $safirUpdateData["minphp"]; echo " olması gerekmektedir. Halbuki sizin şu anki PHP versiyonunuz: "; echo phpversion(); echo ". Host kontrol panelinizden kendiniz yükseltebilir veya sunucu firmanızdan talep edebilirsiniz.</b></p>\n\t "; exit; } echo "\n\t <b>DİKKAT! Tema güncelleme işleminde yeni dosyalar mevcut tema dosyalarınızın üzerine yazılacağı için eğer tema dosyalarında düzenlemeler yaptıysanız bu düzenlemeler kaybolacaktır. Mevcut temanızı yedekleyerek güncelleme sonrasında, düzenlenmiş dosyaları tekrar uygulayabilirsiniz. Kendi düzenlemelerinizin yer aldığı edits klasörü veya eğer kullanıyorsanız child temanızdaki dosyalar bundan etkilenmeyecektir. Tema dosyalarında bir düzenleme yapmadıysanız herhangi bir sorun olmayacaktır.</b></p>\n\t "; $safirCheckFileDbPermissions = safircheckfiledbpermissions(); if (empty($safirCheckFileDbPermissions)) { echo "\t <p><input type=\"checkbox\" name=\"safirupdate-accept\" id=\"safirupdate-accept\">\n\t <label for=\"safirupdate-accept\">Yukarıdaki açıklamaları okudum ve tema dosyalarımın güncelleneceğini anladım.</label>\n\t </p>\n\t <form id=\"safirupdate-form\" method=\"post\">\n\t <input type=\"hidden\" name=\"safir_updating\" value=\"1\" />\n\t <input type=\"submit\" name=\"submit\" id=\"safirupdate-submit\" disabled class=\"button button-primary\" value=\"Temayı Son Sürüme Güncelle\" />\n\t </form>\n\t <div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t <script>\n\t jQuery(function(\$) {\n\t \$('#safirupdate-accept').change(function() {\n\t \$('#safirupdate-submit').attr('disabled', \$('#safirupdate-accept:checked').length == 0);\n\t });\n\t \$(\"#safirupdate-form\").submit(function() {\n\t \$('#safirupdate-submit, #safirupdate-accept').attr('disabled', 'disabled');\n\t \$(\".submitUyari\").fadeIn();\n\t });\n\t });\n\t </script>\n\t "; } else { echo "\t <h2 class=\"title\">Hata!</h2>\n\t <p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t <ul>\n\t "; foreach ($safirCheckFileDbPermissions as $err) { echo "<li>" . $err . "</li>"; } echo "\t </ul>\n\t "; } echo "\t </div>\n\t </div>\n\t "; } } function safirdemoimport_page() { if (!current_user_can("administrator")) { return NULL; } echo "\t\t<div class=\"safirAdminPage\">\n\t\t\t<div class=\"safirHeader\">\n\t\t\t\t<h1>Safir Demo İçerik</h1>\n\t\t\t</div>\n\t\t\t<div class=\"safirInner\">\n\t\t\t\t"; if (!empty($_POST["safir_importing"]) && $_GET["page"] == "safirdemoimport") { $userField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_key"; $safirField = "safir_" . hash("crc32", safirgetdomain(home_url())) . "_" . SAFIR_THEME_SLUG . "_safir_key"; $oldLicense = get_option($userField); $request = safirmakerequest("demoimport", ["adminuserid" => get_current_user_id()]); if ($request->result) { flush_rewrite_rules(); echo "<p><b>Demo içerik başarılı bir şekilde çekildi!</b></p>"; } else { echo "<p><b>HATA: " . $request->error . "</b></p>"; } } else { echo "\t\t\t\t\t<p>Bu sayfada tek tuş ile demo içerik aktarımı yapabilirsiniz.<br /><br />\n\t\t\t\t\t<b>DİKKAT! Demo aktarım işlemi tüm yazı, sayfa ve ayarlarınızı siler!<br />\n\t\t\t\t\tBu işlemin sıfır bir wordpress kurulumu ile yapılması tavsiye edilir.</b></p>\n\t\t\t\t\t"; $safirCheckFileDbPermissions = safircheckfiledbpermissions(true); if (empty($safirCheckFileDbPermissions)) { echo "\t\t\t\t\t\t<p><input type=\"checkbox\" name=\"safir-demo-import-accept\" id=\"safir-demo-import-accept\">\n\t\t\t\t\t\t\t<label for=\"safir-demo-import-accept\">Yukarıdaki açıklamaları okudum ve tüm içeriklerimin silineceğini anladım.</label>\n\t\t\t\t\t\t</p>\n\t\t\t\t\t\t<form id=\"safir-demo-import-form\" method=\"post\">\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"safir_importing\" value=\"1\" />\n\t\t\t\t\t\t\t<input type=\"submit\" name=\"submit\" id=\"safir-demo-import-submit\" disabled class=\"button button-primary\" value=\"Tüm Verileri Sil ve Demo İçerikleri Getir!\" />\n\t\t\t\t\t\t</form>\n\t\t\t\t\t\t<div class=\"submitUyari\" style=\"display:none; margin: 20px 0; font-size: 16px;\">Bu işlem, sunucunuzun hızına göre birkaç dakika sürebilmektedir, lütfen sayfayı kapatmayın.</div>\n\t\t\t\t\t\t<script>\n\t\t\t\t\t\tjQuery(function(\$) {\n\t\t\t\t\t\t\t\$('#safir-demo-import-accept').change(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit').attr('disabled', \$('#safir-demo-import-accept:checked').length == 0);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\$(\"#safir-demo-import-form\").submit(function() {\n\t\t\t\t\t\t\t\t\$('#safir-demo-import-submit, #safir-demo-import-accept').attr('disabled', 'disabled');\n\t\t\t\t\t\t\t\t\$(\".submitUyari\").fadeIn();\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\t</script>\n\t\t\t\t\t\t"; } else { echo "\t\t\t\t\t\t<h2 class=\"title\">Hata!</h2>\n\t\t\t\t\t\t<p><b>Bu sistemin çalışabilmesi için sisteminizde bazı özellikler gerekmektedir.</b></p>\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t"; foreach ($safirCheckFileDbPermissions as $err) { echo "<li>" . $err . "</li>"; } echo "\t\t\t\t\t\t</ul>\n\t\t\t\t\t\t"; } echo "\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t"; } } function safirAjaxRequest() { if (!wp_verify_nonce($_REQUEST["nonce"], "safir_ajax_nonce")) { exit("HATA."); } include_once get_template_directory() . "/lib/safirtema/" . $_POST["filename"] . ".php"; if (!empty($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") { $result = json_encode($result); echo $result; } else { header("Location: " . $_SERVER["HTTP_REFERER"]); } exit; } ?>
teşekkürler![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
teşekkürler![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***
Aktiflik
Seviye
Deneyim
Elinize sağlık saolun![]()
![]()
Temanın öne çıkan özellikleri
- SEO uyumlu hatasız kodlama
- Sınırsız RENK Seçeneği!
- Infinite Scroll Desteği
- Temaya Özel Bileşenler
- HTML & CSS Valid
- Dahili Cache Sistemi
- Dahili Dil Desteği (po)
- Dahili Lazy Load Desteği
- Özel Tasarım İletişim Sayfası
- Modern Mobil Tema Entegresi
- Tek Tıkla Demo İçerik Kurulumu
- Sürükle & Bırak Şeklinde Tasarım
- Biyografi Şablonu, Sitene Ekle Özelliği
- Hava Durumu, Döviz, Burçlar, Puan Durumu
Tema Tanıtım Görselleri:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Sayfa Demoları:
Renk ve İkon Yönetimi:
Temada sınırsız renk seçeneği bulunmaktadır. Ek olarak sidebar özel menü, üst menü, anamenü ve footer 1. menüde kullanabileceğiniz 110 adet ikon bulunmakta. Kullanılabilecek ikonlar:
İKONLAR
Burada bulunan ikonlara kendi svg ikonlarınızı da ekleyebilirsiniz.
Tek Tıkla Demo Kurulumu:
Yeni kurduğunuz bir wordpress sitesinde tek tıkla dakikalar içinde sitenizi birebir demodaki hale getirebileceğiniz bir sistem hazırladık. İşte videosu:
Reklam Yönetimi:
Temada bulunan bütün reklam alanları tema panelinden yönetilebilmektedir. Ayrıca masaüstü ve mobilde ayrı reklamlar gösterebiliyorsunuz. Ya da belirli bir reklamı sadece masaüstü ya da sadece mobilde gösterebiliyorsunuz. Bunu yanı sıra, slider 1 bileşeninde slider arasına da opsiyonel bir reklam ekleyebilirsiniz. Ek olarak reklam bileşeni ile anasayfa ve yan sidebarlarda istediğiniz yere reklam ekleyebilirsiniz. Tekil sayfalar istediğiniz sıradaki paragraftan sonra opsiyonel bir reklam da ekleyebilirsiniz.
Videolar
Temanın bazı özellikleri ile ilgili aşağıdaki videoları izleyebilirsiniz:
Mobil Ayarlar
Neva Wordpress Teması full responsive olarak tasarlanmıştır. Yani temayı tüm mobil cihazlarda sorunsuzca görüntüleyebilirsiniz. Buna ek olarak temanın mobil versiyonu için ek ayarlar yapabilmektesiniz. Örneğin mobil menüsünü masaüstü menüsünden ayrı yapabilirsiniz. Mobil reklamları ayrı yönetebilir ve mobilde gereksiz sayılabilecek bazı bölümleri pasif edebilirsiniz.
Ekstra Bilgiler
Temada bulunan tüm özellikleri demoyu detaylı inceleyerek bulabilirsiniz.
- Hava durumu bölümünde varsayılan şehir değiştirilebilmektedir.
- Burç sayfalarındaki bilgiler otomatik çekilmektedir.
- Anasayfa bileşen destekli olduğundan tüm tasarımı kendi isteğinize göre oluşturabilirsiniz.
- 3 adet yazı listeleme şeklinden istediğinizi tema ayarlarından aktif edebilirsiniz.
- Mobil görünümü ekranı daraltarak değil gerçek bir mobil cihaz veya emülatörle test ediniz.
v2 GÜNCELLEMELERİ
DEMO: https://safirdemo.com/neva/
- Admin panelden tema güncelleyebilme özelliği
- Yenilenmiş safirpanel, daha kolay kod girişi [ Sağdaki admin demodan görebilirsiniz ]
- Dahili bakım modu özelliği [ Demo ]
- Güncellemelerden etkilenmeyen edits klasörü
- Google News butonu
- Yazı sonunda yazar/editör bilgisi
*** Gizli metin: alıntı yapılamaz. ***