Я хотел бы включить виджет «Последние сообщения» с возможностью отображать ссылку «Просмотреть все», когда сообщений больше, чем у меня установлено на данный момент для отображения виджета.
Я также хотел бы иметь возможность исключить определенные категории или сообщения из него.
Можно ли сделать это через functions.php моей темы?
(1) настроить существующий виджет или (2) создать его копию, которую я могу настроить?
theme-development
widgets
N2Mystic
источник
источник
Ответы:
Обычно лучше скопировать существующий, назвать его чем-то уникальным, а затем добавить свои собственные функции.
Скопируйте
WP_Widget_Recent_Posts
класс из wp-includes / class-wp-widget-Recent-posts.php в ваш functions.php (или, предпочтительно, другой файл в вашей теме, посвященный только виджетам) и переименуйте во что-нибудь еще, напримерMy_Widget_Recent_Posts
Добавьте туда свою функциональность.
Не забудьте также позвонить
register_widget('My_Widget_Recent_Posts')
как частьinit
фазы.источник
parent::__construct('recent-posts', __('Recent Posts'), $widget_ops);
'recent-posts'
должно быть изменено на что-то вроде'my-recent-posts'
, и вы также должны изменить ярлык на что-то, что делает виджет идентифицируемым как ваш:'My Recent Posts'
add_action( 'widgets_init', create_function( '', 'register_widget( "My_Widget_Recent_Posts" );' ) );
вfunctions.php
.