2016-03-24 7 views
0

Özel bir PHP betiği oluşturmak istiyorum, wordpress için bir mesaj yazabilirim. İşteWordPress PHP ile yazı oluştur

resmi sayfasından kodum, ama onun çalışmıyor:

require("wp-includes/post.php"); 

// Create post object 
$my_post = array(
    'post_title' => "mytitle", 
    'post_content' => "mycontent", 
    'post_status' => 'publish', 
    'post_author' => 1, 
    'post_category' => array(1) 
); 

wp_insert_post($my_post); 

hatadır:

Fatal error: Call to undefined function get_current_user_id() in /home/MyUser/public_html/wp-includes/post.php on line 2897

Ne im yanlış yapıyor?

+0

Tam olarak ne diyor: Kullanılamayan bir işlevi çağırıyorsunuz. Yani '' function_get_user_id() 'asla yüklenmez. – Michel

+0

Kullandığınız belge sayfasına bir bağlantı sağlayabilir misiniz? Bir dosya ya da ihtiyacınız olan bazı dosyaları eksik sanırım() –

+0

Bunu WordPress kurulumunuzun dışında mı yapıyorsunuz? Herhangi bir WP dosyasına gerek duymalı/gerektirmemelisiniz. – ericwenn

cevap

0

Sorun, muhtemelen arka uç kullanıcı olarak giriş yapmadığınızdır. Komut bir arka uç kullanıcı kimliği almaya çalışıyor. Bir gönderi oluşturmak için giriş yapmış bir kullanıcı olmalı. Her gönderinin bir userid'e ihtiyacı vardır, bu mesajın yazarını belirlemek için kullanılır.

Ayrıca bu betiği bir eklenti veya dış wordpress içinde de çalıştırmaya mı çalışıyorsunuz?

+0

Yönetici olarak oturum açtım (yazar kimliği = 1) ve bu komut dosyası session_start(); – moreasd