WordPress Panosuna Özel RSS Beslemesi Ekleme

WordPress Panosuna Özel RSS Beslemesi Ekleme

İnternet harika kaynaklarla doludur ve her şeye bir göz atmak zordur. Elbette eğilimleri veya RSS okuyucu yazılımlarını takip etmek için Twitter var, ama benim gibi çok meşgulsün, bazen aynı anda 20 yazılımın açılması can sıkıcı. Bu yüzden bu yayınlara hızlı bir şekilde erişmek için WordPress kontrol panelimi küresel bir platform olarak kullanmaya karar verdim. Bugün paylaşmak istediğim bir örnek, WordPress panosunda özel bir RSS meta kutusu nasıl oluşturulacağı.


Yaratacağımızın nihai sonucu:

add-a-özel-rss-pano-METABOX

Adım 1: Eklenti

Bu meta kutuyu eklemek için bir eklenti oluşturmamız gerekiyor. Bu nedenle, wp-content / plugins / dizininde “my-dashboard-metaboxes” adlı yeni bir klasör oluşturun ve yeni klasör içinde my-dashboard-metaboxes.php adlı bir dosya oluşturun. Bu dosya ana eklenti dosyası olacaktır. Ana düzenleyicinize açın. Aşağıdaki kod, eklentiyi oluşturacak koddur. Burada gerçekten karmaşık bir şey yok:

Adım 2: Meta Kutuyu Kaydetme

Artık boş bir eklentimiz var (yani hiçbir şey yapmayan bir eklenti), WordPress panosunda görüntülenmesi için en az bir metabox kaydetmemiz gerekiyor. Bunu yapmak için, “wp_dashboard_setupKanca. Bu işlevi “rc_mdm_register_widgets ()” olarak adlandıralım. Bu işlevin içinde WordPress'e yeni bir metabox eklemek istediğimizi anlatmamız gerekiyor ve bu, “wp_add_dashboard_widget ()”İşlevini kullanın. Bu işlev 4 parametre kabul eder:

1 - $ widget_id (tamsayı) (gerekli) widget'ınız için tanımlayıcı bir bilgi. Bu, widget dizisinde css sınıfı ve anahtarı olarak kullanılacaktır.
Varsayılan: Yok

2 - $ widget_name (dize) (gerekli) bu, widget'inizin başlığında göstereceği addır.
Varsayılan: Yok

3 - $ geri arama (string) (zorunlu) Widget'ınızın gerçek içeriğini görüntüleyecek oluşturduğunuz bir işlevin adı.
Varsayılan: Yok

4 - $ control_callback (string) (isteğe bağlı) Widget seçenekleri (yapılandırma) formlarının gönderilmesini işleyecek ve ayrıca form öğelerini görüntüleyecek oluşturduğunuz bir işlevin adı.

Burada önemli olan üçüncü parametre, meta kutuya yüklenecek işlevleri tanımlayan parametredir. Bu örnekte adı "rc_mdm_create_my_rss_box ()".

/ **
* Tüm gösterge tablosu meta kutularını kaydedin
*
* @access public
* @since 1.0
* @return geçersiz
* /

işlev rc_mdm_register_widgets () {
global $ wp_meta_boxes;

wp_add_dashboard_widget ('widget_freelanceswitch', __ ('RSS Beslemelerim', 'rc_mdm'), 'rc_mdm_create_my_rss_box');
}
add_action ('wp_dashboard_setup', 'rc_mdm_register_widgets');

3. Adım: Meta Kutu İçeriği

Eklentiyi etkinleştirir ve WordPress kontrol panelinize giderseniz yeni bir boş meta kutu görmelisiniz. Şimdi içeriğini doldurmamız gerekiyor. Bu işlev için önemli olan şeyler, "fetch_feed ()" işlevini kullanmasına izin verilecek WordPress yerleşik "feed.php" dosyasını eklemektir. “Fetch_rss ()”, “get_rss ()” ve “wp_rss ()” kullanımdan kaldırıldığı için “fetch_feed ()” kullandığımızı lütfen unutmayın. Bir kez, doğrudan kod içindeki tüm yorumları dahil ettim ama metabox işlevi içinde kullandığım bazı güzel özelliklere dikkatinizi çekmek istiyorum.

Her şeyden önce “FETCH_FEED ()”İşlevini kullanın. Bu, yayın içeriğini almak ve ayrıştırmak için kullanılır. Bu işlev, SimplePie sınıfı, böylece içinde bulunan hemen hemen tüm işlevlerden yararlanabilirsiniz..

Ardından, zamanı “" olarak görüntülemek için kullanılan "human_time_diff ()" fonksiyonuna sahibiz.human_time_diff ()“, Örneğin“ 2 saat önce ”,“ 4 gün önce ”vb. Gibi bir şeyi görüntülemek ... bu bir WordPress işlevidir.

Ve sonunda “wp_html_excerpt ()”İçeriklerini kısaltmak için.

Diğer tüm işlevler WordPress işlevlerini iyi bilir veya Simple Pie sınıfına dahildir.

İşte kod:

/ **
* RSS meta kutusunu oluşturur
*
* @access public
* @since 1.0
* @return geçersiz
* /

işlev rc_mdm_create_my_rss_box () {

// RSS Beslemelerini Alın
include_once (ABSPATH. WPINC. '/feed.php');

// Feed'ler listem (kendi RSS feed'lerinizin URL'lerini ekleyin)
$ my_feeds = dizi (
'Http://feeds.feedburner.com/FSAllJobs',
'Http://www.wphired.com/feed/?post_type=job_listing'
);

// Yayınlarda Döngü
foreach ($ feed_ $ $ feed olarak):

// Belirtilen feed kaynağından SimplePie besleme nesnesi alma.
$ rss = fetch_feed ($ yayın);
if (! is_wp_error ($ rss)): // Nesnenin doğru oluşturulduğunu kontrol eder
// Toplam kaç öğe olduğunu bulun ve bir sınır seçin
$ maxitems = $ rss-> get_item_quantity (3);

// 0 öğesinden (ilk öğe) başlayarak tüm öğelerin bir dizisini oluşturun.
$ rss_items = $ rss-> get_items (0, $ maxitems);

// RSS başlığı al
$ rss_title = 'get_permalink (). '"target =" _ blank ">'. strtoupper ($ rss-> get_title ()). '';
endif;

// Kapsayıcıyı görüntüle
Eko '
'; Eko ''$ Rss_title.''; Eko '
'; // içindeki öğeleri listelemeye başlar
    etiket Eko '
      '; // Öğeleri kontrol et if ($ maxitems == 0) { Eko '
    • '.__ (' Öğe yok ',' rc_mdm ').'.
    • '; } Başka { // Her bir feed öğesini döngüye sokun ve her bir öğeyi köprü olarak görüntüleyin. foreach ($ rss_items $ öğe olarak): // İnsan olmayan tarihi görüntülemek için aşağıdaki açıklama satırı // $ item_date = $ item-> get_date (get_option ('date_format'). '@' .get_option ('time_format')); // İnsanlık tarihini al (insanlık dışı tarih kullanmak istiyorsan yorum yap) $ item_date = human_time_diff ($ item-> get_date ('U'), geçerli_saat ('zaman damgası')). ' '.__ (' önce ',' rc_mdm '); // içinde bir öğe içeriği görüntülemeye başlayın
    • etiket Eko '
    • '; // öğe bağlantısı oluştur Eko 'get_permalink ()). '"title ="'. $ item_date. '">'; // Ürün başlığını al echo esc_html ($ item-> get_title ()); Eko ''; // Görüntüleme tarihi Eko ' 'İtem_date, $.'
      '; // Öğe içeriği al $ content = $ item-> get_content (); // İçeriği kısalt $ content = wp_html_excerpt ($ content, 120). '[...]'; // İçeriği görüntüle echo $ içeriği; // Son
    • etiket Eko '
    • '; endforeach; } // Son
        etiket Eko '
'; endforeach; // Her bir özet akışını sonlandır }

15. satırda, istediğiniz kadar yayın koyabileceğiniz bir dizi var. 27 satırında görüntülenecek her bir besleme öğesinin sayısını da tanımlayabilirsiniz. Son olarak, 50 ve 54 satırlarında, bir insan veya normal bir tarih görüntülemeyi seçebilirsiniz. Sana kalmış.

Sonuç

Tamam, bu yüzden basit bir meta kutu oluşturduk, ancak artık kendi içeriğinizle kendi meta kutularınızı oluşturmak için temel bilgilere sahipsiniz. Ayrıca, varsayılan WordPress meta kutularını kaldırabilir ve gösterge tablosu widget'ları API'sı, seni her zaman olduğu gibi, kodeks.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map