내 "최근 게시물"위젯을 만들거나 기존 위젯을 사용자 지정할 수 있습니까?


14

현재 위젯을 표시하도록 설정 한 것보다 많은 게시물이있을 때 "모두보기"링크를 표시 할 수있는 최근 게시물 위젯을 사용하고 싶습니다.

또한 특정 카테고리 나 게시물을 제외 할 수 있기를 원합니다.

내 테마의 functions.php를 통해 수행 할 수 있습니까?

(1) 기존 위젯을 사용자 정의하거나 (2) 사용자 정의 할 수있는 사본을 작성합니까?


1
더 자세히 읽으려면 Widgets API 가 유용한 리소스입니다.
manafire

답변:


20

일반적으로 기존 항목을 복사하고 고유 한 이름을 지정한 다음 고유 한 기능을 추가하는 것이 가장 좋습니다.

복사 WP_Widget_Recent_Posts에서 클래스를 뭔가 다른 이름 바꾸기와 같은 (당신의 단지 위젯에 전념 테마 다른 파일, 바람직하게는, 또는)이 functions.php에 / 클래스 WP-위젯 최근-posts.php을 WP-포함My_Widget_Recent_Posts

거기에 기능을 추가하십시오.

단계의 register_widget('My_Widget_Recent_Posts')일부로 전화 하는 것도 잊지 마십시오 init.


달콤한 +1. 좋아, 나는 그것을 내 함수 .php에서 "require_once ()"를 통해 "포함"된 특수 사용자 정의 위젯 파일에 추가했다. 그러나 클래스 이름을 변경했지만 기본 WP 최근 게시물 위젯을 인계 한 것으로 보입니다. 어떤 아이디어?
N2Mystic

2
위젯에 고유 한 이름을 지정해야합니다. parent::__construct('recent-posts', __('Recent Posts'), $widget_ops); 'recent-posts'와 같은 것으로 변경해야하며 'my-recent-posts', 위젯을 식별 할 수있는 레이블로 변경해야합니다.'My Recent Posts'
Bendoh

3
위젯을 초기화하려면에 추가 add_action( 'widgets_init', create_function( '', 'register_widget( "My_Widget_Recent_Posts" );' ) );해야했습니다 functions.php.
manafire
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.