כיצד להוסיף עדכון RSS מותאם אישית בלוח המחוונים של וורדפרס

הוסף עדכון RSS מותאם אישית בלוח המחוונים של וורדפרס

האינטרנט מלא משאב נהדר וקשה לבדוק את הכל. כמובן שיש טוויטר כדי לפקוח על נטיות, או תוכנות לקורא RSS, אבל אתה כמוני עסוק מאוד, לפעמים מעצבן שנפתחו 20 תוכנות בו זמנית. זו הסיבה שהחלטתי להשתמש בלוח המחוונים של וורדפרס כפלטפורמה גלובלית כדי לקבל גישה מהירה לעדכונים האלה. דוגמה שאני רוצה לשתף היום היא כיצד ליצור מטאבוקס RSS בהתאמה אישית בלוח המחוונים של וורדפרס.


הנה התוצאה הסופית של מה שאנחנו הולכים ליצור:

add-a-custom-rss-dashboard-metabox

שלב 1: התוסף

כדי להוסיף מטאבוקס זה עלינו ליצור תוסף. אז פשוט צור תיקיה חדשה בשם “my-dashboard-metaboxes” ב wp-content / plugins / ובתיקיה החדשה, צור קובץ בשם my-dashboard-metaboxes.php. קובץ זה יהיה קובץ התוסף הראשי. פתח אותו בעורך הראשי שלך. הקוד שלהלן הוא הקוד שייצור את התוסף. שום דבר לא מורכב כאן:

שלב 2: רישום ה- Metabox

עכשיו כשיש לנו פלאגין ריק (זאת אומרת תוסף שלא עושה כלום), עלינו לרשום לפחות מטאבוקס שיוצג בלוח המחוונים של וורדפרס. לשם כך עלינו ליצור פונקציה חדשה שתחבר את ה- "wp_dashboard_setup" וו. בואו נקרא לפונקציה זו "rc_mdm_register_widgets ()". בתוך פונקציה זו עלינו לספר לוורדפרס כי אנו רוצים להוסיף מטאבוקס חדש, וזו המטרה של "wp_add_dashboard_widget ()פונקציה. פונקציה זו מקבלת 4 פרמטרים:

1 - $ widget_id (מספר שלם) (חובה) שבלול מזהה עבור הווידג'ט שלך. זה ישמש ככיתה css שלו והמפתח שלו במערך הווידג'טים.
ברירת מחדל: אין

שם widget מסוג 2 - $ (מחרוזת) (חובה) זהו השם שהווידג'ט שלך יציג בכותרת שלו.
ברירת מחדל: אין

3 - התקשרות חוזרת של $ (מחרוזת) (חובה) שם הפונקציה שתיצור שתציג את התוכן בפועל של הווידג'ט שלך.
ברירת מחדל: אין

4 - $ control_callback (מחרוזת) (לא חובה) שם הפונקציה שתיצור שתטפל בהגשת טפסים של אפשרויות ווידג'ט (תצורה) ותציג גם את אלמנטים בטופס.

מה שחשוב כאן הוא הפרמטר השלישי, זה זה שמגדיר את הפונקציות שיטענו במטאבוקס. בדוגמה זו זה נקרא "rc_mdm_create_my_rss_box ()".

/ **
* רשום את כל metaboxs לוח המחוונים
*
* @ גישה ציבורית
* @ Prince 1.0
* @ חזרה לבטל
* /

פונקציה rc_mdm_register_widgets () {
$ wp_meta_boxes גלובלי;

wp_add_dashboard_widget ('widget_freelanceswitch', __ ('הזנות ה- RSS שלי', 'rc_mdm'), 'rc_mdm_create_my_rss_box');
}
add_action ('wp_dashboard_setup', 'rc_mdm_register_widgets');

שלב 3: תוכן ה- Metabox

אם תפעיל את התוסף ותעבור ללוח המחוונים של וורדפרס, עליך לראות מטאבוקס ריק חדש. כעת עלינו למלא את תוכנו. דברים חשובים לפונקציה זו היא לכלול את קובץ ה- “feed.php” המובנה של וורדפרס, שיורשה להשתמש בפונקציה “fetch_feed ()”. שימו לב שאנו משתמשים ב" fetch_feed () "מכיוון ש" fetch_rss ()", "get_rss ()" ו- "wp_rss ()" הוצאו משימוש. לשם שינוי כללתי את כל התגובות בקוד ישירות, אך ברצוני להפנות את תשומת ליבך לכמה תכונות נחמדות בהן אני משתמש בפונקציית metabox..

קודם כל יש את "fetch_feed ()פונקציה. זה משמש כדי לקבל ולנתח את תוכן הזנות. פונקציה זו משתמשת ב- כיתת SimplePie, כך שתוכלו לנצל כמעט את כל הפונקציות הכלולות בה.

לאחר מכן יש לנו את הפונקציה "human_time_diff ()" המשמשת להצגת השעה כ- "human_time_diff ()", למשל להצגת משהו כמו" לפני שעתיים "," לפני 4 ימים "וכו '... זו פונקצית וורדפרס.

ולבסוף יש לנו "wp_html_excerpt ()"כדי לקצר כל תוכן עדכון.

כל שאר הפונקציות ידועות היטב על פונקציות וורדפרס או כלולות בכיתה Simple Pie.

הנה הקוד:

/ **
* יוצר metabox RSS
*
* @ גישה ציבורית
* @ Prince 1.0
* @ חזרה לבטל
* /

פונקציה rc_mdm_create_my_rss_box () {

// קבל עדכוני RSS
include_once (ABSPATH. WPINC. '/feed.php');

// רשימת ההזנות שלי (הוסף כתובות אתר משלך להזנות RSS)
$ my_feeds = מערך (
'http://feeds.feedburner.com/FSAllJobs',
'http://www.wphired.com/feed/?post_type=job_listing'
);

// לולאה דרך הזנות
foreach ($ my_feeds כ- $ feed):

// קבל אובייקט הזנה של SimplePie ממקור העדכון שצוין.
$ rss = fetch_feed ($ feed);
if (! is_wp_error ($ rss)): // בודק שהאובייקט נוצר נכון
// גלה את מספר הפריטים הכולל שיש ולבחור מגבלה
$ maxitems = $ rss-> get_item_quantity (3);

// בנה מערך של כל הפריטים, החל באלמנט 0 (אלמנט ראשון).
$ rss_items = $ rss-> get_items (0, $ maxitems);

// קבל כותר RSS
$ rss_title = 'get_permalink (). '"target =" _ blank ">'. strtoupper ($ rss-> get_title ()). '';
אנדף;

// הצג את המיכל
הד '
'; הד ''. $ rss_title.''; הד '
'; // מתחיל רשימת פריטים בתוך
    תגית הד '
      '; // בדוק פריטים אם ($ maxitems == 0) { הד '
    • '.__ (' אין פריט ',' rc_mdm ').'.
    • '; } אחרת { // עיין בכל פריט עדכון והצג כל פריט כהיפר-קישור. foreach ($ rss_items כפריט $): // קו אי-קומפרס למטה להצגת תאריך לא אנושי // $ item_date = $ item-> get_date (get_option ('date_format'). '@' .get_option ('time_format')); // קבל תאריך אנושי (הערה אם ברצונך להשתמש בתאריך שאינו אנושי) $ item_date = human_time_diff ($ item-> get_date ('U'), current_time ('חותמת זמן')). ' '.__ (' לפני ',' rc_mdm '); // התחל להציג תוכן פריט בתוך א
    • תגית הד '
    • '; // צור קישור פריט הד 'get_permalink ()). '"title ="'. $ item_date. '">'; // קבל את כותרת הפריט הד esc_html ($ פריט-> get_title ()); הד ''; // תאריך תצוגה הד ' '. $ item_date.'
      '; // קבל תוכן פריט $ $ תוכן = $ פריט-> get_content (); // קיצור תוכן $ $ תוכן = wp_html_excerpt ($ $, 120). '[...]'; // הצגת תוכן הד תוכן $; // סוף
    • תגית הד '
    • '; סוף קצה; } // סוף
        תגית הד '
'; סוף קצה; // סוף סיום הזנה }

בשורה 15 יש מערך שבו אתה יכול להכניס עדכונים רבים ככל שתרצה. ניתן גם להגדיר את המספר של כל פריטי ההזנה שיוצגו בשורה 27. לבסוף בשורה 50 ו -54 תוכלו לבחור להציג תאריך אנושי או תאריך רגיל. זה תלוי בך.

סיכום

אוקיי, אז יצרנו מטאבוקס פשוט, אך כעת יש לך את היסודות ליצור מטבוקסים בעלי תוכן משלך. באפשרותך גם להסיר מטאבוקס של ברירת המחדל של וורדפרס, ולהבנה מלאה של ממשק API של לוח המחוונים, אני מעודד אותך, כמו תמיד, להסתכל על קודקס.

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