هل من الممكن تغيير عنوان الصفحة مع الكود؟
على سبيل المثال ، دعنا نقول أن اسم الصفحة هو "حجز طلبك" ، لكنني أريد تغييره إلى "Book Order # 123".
كنت غوغل قليلاً ونظرت هنا ولم أر شيئًا. أحد يعرف من البرنامج المساعد أو الاختراق؟
يعرض wp_title عنوان الصفحة ولكنه لا يسمح بتعيين عنوان الصفحة: http://codex.wordpress.org/Function_Reference/wp_title
لا توجد وثائق عليه ، لكن يمكنك دائمًا تطبيق مرشح على the_title
كما يلي:
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;
}
انظر هذه:
اعتبارًا من الإصدار 4.4 من Wordpress ، يمكنك استخدام فلتر Wordpress document_title_parts
لتغيير العنوان.
أضف ما يلي إلى 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;
}
بالنسبة لأولئك الذين يرغبون في تغيير سمة المستند title
، وجدت أن استخدام عامل التصفية wp_title
لم يعد يعمل. بدلاً من ذلك ، استخدم عامل التصفية pre_get_document_title
:
add_filter("pre_get_document_title", "my_callback");
function my_callback($old_title){
return "My Modified Title";
}
يعتمد حقًا إذا كنت تبحث عن عرض عنوان مخصص للصفحة الحالية (أي محتويات علامة <title></title>
في الرأس) أو تصفية عنوان الصفحات في نص الصفحة أو في قوائم البيانات.
في الحالة السابقة (عنوان الصفحة الحالية) ، حاول إضافة عامل تصفية لـ wp_title()
مثل ذلك: http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_title
إذا كنت ترغب في تعديل عناوين الصفحات في جميع المجالات ، فإن تصفية the_title()
ستقوم بالخدعة: http://codex.wordpress.org/Plugin_API/Filter_Reference/the_title
عند تمكين Yoast ، يلزمك تجاوز العنوان مثل:
add_filter('wpseo_title', 'custom_titles', 10, 1);
function custom_titles() {
global $wp;
$current_slug = $wp->request;
if ($current_slug == 'foobar') {
return 'Foobar';
}
}