WordPress 대시 보드에서 사용자 정의 RSS 피드를 추가하는 방법

WordPress 대시 보드에서 사용자 정의 RSS 피드 추가

인터넷은 훌륭한 자원으로 가득 차 있기 때문에 모든 것을 살펴보기가 어렵습니다. 물론 경향이나 RSS 리더 소프트웨어를 주시하는 Twitter가 있지만, 너무 바빠서 동시에 20 개의 소프트웨어를 열어야하는 것은 때때로 성가신 일입니다. 그렇기 때문에 피드에 빠르게 액세스 할 수 있도록 WordPress 대시 보드를 글로벌 플랫폼으로 사용하기로 결정한 것입니다. 오늘 공유하고 싶은 예는 WordPress 대시 보드에서 사용자 정의 RSS 메타 박스를 만드는 방법입니다..


다음은 우리가 만들 내용의 최종 결과입니다.

사용자 정의 RSS RSS- 대시 보드 메타 박스 추가

1 단계 : 플러그인

이 메타 박스를 추가하려면 플러그인을 만들어야합니다. 따라서 wp-content / plugins /에“my-dashboard-metaboxes”라는 새 폴더를 만들고 새 폴더 내에 my-dashboard-metaboxes.php라는 파일을 만듭니다. 이 파일은 기본 플러그인 파일입니다. 메인 에디터에서 엽니 다. 아래 코드는 플러그인을 생성하는 코드입니다. 여기에 실제로 복잡한 것은 없습니다.

2 단계 : 메타 박스 등록

이제 빈 플러그인 (아무것도하지 않는 플러그인)이 생겼으므로 WordPress 대시 보드에 표시 할 메타 박스를 적어도 등록해야합니다. 그렇게하기 위해, 우리는 "wp_dashboard_setup훅. 이 함수를“rc_mdm_register_widgets ()”라고합시다. 이 함수 안에서 우리는 새로운 메타 박스를 추가하고 싶다고 WordPress에 알려야합니다. 이것이 "wp_add_dashboard_widget ()" 함수. 이 함수는 4 개의 매개 변수를 허용합니다.

1 – $ widget_id (정수) (필수) 위젯의 식별 슬러그입니다. 이것은 위젯 배열에서 CSS 클래스 및 키로 사용됩니다..
기본값 : 없음

2 – $ widget_name (문자열) (필수) 이것은 위젯이 제목에 표시 할 이름입니다..
기본값 : 없음

3 – $ 콜백 (문자열) (필수) 위젯의 실제 내용을 표시하는 함수의 이름입니다..
기본값 : 없음

4 – $ control_callback (문자열) (선택 사항) 위젯 옵션 (구성) 양식 제출을 처리하고 양식 요소를 표시 할 함수 이름입니다..

여기서 중요한 것은 세 번째 매개 변수이며 메타 박스에로드 될 기능을 정의하는 매개 변수입니다. 이 예에서는 "rc_mdm_create_my_rss_box ()"라고합니다..

/ **
* 모든 대시 보드 메타 박스 등록
*
* @access 공개
* @since 1.0
* @return void
* /

함수 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 단계 : 메타 박스 내용

플러그인을 활성화하고 WordPress 대시 보드로 이동하면 비어있는 새 메타 박스가 표시됩니다. 이제 내용을 채워야합니다. 이 함수의 중요한 점은 WordPress 내장“feed.php”파일을 포함하여“fetch_feed ()”함수를 사용할 수 있도록하는 것입니다. "fetch_rss ()", "get_rss ()"및 "wp_rss ()"는 더 이상 사용되지 않으므로 "fetch_feed ()"를 사용하고 있습니다. 한 번은 코드에 직접 모든 주석을 포함 시켰지만 metabox 함수 내에서 사용하고있는 멋진 기능에주의를 기울이고 싶습니다..

우선 "fetch_feed ()" 함수. 이것은 피드 컨텐츠를 가져오고 구문 분석하는 데 사용됩니다. 이 기능은 SimplePie 클래스, 포함 된 거의 모든 기능을 활용할 수 있습니다.

그런 다음 "human_time_diff ()"함수를 사용하여 시간을 "human_time_diff ()", 예를 들어"2 시간 전 ","4 일 전 "등과 같은 것을 표시하는 것은… 워드 프레스 기능입니다..

그리고 마지막으로“wp_html_excerpt ()각 피드 내용을 단축.

다른 모든 기능은 WordPress 기능을 잘 알고 있거나 Simple Pie 클래스에 포함되어 있습니다..

코드는 다음과 같습니다.

/ **
* RSS 메타 박스 생성
*
* @access 공개
* @since 1.0
* @return void
* /

함수 rc_mdm_create_my_rss_box () {

// RSS 피드 받기
include_once (ABSPATH. WPINC. '/feed.php');

// 내 피드 목록 (자신의 RSS 피드 URL 추가)
$ my_feeds = 배열 ​​(
'http://feeds.feedburner.com/FSAllJobs',
'http://www.wphired.com/feed/?post_type=job_listing'
);

// 피드를 반복
foreach ($ my_feeds as $ 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.''; 에코
'; // 항목 목록을 시작합니다
    꼬리표 에코
      '; // 아이템 확인 if ($ maxitems == 0) { 에코
    • '.__ ('항목 없음 ','rc_mdm ').'.
    • '; } else { // 각 피드 항목을 반복하고 각 항목을 하이퍼 링크로 표시. foreach ($ rss_items as $ item) : // 비인간 날짜를 표시하려면 아래의 주석 처리를 제거하십시오. // $ item_date = $ item-> get_date (get_option ( 'date_format'). '@'.get_option ( 'time_format')); // 휴먼 데이트를 얻습니다 (비 휴먼 데이트를 사용하려는 경우 코멘트) $ item_date = human_time_diff ($ item-> get_date ( 'U'), current_time ( 'timestamp')). ' '.__ ('ago ','rc_mdm '); // 안에 콘텐츠를 표시하기 시작합니다
    • 꼬리표 에코
    • '; // 아이템 링크 생성 에코get_permalink ()). ' "title ="'. $ item_date. ' ">'; // 아이템 제목 얻기 echo esc_html ($ item-> get_title ()); 에코'; // 표시 날짜 에코 '. $ item_date.'
      '; // 아이템 내용 얻기 $ content = $ item-> get_content (); // 컨텐츠 단축 $ content = wp_html_excerpt ($ content, 120). '[...]'; // 컨텐츠 표시 에코 $ content; // 끝
    • 꼬리표 에코
    • '; endforeach; } // 끝
        꼬리표 에코
'; endforeach; // foreach 피드 종료 }

15 행에는 원하는만큼 피드를 넣을 수있는 배열이 있습니다. 27 행에 표시 할 각 피드 항목의 수를 정의 할 수도 있습니다. 마지막으로 50 행 및 54 행에서 사람 날짜 또는 일반 날짜를 표시하도록 선택할 수 있습니다. 그것은 당신에게 달려 있습니다.

결론

자, 우리는 간단한 메타 박스를 만들었지 만, 이제는 자신 만의 콘텐츠로 자신 만의 메타 박스를 만들 수있는 기본 사항이 있습니다. 기본 WordPress 메타 박스를 제거하고 다음을 완전히 이해할 수 있습니다. 대시 보드 위젯 API, 항상 그렇듯이 사본.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me