首页上的访客上次修改的标题查看如何将上次修改的标题添加到提要中非常有用wp::send_header()
方法
如果我们想使用is_front_page()
, 然后过滤器wp_headers
或send_header
可能适用于早期。
我们可以使用template_redirect
在发送标题之前和之后,钩住目标首页is_front_page()
已准备就绪。
下面是一个示例:
/**
* Set the Last-Modified header for visitors on the front-page
* based on when a post was last modified.
*/
add_action( \'template_redirect\', function() use ( &$wp )
{
// Only visitors (not logged in)
if( is_user_logged_in() )
return;
// Target front-page
if( ! is_front_page() )
return;
// Don\'t add it if there\'s e.g. 404 error (similar as the error check for feeds)
if( ! empty( $wp->query_vars[\'error\'] ) )
return;
// Don\'t override the last-modified header if it\'s already set
$headers = headers_list();
if( ! empty( $headers[\'last-modified\'] ) )
return;
// Get last modified post
$last_modified = mysql2date( \'D, d M Y H:i:s\', get_lastpostmodified( \'GMT\' ), false );
// Add last modified header
if( $last_modified && ! headers_sent() )
header( "Last-Modified: " . $last_modified . \' GMT\' );
}, 1 );
这里我们使用了核心PHP函数
header()
,
headers_list()
和
headers_sent()
以及WordPress的核心功能
get_lastpostmodified()
此处也可以添加Etag标题,作为上次修改日期的md5。
然后,我们可以从命令行对其进行测试,例如:
# curl --head https://example.tld
或者只使用速记参数
-I
仅获取HTTP标头。