pengembangan-web-mp-pd.com

Bagaimana Saya Mengatur Judul Halaman secara Dinamis?

Apakah mungkin mengubah judul halaman dengan kode?

Sebagai contoh, katakanlah nama halaman adalah "Pesan Pesanan Anda", tetapi saya ingin mengubahnya menjadi "Pemesanan Buku # 123".

Saya sedikit Google dan melihat di sini dan tidak melihat apa-apa. Adakah yang tahu tentang plugin atau hack?

wp_title mengembalikan judul halaman tetapi tidak mengizinkan pengaturan judul halaman: http://codex.wordpress.org/Function_Reference/wp_title

14
Alex Cook

Tidak ada dokumentasi tentang itu tetapi Anda selalu dapat menerapkan filter ke the_title seperti ini:

add_filter('the_title','some_callback');
function some_callback($data){
    global $post;
    // where $data would be string(#) "current title"
    // Example:
    // (you would want to change $post->ID to however you are getting the book order #,
    // but you can see how it works this way with global $post;)
    return 'Book Order #' . $post->ID;
}

Lihat ini:

http://codex.wordpress.org/Function_Reference/the_title

http://codex.wordpress.org/Function_Reference/add_filter

19
Jared

Pada Wordpress 4.4, Anda dapat menggunakan filter Wordpress document_title_parts untuk mengubah judul.

Tambahkan yang berikut ke functions.php:

add_filter('document_title_parts', 'my_custom_title');
function my_custom_title( $title ) {
  // $title is an array of title parts, including one called `title`

  $title['title'] = 'My new title';

  if (is_singular('post')) {
    $title['title'] = 'Fresh Post: ' . $title['title'];
  }

  return $title;
}
5
Brendan Nee

Bagi mereka yang ingin mengubah atribut title dokumen, saya menemukan bahwa menggunakan filter wp_title tidak lagi berfungsi. Sebagai gantinya, gunakan filter pre_get_document_title :

add_filter("pre_get_document_title", "my_callback");
function my_callback($old_title){
    return "My Modified Title";
}

Sumber

4
Nathan Arthur

Sangat tergantung jika Anda ingin menampilkan judul khusus untuk halaman saat ini (mis. Isi dari tag <title></title> di header) atau memfilter judul halaman di badan halaman atau dalam daftar.

Dalam kasus sebelumnya (judul halaman saat ini), coba tambahkan filter untuk wp_title() seperti: http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title

Jika Anda ingin memodifikasi judul halaman secara keseluruhan, memfilter the_title() akan melakukan trik: http://codex.wordpress.org/Plugin_API/Filter_Reference/the_title

2
nickb

Ketika mengaktifkan Yoast, Anda perlu mengganti judul seperti:

add_filter('wpseo_title', 'custom_titles', 10, 1);
function custom_titles() {

  global $wp;
  $current_slug = $wp->request;

  if ($current_slug == 'foobar') {

    return 'Foobar';
  }
}
0
leymannx