WordPress中的条件标签演练:14至26

在本系列中,我们将介绍WordPress的基本功能之一:条件标记。 在第三部分中,我们将继续介绍和回顾条件标签。 如果还没有,请确保检查以前的部分。

让我们开始!

14.检查我们是否在首页上: is_front_page()

在WordPress中,“首页”可以设置为静态WordPress页面或最新博客文章列表( “设置”>“阅读” )。 无论哪种方式,当显示首页时,条件标签is_front_page()返回TRUE

接受参数

此条件标签不接受任何参数。

15.检查帖子是否有缩略图: has_post_thumbnail()

“精选图片”是“新帖子/页面”屏幕的关键部分之一。 条件标签has_post_thumbnail()确定是否为给定帖子分配了特色图片。

接受参数

此条件标签只有一个参数:

  • $post_id (整数,可选):帖子ID。 (默认值:当前帖子ID)

has_post_thumbnail()用法示例

假设您正在开发主题,并且在其中每个博客帖子都需要具有“特色图片”,因此如果未设置特色图片,则要显示“默认图片”。 这是您的工作:

<?php

function mytheme_featured_image( $class = '' ) {

    global $post;
	
	$post_title = get_the_title();
	
	if ( has_post_thumbnail( $post->ID ) ) {
	
		$featured_image = get_the_post_thumbnail( $post->ID, 'thumbnail', array(
			'alt' => esc_attr( $post_title ),
			'class' => $class
		) );
		
	} else {
	
		$featured_image = '<img src="' . get_stylesheet_directory_uri() . '/assets/default-thumb.jpg" alt="' . esc_attr( $post_title ) . '" class="default-thumb ' . $class . '" />';
		
	}
	
	return $featured_image;
	
}

/*
 * Usage (inside the Loop):
 * echo mytheme_featured_image( 'my-custom-class' );
 */

?>

16.检查主题是否正在使用“注释弹出is_comments_popup() ”: is_comments_popup()

您不应该评判任何使用10年主题或喜欢复古的人。 如果要开发插件,则需要考虑所有因素,其中包括使用注释弹出窗口的主题。 要确定这一点,可以使用条件标记is_comments_popup()

接受参数

此条件标签不接受任何参数。

17.检查页面是否为404错误页面: is_404()

通常,我们不希望在我们的网站上看到“未找到”错误页面,因此我们并不在乎它们的外观。 但是,如果正确使用这些错误页面,则可以将它们变成有用的页面,这些信息可以通知您的用户或帮助他们进行导航。 条件标签is_404()可帮助我们确定是否向用户显示404错误。

接受参数

此条件标签不接受任何参数。

is_404()用法示例

假设您正在开发一个记录断开的内部链接的插件,并且希望您的函数在每次查看404错误页面时都能运行。 这是您的工作:

<?php

add_filter( 'template_redirect', 'my_plugin_check_404_pages' );

function my_plugin_check_404_pages() {

    if ( is_404() ) {
    
        my_plugin_404_logger_function();
    
    }
    
}

?>

18.检查给定分类taxonomy_exists()是否存在: taxonomy_exists()

如果您需要检查是否已注册自定义分类法,则可以使用taxonomy_exists()条件标记来使代码确定它。

接受参数

此条件标签只有一个参数:

  • $taxonomy (字符串,必填):分类名称。 (默认:无)

19.检查页面是否为“搜索结果”页面: is_search()

尽管被低估了一些,但“搜索结果”页面是WordPress网站的重要组成部分。 而且,如果您正在开发插件或主题,则可以在is_search()条件标记的帮助下检测这些页面。

接受参数

此条件标签不接受任何参数。

is_search()用法示例

假设您要包含一个使用相同字词的Google搜索链接。 这是您的工作:

<?php

if ( is_search() ) {

    $search_query = get_search_query();
    
	echo '<div class="google-search"><a href="https://www.google.com.tr/search?q=' . $search_query . '">' . __( 'Search with Google', 'translation-domain' ) . '</a>';

}

?>

20.检查页面是否为“标记档案”页面: is_tag()

想要区别对待标签档案吗? 条件标签is_tag()可以帮助您。 是否想以不同方式对待特定标签? 只需传递标签名称,标签或ID(或其中的一个数组)作为参数即可!

接受参数

此条件标签只有一个参数:

  • $tag (数组/字符串,可选):标签的ID,名称,子段或其中的一个数组。 (默认:无)

21.检查帖子是否具有自定义摘录: has_excerpt()

WordPress帖子中有两种“摘录”:如果您想自己写一个,则称为“自定义摘录”;否则,将生成“自动摘录”(默认情况下,前55个)的话)。 has_excerpt()条件标记检查用户是否为给定帖子设置了自定义摘录。

接受参数

此条件标签只有一个参数:

  • $post_id (整数,可选):帖子ID。 (默认值:当前帖子ID)

has_excerpt()用法示例

假设您正在制作主题,并且想要在首页中显示自定义摘录,但是您不想显示自动摘录。 这是您的工作:

<?php

if ( has_excerpt() ) {

    the_excerpt();
	
}

?>

22.检查是否是主查询: is_main_query()

WordPress使用WP_Query类列出帖子-无论是帖子标题列表还是存档页面中完整帖子的索引。 许多函数使用WP_Query类,而is_main_query()是其中之一。 此条件标签检测查询是否不是“辅助查询”,而是“主查询”。

接受参数

此条件标签不接受任何参数。

23.检查帖子是否具有给定标签: has_tag()

有时,您可能需要检查某个帖子是否具有某些标签,以使该帖子(或多个帖子)的行为与其他行为有所不同。 为此,您可以使用has_tag()检查帖子是否用您指定的标签进行了标记。 (注意:它允许您指定要查找的多个标签。)

接受参数

此条件标签具有两个参数:

  • $tag (数组/字符串,可选):标记的名称,ID,子词或它们的数组。 (默认:无)
  • $post (对象,可选):过帐以进行检查。 (默认:当前帖子)

has_tag()用法示例

假设您的博客帖子(例如“ NEW”,“ FEATURED”和“ OBSOLETE”)具有“徽章”,这些徽章将通过使用相应的标签激活,并且您希望回显帖子中的图像。 这是您的工作:

<?php

if ( has_tag( 'badge-new' ) ) {

    echo '<div class="post-content badge-new">';

} else if ( has_tag( 'badge-featured' ) ) {

    echo '<div class="post-content badge-featured">';

} else if ( has_tag( 'badge-obsolete' ) ) {

    echo '<div class="post-content badge-obsolete">';

} else {

    echo '<div class="post-content">';
    
}

// Post content.

echo '</div>';

?>

24.检查是否已安装博客(?): is_blog_installed()

如果安装了WordPress,则此特定的条件标签将返回TRUE 。 我之所以加入此条件标记仅供参考,因为从技术上讲,它对插件或主题开发人员没有用,也许可以在某些外部WordPress工具中使用。

接受参数

此条件标签不接受任何参数。

25.检查用户是否为“超级管理员”: is_super_admin()

在多站点网络中,有一个“超级管理员”可以管理所有站点。 要检测用户是否是“超级管理员”(或常规WordPress安装中的常规管理员),可以使用is_super_admin()条件标记。

接受参数

此条件标签只有一个参数:

  • $user_id (整数,可选):用户的ID。 (默认:当前用户)

is_super_admin()用法示例

假设您不喜欢“ Howdy”问候,并且想要更改它,但是您的用户喜欢并希望保留它。 在这种情况下,您需要一个仅适用于您的解决方案。 这是您的工作:

<?php

// Source: http://www.paulund.co.uk/change-the-wordpress-howdy-text

add_filter( 'admin_bar_menu', 'replace_howdy' );

function replace_howdy( $wp_admin_bar ) {

    $my_account = $wp_admin_bar->get_node( 'my-account' );
    
    $newtitle = __( 'Hi boss!', 'translation-domain' );
    
    $wp_admin_bar->add_node( array(
        'id' => 'my-account',
        'title'    => $newtitle
    ) );
    
    return $wp_admin_bar;

}

?>

26.检查页面是否为“页面”页面: is_page()

在WordPress中,“页面”是五种内置帖子类型之一,包括帖子,修订,附件和导航菜单。 而且,如果您要检测某个页面(或一般情况下的任何页面 ),则可以使用条件标记is_page()

接受参数

此条件标签只有一个参数:

  • $page (数组/字符串,可选):页面ID,标题,段或其中的一个数组。 (默认:无)

结论

在这一部分中,我们回顾了WordPress中记录的65个条件标签中的另一批。 在接下来的部分中,我们将介绍其余的39个。如果您有任何问题或意见,请在下面进行拍摄-如果您喜欢本文,请不要忘记分享!

下一部分见!

翻译自: https://code.tutsplus.com/tutorials/a-walkthrough-on-conditional-tags-in-wordpress-14-to-26--cms-22309

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值