Heim  >  Artikel  >  Backend-Entwicklung  >  Nutzen Sie die Kraft bedingter Tags, um Ihr Blog zu optimieren

Nutzen Sie die Kraft bedingter Tags, um Ihr Blog zu optimieren

PHPz
PHPzOriginal
2023-08-28 08:33:131082Durchsuche

Nutzen Sie die Kraft bedingter Tags, um Ihr Blog zu optimieren

Bedingte Tags sind eine der vielen großartigen Strukturen von WordPress, die uns helfen können, die WordPress-Entwicklung zu vereinfachen. In diesem Artikel lernen wir einige davon kennen und verwenden sie in Beispielfunktionen, wie zum Beispiel dem Entfernen von Inhalten von einer Fehlerseite oder dem Ändern des Symbols einer Admin-Seite.


Was ist ein „bedingtes Tag“?

Es handelt sich im Grunde um „Ja-oder-Nein-Fragen“: Wenn Sie sie verwenden, geben sie einfach WAHR oder FALSCH zurück. Wir verwenden sie in if-Anweisungen – wenn die Aussage WAHR oder FALSCH ist, können wir unseren Code basierend auf der Antwort verarbeiten.

Sie können alle bedingten Tags im WordPress Codex anzeigen.

Jetzt kommen wir zum spaßigen Teil! In diesem Artikel werden zehn großartige Funktionen vorgestellt, die bedingte Tags verwenden.


Funktion 1. Popup-Nachricht auf der Startseite anzeigen is_front_page()

Die Begrüßung Ihrer Besucher von der Startseite aus könnte sie glücklich machen, Sie könnten eine Warnung vor geplanten Wartungsarbeiten ausgeben oder eine gruselige Pop-up-Anzeige schalten. Egal, was Sie tun müssen, hier sind die Schritte:

Zuerst müssen Sie hier das Colorbox jQuery-Plugin herunterladen. Holen Sie sich colorbox.min.js (und den entsprechenden Ordner „images“) aus dem Ordner „colorbox/colorbox“ und colorbox.css und kopieren Sie sie in den Ordner „colorbox“ in Ihrem Theme-Ordner .

Dann müssen Sie eine colorbox.load.js-Datei erstellen, um das Popup zu laden. Legen Sie diese Datei auch im Ordner „colorbox“ ab:

jQuery(document).ready(function($) {
	var $popup = $("#mypopup");
	$.colorbox({href:$popup});
});

Danach platzieren Sie den Popup-HTML-Code (CSS-ID lautet „mypopup“) in der Datei mypopup”)放入主题的 index.php 文件中,并将其隐藏在 style.css strong> 文件(带有“#mypopup {display:none;}index.php

des Themes und verstecken ihn in der Datei

style.css (mit There ist „#mypopup {display:none;}“).

function front_popup() {
	if(is_front_page()) {
		// load colorbox.min.js
		wp_enqueue_script('colorbox-js', get_template_directory_uri().'/colorbox/colorbox.min.js',array('jquery'));
		// load colorbox.load.js
		wp_enqueue_script('colorbox-load-js', get_template_directory_uri().'/colorbox/colorbox.load.js',array('colorbox-js'));
		// load colorbox.css
		wp_enqueue_style('colorbox-css', get_template_directory_uri().'/colorbox/colorbox.css');
	}
}
add_action('wp_head','front_popup');
Fügen Sie es in Ihre

functions.php

-Datei ein und schon kann es losgehen!

Hinweis:
Um das Popup verschwinden zu lassen, müssen Sie einen Link zum Popup hinzufügen. Das wird es schaffen:

<a href="javascript:$.colorbox.close();">Close</a>
is_page()Funktion 2.

Fügen Sie mithilfe von

zusätzlichen CSS- und JS-Code in bestimmte Seiten ein

Möglicherweise müssen Sie einige externe JavaScript- oder CSS-Dateien für bestimmte Seiten laden – beispielsweise Ihre About-Seite oder die Download-Seite eines Produkts. Ja, Sie können sie auch in Ihre Inhalte einbinden, aber das ist keine gute Vorgehensweise. Das ist eine gute Praxis:

function extra_assets() {
	if(is_page(123)) { // '123' is the ID of the page we are checking for
		wp_enqueue_script('my-script', get_template_directory_uri().'/some/path/in/your/theme/folder/script.js');
		wp_enqueue_style('my-style', get_template_directory_uri().'/some/path/in/your/theme/folder/style.css');
	}
}
add_action('wp_head','extra_assets');
Wie beim ersten Beispiel reicht es aus, dies zu Ihrer 123functions.php

-Datei hinzuzufügen. (Vergessen Sie nicht, die „
“-Nummer in die ID Ihrer Seite zu ändern!)

in_category()Feature 3.

Abschnitt „Mehr in dieser Kategorie“ für Beiträge in speziellen Kategorien in_category()

Dies ist nicht immer notwendig, aber Sie möchten möglicherweise einen Abschnitt „Mehr davon“ für eine bestimmte Kategorie (aber nicht für andere). Nehmen wir an, Sie haben eine Kategorie „Neuigkeiten“ und die anderen Kategorien passen nicht in den Abschnitt, den wir erstellen möchten. Bedingte Tags

helfen uns:

function more_from_category($cat_ID) {
	if(in_category($cat_ID) {
		$posts = get_posts('numberposts=5&category='.$cat_ID);
		$output = '<h3>More from this category</h3>';
		$output.= '<ul>';
		foreach($posts as $post) {
			$output.= '<li><a href="'.get_permalink().'">'.get_the_title.'</a></li>';
		}
		wp_reset_query();
		$output.= '</ul>';
		echo $output;
	}
}
Erstellen Sie diese Funktion nach Bedarf und fügen Sie sie Ihrer Datei functions.php hinzu. Gehen Sie dann zu <?php more_from_category(123); ?>single.php

und platzieren Sie den Code (
) an der Stelle, an der dieser Abschnitt erscheinen soll. Alles, woran Sie denken müssen, ist, den Code innerhalb der Schleife zu platzieren. Das ist alles!

is_preview()Funktion 4.

Verwenden Sie

, um sich selbst (oder Ihren Autor) daran zu erinnern, dass Sie sich noch auf der Vorschauseite befinden Dies ist nicht erforderlich (schließlich lernen wir nur Beispiele für diese bedingten Tags), aber es könnte eine gute Idee sein, sich selbst (oder Ihren Autor) daran zu erinnern, dass es sich bei der angezeigten Seite um die „Vorschau“-Seite handelt. Fügen Sie dies der Datei

functions.php

Ihres Themes hinzu:

function preview_warning() {
	if(is_preview()) {
		echo '<div id="preview-warning">Remember, you\'re still on the Preview page!<div>';
	}
}
add_action('the_content','preview_warning');
Das reicht natürlich nicht aus – Sie müssen

style.css

bearbeiten, um dem Warntext eine Form zu geben. Dinge wie diese:

#preview-warning {
	background:#800;
	line-height:50px;
	font-size:30px;
	font-weight:bold;
	text-align:center;
	position:fixed;
	bottom:0;
}

Here you go!

is_404()Funktion 5.

Verwenden Sie

, um bestimmte Elemente von der 404-Seite zu entfernen


Das ist der einfachste Trick von allen. Ich denke, es bedarf nicht einmal einer Erklärung – schließen Sie einfach diese „bestimmten Elemente“ (Dinge, die Sie nicht auf der Fehlerseite anzeigen möchten, wie z. B. Anzeigen) mit dem folgenden Code ein und schon kann es losgehen! p>
if(!is_404()) {
	// Here comes the "certain elements". It's that easy. Seriously.
}
has_excerpt()Funktion 6.

Nicht mehr verwendet

Automatisch generierten Auszug anzeigen Ich

hass

automatisch generierte Auszüge. Also habe ich sie entfernt – unter Verwendung des eigentlichen Codes, der im Codex bereitgestellt wird:

function full_excerpt() {
	if (!has_excerpt()) {
		echo '';
	} else { 
		echo get_the_excerpt();
	}
}
Fügen Sie es zur Datei the_excerpt() 的实例更改为 full_excerpt()functions.php

hinzu und dann müssen Sie nur noch 🎜 tun. 🎜

函数 7. 使用 is_date() 仅列出基于日期的档案中的帖子标题(而不是完整帖子)

有时,在某些存档页面(例如基于日期的存档)上仅列出标题就足够了。因此,例如条件标签 is_date(),我们将删除循环中除标题之外的内容。

这有点棘手,因为每个主题中的 archive.php 文件都不同。 (如果您的主题中有 date.php 文件,您应该编辑该文件。)在代码中查找 The Loop 并使用以下内容更改 The Loop 内的代码:

if(is_date()) {
	// If your theme uses h2 headings for post titles, use h2. If it uses h1, use h1.
	echo '<h2>'.the_title().'</h2>';
} else {
	// ...
	// The original code inside The Loop
	// ...
}

功能 8. 使用 is_admin()

如果您喜欢使用 20 个打开的选项卡(全部用于您的博客),那么此技巧可能会非常方便。只需稍微编辑您的网站图标并将其另存为 adminfav.ico - 例如,我的管理面板网站图标只是我原始网站图标的红色版本

无论如何,您可以这样做:

function admin_favicon() {
	if(is_admin()) {
		echo '<link rel="shortcut icon" href="'.get_bloginfo('url').'/adminfav.ico" />';
	}
}
add_action('admin_head','admin_favicon');

函数9. 如果帖子没有,则显示默认缩略图 has_post_thumbnail()

这是一个好的主题必须具备的条件。如果您的主题中有任何显示特色图像缩略图的部分,您应该the_post_thumbnail() 函数替换为以下代码:

if(has_post_thumbnail()) {
	the_post_thumbnail();
}
else {
	echo '<img src="'.get_template_directory_uri().'/images/default-thumb.jpg" alt="'.get_the_title().'" class="default-thumb" />';
}

这样,您就可以保持主题外观的一致性。


功能10.使用is_user_logged_in()为您的登录会员显示一个特殊菜单

如果您在 WordPress 中使用会员系统并拥有会员,您可能需要为您登录的会员创建一个特殊的菜单。方法如下:

function member_menu() {
	if(is_user_logged_in()) {
		echo '<div class="member-menu"><h2>Member Menu</h2><ul><li><a href="#">First Menu Item</a></li><li><a href="#">Second Menu Item</a></li><li><a href="#">Third Menu Item</a></li></ul></div>';
	}
}

这是一个标准的“标题和列表”代码,您应该使用该代码使其像您的侧边栏 divs 然后放置代码 <?php member_menu(); ?> 在主题的 sidebar.php 文件中。

此外,这只是一个示例,但理想情况下您可以在此处使用 WordPress 自定义菜单和 wp_nav_menu() 。一项标准和一项会员,然后您可以继续从 WordPress 管理仪表板管理它们。您可以在此处阅读有关 wp_nav_menu() 函数的更多信息。


还有其他想法吗?

这是我最喜欢的 10 个使用条件标签的想法。你的呢?如果您有任何要分享的内容,请在下面发表评论,以便我们可以扩展这篇文章并提供更多想法!

Das obige ist der detaillierte Inhalt vonNutzen Sie die Kraft bedingter Tags, um Ihr Blog zu optimieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Binäre Suche in PHPNächster Artikel:Binäre Suche in PHP