In dieser Serie behandeln wir eine der wesentlichen Funktionen von WordPress: bedingte Tags. In Teil 3 werden wir weiterhin bedingte Tags einführen und überprüfen. Wenn Sie die vorherigen Folgen noch nicht gesehen haben, sollten Sie sie sich unbedingt ansehen.
Lass uns anfangen!
is_front_page()
In WordPress kann die „Homepage“ auf eine statische WordPress-Seite oder eine Liste der neuesten Blogbeiträge eingestellt werden (Einstellungen > Lesen ). In beiden Fällen gibt das bedingte Tag is_front_page()
返回 TRUE
TRUE
zurück, wenn die Homepage angezeigt wird.
Dieses bedingte Tag akzeptiert keine Parameter.
has_post_thumbnail()
Das „Featured Image“ ist einer der wichtigsten Teile des neuen Beitrags-/Seitenbildschirms. Bedingter Tag has_post_thumbnail()
Bestimmt, ob für einen bestimmten Beitrag ein hervorgehobenes Bild angegeben wird.
Dieses bedingte Tag hat nur einen Parameter:
$post_id
(Ganzzahl, optional): Beitrags-ID. (Standard: aktuelle Beitrags-ID) has_post_thumbnail()的使用示例
Angenommen, Sie entwickeln ein Thema, bei dem jeder Blog-Beitrag ein „Featured Image“ haben muss. Wenn also kein Featured Image festgelegt ist, soll ein „Standardbild“ angezeigt werden. Folgendes müssen Sie tun:
<?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' ); */ ?>
is_comments_popup()
Sie sollten niemanden verurteilen, der ein Thema von vor 10 Jahren verwendet oder Retro mag. Wenn Sie ein Plugin entwickeln, müssen Sie alles berücksichtigen, einschließlich der Verwendung eines Themes mit einem Kommentar-Popup. Um dies festzustellen, können Sie bedingte Tags verwenden is_comments_popup()
.
Dieses bedingte Tag akzeptiert keine Parameter.
is_404()
„Nicht gefunden“-Fehlerseiten sind normalerweise Seiten, die wir ungern auf Websites sehen, daher ist es uns eigentlich egal, wie sie aussehen. Wenn Sie diese Fehlerseiten jedoch richtig verwenden, können Sie sie in hilfreiche Seiten umwandeln, die Benutzer benachrichtigen oder ihnen bei der Navigation helfen. Bedingte Tags is_404()
helfen uns zu bestimmen, ob dem Benutzer ein 404-Fehler angezeigt werden soll.
Dieses bedingte Tag akzeptiert keine Parameter.
Verwendungsbeispiele füris_404()
Angenommen, Sie entwickeln ein Plugin, das defekte interne Links protokolliert, und Sie möchten Ihre Funktion jedes Mal ausführen, wenn eine 404-Fehlerseite angezeigt wird. Folgendes müssen Sie tun:
<?php add_filter( 'template_redirect', 'my_plugin_check_404_pages' ); function my_plugin_check_404_pages() { if ( is_404() ) { my_plugin_404_logger_function(); } } ?>
taxonomy_exists()
Wenn Sie überprüfen müssen, ob eine benutzerdefinierte Taxonomie registriert ist, können Sie das Bedingungs-Tag taxonomy_exists()
verwenden, damit Ihr Code dies bestimmt.
Dieses bedingte Tag hat nur einen Parameter:
$taxonomy
(Zeichenfolge, erforderlich): Der Name der Taxonomie. (Standard: Keine) is_search()
Obwohl etwas unterschätzt, ist die Suchergebnisseite ein wichtiger Teil einer WordPress-Website. Wenn Sie ein Plugin oder Theme entwickeln, können Sie diese Seiten mithilfe von is_search()
bedingten Tags erkennen.
Dieses bedingte Tag akzeptiert keine Parameter.
Verwendungsbeispiele füris_search()
Angenommen, Sie möchten einen Google-Suchlink mit demselben Begriff einfügen. Folgendes müssen Sie tun:
<?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>'; } ?>
is_tag()
Möchten Sie Tag-Dateien anders behandeln? Bedingte Tags is_tag()
können Ihnen helfen. Möchten Sie ein bestimmtes Tag anders behandeln? Übergeben Sie einfach den Tag-Namen, den Slug oder die ID (oder ein Array davon) als Parameter!
Dieses bedingte Tag hat nur einen Parameter:
$tag
(Array/String, optional): Die ID, der Name, der Slug des Tags oder ein Array davon. (Standard: Keine) has_excerpt()
Es gibt zwei Arten von „Auszügen“ in WordPress-Beiträgen: Es wird ein „benutzerdefinierter Auszug“ genannt, wenn Sie ihn selbst schreiben möchten, und ein „automatischer Auszug“ wird generiert, wenn Sie dies nicht tun (standardmäßig sind es die ersten 55 Wörter von der Beitrag). has_excerpt()
Bedingter Tag prüft, ob der Benutzer einen benutzerdefinierten Auszug für einen bestimmten Beitrag festgelegt hat.
Dieses bedingte Tag hat nur einen Parameter:
$post_id
(Ganzzahl, optional): Beitrags-ID. (Standard: aktuelle Beitrags-ID) has_excerpt()
Angenommen, Sie erstellen ein Thema und möchten einen benutzerdefinierten Auszug auf der Startseite anzeigen, aber nicht den automatischen Auszug. Folgendes müssen Sie tun:
<?php if ( has_excerpt() ) { the_excerpt(); } ?>
is_main_query()
WordPress 使用 WP_Query
类来列出帖子 - 无论是帖子标题列表还是存档页面中完整帖子的索引。许多函数使用 WP_Query
类,is_main_query()
就是其中之一。此条件标记检测查询是否不是“辅助查询”,而是“主查询”。
此条件标记不接受任何参数。
has_tag()
有时,您可能需要检查帖子是否具有某些标签,以使该帖子(或多个帖子)的行为与其他帖子不同。为此,您可以使用 has_tag()
来检查帖子是否带有您指定的标签。 (注意:它允许您指定多个要查找的标签。)
此条件标记有两个参数:
$tag
(数组/字符串,可选):标签的名称、ID、slug 或这些的数组。 (默认:无)$post
(对象,可选):发布以进行检查。 (默认:当前帖子)has_tag()的使用示例
假设您的博客文章有“徽章”(例如“新”、“精选”和“过时”),这些“徽章”将通过使用相应的标签来激活,并且您想要回显帖子内的图像。这是你要做的:
<?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>'; ?>
is_blog_installed()
如果安装了 WordPress,此特定条件标记将返回 TRUE
。我添加此条件标签仅供参考,因为从技术上讲,它对于插件或主题开发人员来说没有用处,也许可以在某些外部 WordPress 工具中使用。
此条件标记不接受任何参数。
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; } ?>
is_page()
在 WordPress 中,“页面”是五种内置帖子类型之一,其他类型还有帖子、修订、附件和导航菜单。如果您想检测某个页面(或一般情况下的任何页面),您可以使用条件标签 is_page()
。
此条件标记只有一个参数:
$page
(数组/字符串,可选):页面 ID、标题、slug 或其中的数组。 (默认:无)在这一部分中,我们回顾了 WordPress 中另一批记录的 65 个条件标签。在接下来的部分中,我们将讨论剩下的 39 篇文章。如果您有任何问题或意见,请在下面提出 - 如果您喜欢这篇文章,请不要忘记分享!
下一部分见!
Das obige ist der detaillierte Inhalt vonBedingte Tags in WordPress erkunden: Von 14 bis 26 – Ein umfassender Leitfaden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!