我正在使用名为wp show posts的插件来列出页面上特定类别的帖子。我还使用Advanced Custom Fields,通过它我向所有帖子(活动的,新的和/或关闭的)添加了元值。我修改了wp show posts插件,以在列表视图中显示每个帖子标题上的元数据值。
// The title
if ( $settings[ 'include_title' ] || ( $settings[ 'include_author' ] && 'below-title' == $settings[ 'author_location' ] ) || ( $settings[ 'include_date' ] && 'below-title' == $settings[ 'date_location' ] ) || ( $settings[ 'include_terms' ] && 'below-title' == $settings[ 'terms_location' ] ) ) : ?>
<?php if( get_field('new') ): ?>
<h2 class="new"><?php the_field('new'); ?></h2>
<?php endif; ?>
<?php if( get_field('active') ): ?>
<h2 class="active"><?php the_field('active'); ?></h2>
<?php endif; ?>
<?php if( get_field('closed') ): ?>
<h2 class="closed"><?php the_field('closed'); ?></h2>
<?php endif; ?>
<header class="wp-show-posts-entry-header">
您可以看到我在title函数和header函数之间添加的代码。
现在,我已经修改了插件,将无法更新它。
我可以在哪里放置此代码,使其不会出现在插件文件中?
答案 0 :(得分:0)
WP Show Posts有一个名为wpsp_before_title
的动作挂钩,可用于在标题之前插入内容:
/**
* Adds ACF data before the heading.
*
* @param array $settings
*/
function wpsp_show_acf_data( $settings ){
<?php if( get_field('new') ): ?>
<h2 class="new"><?php the_field('new'); ?></h2>
<?php endif; ?>
<?php if( get_field('active') ): ?>
<h2 class="active"><?php the_field('active'); ?></h2>
<?php endif; ?>
<?php if( get_field('closed') ): ?>
<h2 class="closed"><?php the_field('closed'); ?></h2>
<?php endif; ?>
}
add_action( 'wpsp_before_title', 'wpsp_show_acf_data' );
将其添加到主题的functions.php
文件(或独立插件)中,即可正常工作。
请记住撤消对插件所做的修改,因为您将不再需要它们。