如何防止 - Last Modified Date/Time - 不显示在页面上而只显示在帖子上
How To Prevent - Last Modified Date/Time - to not show on Pages but only Posts
我为 WordPress 创建了一个单独的插件(通常称为站点特定插件),我在其中添加了一个功能来显示最后修改的日期和时间。好吧,效果很好,但我不想为 PAGES 显示相同的内容,而只为 Posts 显示。
我应该在这段代码中修改什么?
function wpb_last_updated_date( $content ) {
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400) {
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
您可以检查正在显示的页面是否符合以下条件:
is_page() //For pages
is_single() //for posts
is_singular() //for posts AND pages
is_category() //for categories
is_tag() //for tags
is_404() //for 404 page
尝试将代码放在下面,该代码有条件仅向帖子添加自定义内容:
function wpb_last_updated_date( $content )
{
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400)
{
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
if(is_single())
{
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
要查看更完整的模板标签列表,请访问:
http://codex.wordpress.org/Function_Reference/is_page
您好 is_page() 函数可以用来检查页面是 post 还是页面,所以我们可以使用那个条件。
function wpb_last_updated_date( $content )
{
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400)
{
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
if(!is_page())
{
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
或者您可以检查当前的 post 类型并执行此操作,下面的代码将只对 post 类型 'post'.
执行过滤器
function wpb_last_updated_date( $content )
{
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400)
{
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
global $post;
if ($post->post_type == 'post')
{
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
我为 WordPress 创建了一个单独的插件(通常称为站点特定插件),我在其中添加了一个功能来显示最后修改的日期和时间。好吧,效果很好,但我不想为 PAGES 显示相同的内容,而只为 Posts 显示。
我应该在这段代码中修改什么?
function wpb_last_updated_date( $content ) {
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400) {
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
您可以检查正在显示的页面是否符合以下条件:
is_page() //For pages
is_single() //for posts
is_singular() //for posts AND pages
is_category() //for categories
is_tag() //for tags
is_404() //for 404 page
尝试将代码放在下面,该代码有条件仅向帖子添加自定义内容:
function wpb_last_updated_date( $content )
{
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400)
{
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
if(is_single())
{
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
要查看更完整的模板标签列表,请访问: http://codex.wordpress.org/Function_Reference/is_page
您好 is_page() 函数可以用来检查页面是 post 还是页面,所以我们可以使用那个条件。
function wpb_last_updated_date( $content )
{
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400)
{
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
if(!is_page())
{
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );
或者您可以检查当前的 post 类型并执行此操作,下面的代码将只对 post 类型 'post'.
执行过滤器 function wpb_last_updated_date( $content )
{
$u_time = get_the_time('U');
$u_modified_time = get_the_modified_time('U');
if ($u_modified_time >= $u_time + 86400)
{
$updated_date = get_the_modified_time('F jS, Y');
$updated_time = get_the_modified_time('h:i a');
global $post;
if ($post->post_type == 'post')
{
$custom_content .= '<p class="last-updated"><b>Last updated on</b> '. $updated_date . ' at '. $updated_time .'</p>';
}
}
$custom_content .= $content;
return $custom_content;
}
add_filter( 'the_content', 'wpb_last_updated_date' );