• 17-01-2013, 21:16:03
    #1
    Merhaba arkadaşlar. WordPress üzerinde en çok okunan yazıları kendi yazdığım kodlarla listelemeye çalışıyorum. order => DESC olarak WP_Query içine girmeme rağmen büyükten küçüğe sıralamıyor. Onun yerine sıralamayı şöyle yapıyor.

    Diyelim x yazısının okunma sayısı 1234 y sayısının okunma sayısı 933.

    Normalde x yazısı y yazısından üstte olması gerekir. Ama y yazısını üste koyuyor. Çünkü sıralamaya soldaki karakterin büyüklüğünden başlıyor. En baştaki rakamlar eşitse sonrakine bakarak devam ediyor. Bu yüzden de 9 ile başlayan yazılarım en çok okunan olarak görünüyor Bu sorunu halletmeme yardımcı olursanız sevinirim

    Kodlar şu şekilde.

    $popularpost = new WP_Query( array( 'posts_per_page' => 5, 'meta_key' => 'views', 'orderby' => 'views', 'order' => 'DESC'  ) );
  • 18-01-2013, 00:19:10
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    'views' sutununu varchar yapmis olabilirmisin?
  • 18-01-2013, 00:34:54
    #3
    Üyeliği durduruldu
    Asc yaz bi de oraya bakim bu arada views eğer sayıysa sayının büyüklüğüne bakar yazının değil.
  • 18-01-2013, 10:16:28
    #4
    kalitehost adlı üyeden alıntı: mesajı görüntüle
    'views' sutununu varchar yapmis olabilirmisin?
    WapZap adlı üyeden alıntı: mesajı görüntüle
    Asc yaz bi de oraya bakim bu arada views eğer sayıysa sayının büyüklüğüne bakar yazının değil.
    views bir sütun değil işte hocam. tablo yapısı şu şekilde:
    meta_id (bigint)
    post_id (bigint)
    meta_key (varchar)
    meta_value (longtext)

    meta_value içinde yazı olan da var, rakam olan da var.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 10:16:28 -->-> Daha önceki mesaj 09:48:27 --

    Sorunu hallettim arkadaşlar. Sorgumu şu şekilde düzenledim:

    $popularpost = new WP_Query( array( 'posts_per_page' => 5, 'meta_key' => 'views', 'orderby' => 'meta_value_num', 'order' => 'DESC'  ) );