• 12-06-2022, 20:13:52
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba,
    Makale içerisinde tarih kullanmak istiyorum boyun için bir shortcode ekledim çalışıyor ama tek sıkıntı Türkçe olarak yansımıyor.
    Çıkan sonuç :
    Sunday, June 12, 2022

    sitede makale paylaşım tarihleri Türkçe çıkıyor
    Shorcode olan kısmıda nasıl Türkçe yapabilirim




    add_shortcode( 'tarih', function() {
    return date('l, F j, Y');
    } );
    add_filter( 'the_title', 'do_shortcode' );
    add_filter( 'the_seo_framework_title_from_custom_field', 'do_shortcode' );
    add_filter( 'the_seo_framework_title_from_generation', 'do_shortcode' );
  • Kabul Edilen Cevap
    • 0 Beğeni
            
      function turkcetarih_formati($format, $datetime = 'now'){      
          date_default_timezone_set('Europe/Istanbul');      
          $z = date("$format", strtotime($datetime));      
          $gun_dizi = array(      
              'Monday'    => 'Pazartesi',      
              'Tuesday'   => 'Salı',      
              'Wednesday' => 'Çarşamba',      
              'Thursday'  => 'Perşembe',      
              'Friday'    => 'Cuma',      
              'Saturday'  => 'Cumartesi',      
              'Sunday'    => 'Pazar',      
              'January'   => 'Ocak',      
              'February'  => 'Şubat',      
              'March'     => 'Mart',      
              'April'     => 'Nisan',      
              'May'       => 'Mayıs',      
              'June'      => 'Haziran',      
              'July'      => 'Temmuz',      
              'August'    => 'Ağustos',      
              'September' => 'Eylül',      
              'October'   => 'Ekim',      
              'November'  => 'Kasım',      
              'December'  => 'Aralık',      
              'Mon'       => 'Pts',      
              'Tue'       => 'Sal',      
              'Wed'       => 'Çar',      
              'Thu'       => 'Per',      
              'Fri'       => 'Cum',      
              'Sat'       => 'Cts',      
              'Sun'       => 'Paz',      
              'Jan'       => 'Oca',      
              'Feb'       => 'Şub',      
              'Mar'       => 'Mar',      
              'Apr'       => 'Nis',      
              'Jun'       => 'Haz',      
              'Jul'       => 'Tem',      
              'Aug'       => 'Ağu',      
              'Sep'       => 'Eyl',      
              'Oct'       => 'Eki',      
              'Nov'       => 'Kas',      
              'Dec'       => 'Ara',      
          );      
          foreach($gun_dizi as $en => $tr){      
              $z = str_replace($en, $tr, $z);      
          }      
          if(strpos($z, 'Mayıs') !== false && strpos($format, 'F') === false) $z = str_replace('Mayıs', 'May', $z);      
          return $z. ' '.date('H:i:s');      
      }
      yukardaki fonksiyonu functions.php ekleyin ardından

      add_shortcode( 'tarih', function() {
            
                  $tarih = date('d-m-Y');          
       return  turkcetarih_formati('j F Y , l',$tarih);
      
      } );
      add_filter( 'the_title', 'do_shortcode' );
      add_filter( 'the_seo_framework_title_from_custom_field', 'do_shortcode' );
      add_filter( 'the_seo_framework_title_from_generation', 'do_shortcode' );
      Şeklinde değişin denemedim çalışması gerekiyor.

      Sonucu yazarsanız ona göre kodu revize ederiz duruma göre.
  • 12-06-2022, 20:28:37
    #2
    Bu cevap, konu sahibi tarafından kabul edilebilir bir cevap olarak işaretlendi.
          
    function turkcetarih_formati($format, $datetime = 'now'){      
        date_default_timezone_set('Europe/Istanbul');      
        $z = date("$format", strtotime($datetime));      
        $gun_dizi = array(      
            'Monday'    => 'Pazartesi',      
            'Tuesday'   => 'Salı',      
            'Wednesday' => 'Çarşamba',      
            'Thursday'  => 'Perşembe',      
            'Friday'    => 'Cuma',      
            'Saturday'  => 'Cumartesi',      
            'Sunday'    => 'Pazar',      
            'January'   => 'Ocak',      
            'February'  => 'Şubat',      
            'March'     => 'Mart',      
            'April'     => 'Nisan',      
            'May'       => 'Mayıs',      
            'June'      => 'Haziran',      
            'July'      => 'Temmuz',      
            'August'    => 'Ağustos',      
            'September' => 'Eylül',      
            'October'   => 'Ekim',      
            'November'  => 'Kasım',      
            'December'  => 'Aralık',      
            'Mon'       => 'Pts',      
            'Tue'       => 'Sal',      
            'Wed'       => 'Çar',      
            'Thu'       => 'Per',      
            'Fri'       => 'Cum',      
            'Sat'       => 'Cts',      
            'Sun'       => 'Paz',      
            'Jan'       => 'Oca',      
            'Feb'       => 'Şub',      
            'Mar'       => 'Mar',      
            'Apr'       => 'Nis',      
            'Jun'       => 'Haz',      
            'Jul'       => 'Tem',      
            'Aug'       => 'Ağu',      
            'Sep'       => 'Eyl',      
            'Oct'       => 'Eki',      
            'Nov'       => 'Kas',      
            'Dec'       => 'Ara',      
        );      
        foreach($gun_dizi as $en => $tr){      
            $z = str_replace($en, $tr, $z);      
        }      
        if(strpos($z, 'Mayıs') !== false && strpos($format, 'F') === false) $z = str_replace('Mayıs', 'May', $z);      
        return $z. ' '.date('H:i:s');      
    }
    yukardaki fonksiyonu functions.php ekleyin ardından

    add_shortcode( 'tarih', function() {
          
                $tarih = date('d-m-Y');          
     return  turkcetarih_formati('j F Y , l',$tarih);
    
    } );
    add_filter( 'the_title', 'do_shortcode' );
    add_filter( 'the_seo_framework_title_from_custom_field', 'do_shortcode' );
    add_filter( 'the_seo_framework_title_from_generation', 'do_shortcode' );
    Şeklinde değişin denemedim çalışması gerekiyor.

    Sonucu yazarsanız ona göre kodu revize ederiz duruma göre.
  • 12-06-2022, 21:39:21
    #3
    harew1 adlı üyeden alıntı: mesajı görüntüle
          
    function turkcetarih_formati($format, $datetime = 'now'){      
        date_default_timezone_set('Europe/Istanbul');      
        $z = date("$format", strtotime($datetime));      
        $gun_dizi = array(      
            'Monday'    => 'Pazartesi',      
            'Tuesday'   => 'Salı',      
            'Wednesday' => 'Çarşamba',      
            'Thursday'  => 'Perşembe',      
            'Friday'    => 'Cuma',      
            'Saturday'  => 'Cumartesi',      
            'Sunday'    => 'Pazar',      
            'January'   => 'Ocak',      
            'February'  => 'Şubat',      
            'March'     => 'Mart',      
            'April'     => 'Nisan',      
            'May'       => 'Mayıs',      
            'June'      => 'Haziran',      
            'July'      => 'Temmuz',      
            'August'    => 'Ağustos',      
            'September' => 'Eylül',      
            'October'   => 'Ekim',      
            'November'  => 'Kasım',      
            'December'  => 'Aralık',      
            'Mon'       => 'Pts',      
            'Tue'       => 'Sal',      
            'Wed'       => 'Çar',      
            'Thu'       => 'Per',      
            'Fri'       => 'Cum',      
            'Sat'       => 'Cts',      
            'Sun'       => 'Paz',      
            'Jan'       => 'Oca',      
            'Feb'       => 'Şub',      
            'Mar'       => 'Mar',      
            'Apr'       => 'Nis',      
            'Jun'       => 'Haz',      
            'Jul'       => 'Tem',      
            'Aug'       => 'Ağu',      
            'Sep'       => 'Eyl',      
            'Oct'       => 'Eki',      
            'Nov'       => 'Kas',      
            'Dec'       => 'Ara',      
        );      
        foreach($gun_dizi as $en => $tr){      
            $z = str_replace($en, $tr, $z);      
        }      
        if(strpos($z, 'Mayıs') !== false && strpos($format, 'F') === false) $z = str_replace('Mayıs', 'May', $z);      
        return $z. ' '.date('H:i:s');      
    }
    yukardaki fonksiyonu functions.php ekleyin ardından

    add_shortcode( 'tarih', function() {
          
                $tarih = date('d-m-Y');          
     return  turkcetarih_formati('j F Y , l',$tarih);
    
    } );
    add_filter( 'the_title', 'do_shortcode' );
    add_filter( 'the_seo_framework_title_from_custom_field', 'do_shortcode' );
    add_filter( 'the_seo_framework_title_from_generation', 'do_shortcode' );
    Şeklinde değişin denemedim çalışması gerekiyor.

    Sonucu yazarsanız ona göre kodu revize ederiz duruma göre.
    teşekkür ederim çalıştı hocam
    Çıkan format
    12 Haziran 2022 , Pazar 21:37:46
    Saati iptal etmeye çalıştım olmadı nasıl yapabilirim
  • 12-06-2022, 21:50:46
    #4
    KingVenom adlı üyeden alıntı: mesajı görüntüle
    teşekkür ederim çalıştı hocam
    Çıkan format
    12 Haziran 2022 , Pazar 21:37:46
    Saati iptal etmeye çalıştım olmadı nasıl yapabilirim
    Verdiğim fonksiyonda alttaki kodu
        if(strpos($z, 'Mayıs') !== false && strpos($format, 'F') === false) $z = str_replace('Mayıs', 'May', $z);
        return $z. ' '.date('H:i:s');
    Şu şekilde değişin

        if(strpos($z, 'Mayıs') !== false && strpos($format, 'F') === false) $z = str_replace('Mayıs', 'May', $z);
        return $z;
    Kod çıktısı : 12 Haziran 2022 , Pazar

    Alıntı
    return turkcetarih_formati('j F Y , l',$tarih);
    kodunu alttaki gibi yaparsanız.

    Alıntı
    return turkcetarih_formati('j F Y ',$tarih);
    Kod çıktısı : 12 Haziran 2022

    hangisi işinize yarıyorsa o şekilde kullanırsınız.