Rumah pembangunan bahagian belakang tutorial php 详解WordPress开发中wp_title()函数的用法_PHP

详解WordPress开发中wp_title()函数的用法_PHP

May 28, 2016 am 11:49 AM
wordpress

wp_title 函数在 WordPress 中是用来显示文章、页面、分类等等等等标题的一个函数,但在首页索引,该函数将不显示任何的东西。该函数在 WordPress 官方主题中一直被使用,但目前很多定制的主题中这个函数总是为忽视。

函数意义详解
wp_title 函数用来显示页面的标题,如在文章页面,则显示文章标题;在分类页面,则显示分类名称,但在首页索引,该函数将不显示任何的东西。
有点像 WordPress 中的 get_the_title 和 single_cat_title()这两个函数的自适应用法(自动判断是页面、文章还是分类、归档、标签)。

函数声明
有点长,希望您能耐心看一遍,哪怕只有那么一遍。

/**
 * Display or retrieve page title for all areas of blog.
 *
 * By default, the page title will display the separator before the page title,
 * so that the blog title will be before the page title. This is not good for
 * title display, since the blog title shows up on most tabs and not what is
 * important, which is the page that the user is looking at.
 *
 * There are also SEO benefits to having the blog title after or to the 'right'
 * or the page title. However, it is mostly common sense to have the blog title
 * to the right with most browsers supporting tabs. You can achieve this by
 * using the seplocation parameter and setting the value to 'right'. This change
 * was introduced around 2.5.0, in case backwards compatibility of themes is
 * important.
 *
 * @since 1.0.0
 *
 * @param string $sep Optional, default is '»'. How to separate the various items within the page title.
 * @param bool $display Optional, default is true. Whether to display or retrieve title.
 * @param string $seplocation Optional. Direction to display title, 'right'.
 * @return string|null String on retrieve, null when displaying.
 */
function wp_title($sep = '»', $display = true, $seplocation = '') {
global $wpdb, $wp_locale;
 
$m = get_query_var('m');
$year = get_query_var('year');
$monthnum = get_query_var('monthnum');
$day = get_query_var('day');
$search = get_query_var('s');
$title = '';
 
$t_sep = '%WP_TITILE_SEP%'; // Temporary separator, for accurate flipping, if necessary
 
// If there is a post
if ( is_single() || ( is_home() && !is_front_page() ) || ( is_page() && !is_front_page() ) ) {
 $title = single_post_title( '', false );
}
 
// If there's a category or tag
if ( is_category() || is_tag() ) {
 $title = single_term_title( '', false );
}
 
// If there's a taxonomy
if ( is_tax() ) {
 $term = get_queried_object();
 $tax = get_taxonomy( $term->taxonomy );
 $title = single_term_title( $tax->labels->name . $t_sep, false );
}
 
// If there's an author
if ( is_author() ) {
 $author = get_queried_object();
 $title = $author->display_name;
}
 
// If there's a post type archive
if ( is_post_type_archive() )
 $title = post_type_archive_title( '', false );
 
// If there's a month
if ( is_archive() && !empty($m) ) {
 $my_year = substr($m, 0, 4);
 $my_month = $wp_locale->get_month(substr($m, 4, 2));
 $my_day = intval(substr($m, 6, 2));
 $title = $my_year . ( $my_month ? $t_sep . $my_month : '' ) . ( $my_day ? $t_sep . $my_day : '' );
}
 
// If there's a year
if ( is_archive() && !empty($year) ) {
 $title = $year;
 if ( !empty($monthnum) )
 $title .= $t_sep . $wp_locale->get_month($monthnum);
 if ( !empty($day) )
 $title .= $t_sep . zeroise($day, 2);
}
 
// If it's a search
if ( is_search() ) {
 /* translators: 1: separator, 2: search phrase */
$title = sprintf(__('Search Results %1$s %2$s'), $t_sep, strip_tags($search));
}
 
// If it's a 404 page
if ( is_404() ) {
 $title = __('Page not found');
}
 
$prefix = '';
if ( !empty($title) )
 $prefix = " $sep ";
 
// Determines position of the separator and direction of the breadcrumb
if ( 'right' == $seplocation ) { // sep on right, so reverse the order
$title_array = explode( $t_sep, $title );
$title_array = array_reverse( $title_array );
$title = implode( " $sep ", $title_array ) . $prefix;
} else {
 $title_array = explode( $t_sep, $title );
 $title = $prefix . implode( " $sep ", $title_array );
}
 
$title = apply_filters('wp_title', $title, $sep, $seplocation);
 
// Send it out
 if ( $display )
 echo $title;
 else
 return $title;
 
}
Salin selepas log masuk

用法

<&#63;php wp_title( $sep, $echo, $seplocation ); &#63;>
Salin selepas log masuk

参数详解

  • $sep:分隔符;
  • $echo:是否显示;
  • $seplocation:分隔符所在位置(左还是右,只接受'right',如果不是right自动判定为左)

总结

WordPress 中相同功能的函数有很多,都是从基层到高级不断的经过封装最后到达使用层的,当然如果我们需要一些灵活用法的话,我们可以直接用中间那层的函数,如果我们懒的话我们可以直接使用最高级的那层函数,诸如本函数 wp_title ,其实这个函数我们从源代码来看, wp 替我们针对 分类、标签、文章、归档、作者、页面等多种类型的页面进行了判断,并根据不同页面调用不同的标题函数来达到目的。
如果有时间,您可以对下面几个函数进行深入研究一下,一遍更灵活的进行seo
single_post_title 文章页面提取标题的函数
single_term_title tag(标签)、cat(分类)、日期、提取标题的函数 类似于 single_cat_title()函数
get_queried_object 作者页面提取对象的函数(对象中有作者名)
post_type_archive_title()规档等等提取标题的函数
还等什么?
GO GO GO !

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

PHP vs. Flutter: Pilihan terbaik untuk pembangunan mudah alih PHP vs. Flutter: Pilihan terbaik untuk pembangunan mudah alih May 06, 2024 pm 10:45 PM

PHP dan Flutter ialah teknologi popular untuk pembangunan mudah alih. Flutter cemerlang dalam keupayaan merentas platform, prestasi dan antara muka pengguna, dan sesuai untuk aplikasi yang memerlukan prestasi tinggi, merentas platform dan UI tersuai. PHP sesuai untuk aplikasi sebelah pelayan dengan prestasi yang lebih rendah dan bukan merentas platform.

Bagaimana untuk menukar lebar halaman dalam wordpress Bagaimana untuk menukar lebar halaman dalam wordpress Apr 16, 2024 am 01:03 AM

Anda boleh mengubah suai lebar halaman WordPress anda dengan mudah dengan mengedit fail style.css anda: Edit fail style.css anda dan tambahkan .site-content { max-width: [lebar pilihan anda]; Edit [lebar pilihan anda] untuk menetapkan lebar halaman. Simpan perubahan dan kosongkan cache (pilihan).

Cara membuat halaman produk dalam wordpress Cara membuat halaman produk dalam wordpress Apr 16, 2024 am 12:39 AM

Buat halaman produk dalam WordPress: 1. Buat produk (nama, penerangan, gambar); 4 . Buat variasi (warna, saiz yang berbeza);

Dalam folder manakah artikel wordpress terletak? Dalam folder manakah artikel wordpress terletak? Apr 16, 2024 am 10:29 AM

Catatan WordPress disimpan dalam folder /wp-content/uploads. Folder ini menggunakan subfolder untuk mengkategorikan pelbagai jenis muat naik, termasuk artikel yang disusun mengikut tahun, bulan dan ID artikel. Fail artikel disimpan dalam format teks biasa (.txt), dan nama fail biasanya termasuk ID dan tajuknya.

Di manakah fail templat wordpress? Di manakah fail templat wordpress? Apr 16, 2024 am 11:00 AM

Fail templat WordPress terletak dalam direktori /wp-content/themes/[theme name]/. Ia digunakan untuk menentukan penampilan dan kefungsian tapak web, termasuk pengepala (header.php), pengaki (footer.php), templat utama (index.php), artikel tunggal (single.php), halaman (page.php) , Arkib (archive.php), kategori (category.php), tag (tag.php), carian (search.php) dan halaman ralat 404 (404.php). Dengan mengedit dan mengubah suai fail ini, anda boleh menyesuaikan penampilan laman web WordPress anda

Bagaimana untuk mencari pengarang dalam WordPress Bagaimana untuk mencari pengarang dalam WordPress Apr 16, 2024 am 01:18 AM

Cari pengarang dalam WordPress: 1. Setelah log masuk ke panel pentadbir anda, navigasi ke Catatan atau Halaman, masukkan nama pengarang menggunakan bar carian, dan pilih Pengarang dalam Penapis. 2. Petua lain: Gunakan kad bebas untuk meluaskan carian anda, gunakan operator untuk menggabungkan kriteria atau masukkan ID pengarang untuk mencari artikel.

Versi wordpress yang manakah stabil? Versi wordpress yang manakah stabil? Apr 16, 2024 am 10:54 AM

Versi WordPress yang paling stabil ialah versi terkini kerana ia mengandungi tampung keselamatan terkini, peningkatan prestasi dan memperkenalkan ciri dan penambahbaikan baharu. Untuk mengemas kini kepada versi terkini, log masuk ke papan pemuka WordPress anda, pergi ke halaman Kemas Kini dan klik Kemas Kini Sekarang.

Apakah bahasa yang digunakan untuk membangunkan WordPress? Apakah bahasa yang digunakan untuk membangunkan WordPress? Apr 16, 2024 am 12:03 AM

WordPress dibangunkan menggunakan bahasa PHP sebagai bahasa pengaturcaraan terasnya untuk mengendalikan interaksi pangkalan data, pemprosesan borang, penjanaan kandungan dinamik dan permintaan pengguna. PHP dipilih atas sebab termasuk keserasian merentas platform, kemudahan pembelajaran, komuniti aktif dan perpustakaan dan rangka kerja yang kaya. Selain daripada PHP, WordPress juga menggunakan bahasa seperti HTML, CSS, JavaScript, SQL, dll. untuk meningkatkan fungsinya.

See all articles