หลังจาก 16 ปีแห่งการดำเนินงานและมากกว่าสองปีโดยไม่มีการเปิดตัวใหม่, ปลั๊กอินของเราพบกับความท้าทายที่แพร่หลายที่รู้จักกันในชื่อ Code Rot. ปัญหานี้เกิดขึ้นเมื่อฟังก์ชั่นลดลงเมื่อเวลาผ่านไปแม้จะไม่มีการเปลี่ยนแปลงรหัสของปลั๊กอิน - เป็นปัจจัยภายนอก. ใหม่ WordPress เผยแพร่, อัปเดตเวอร์ชัน PHP, และการเปลี่ยนแปลงในบริการการแปลสามารถขัดขวางคุณสมบัติที่ออกแบบอย่างระมัดระวัง.
ในเวอร์ชัน 1.0.9.5, เราได้จัดการกับความท้าทายเหล่านี้, โดยให้ความสำคัญเป็นหลักในการแปลเอ็นจิ้น. เราลบรหัสที่ล้าสมัยและแนะนำการใช้งานใหม่เพื่อกู้คืนการสนับสนุนสำหรับบริการแปล Yandex และ Baidu, ซึ่งหยุดทำงานในช่วงไม่กี่ปีที่ผ่านมา. การอัปเดตเหล่านี้ตรวจสอบให้แน่ใจว่าคุณสมบัติการแปลทำงานได้อย่างสมบูรณ์อีกครั้ง. นอกจากนี้, เราได้ขยายการสนับสนุนภาษาเพื่อรวมภาษาใหม่ที่เพิ่มเข้ามาในบริการแปลเหล่านี้เมื่อเวลาผ่านไป.
รุ่นนี้สะท้อนให้เห็นถึงความทุ่มเทของเราในการรักษาปลั๊กอินที่เชื่อถือได้และมีประสิทธิภาพ, ปรับตัวเข้ากับภูมิทัศน์ที่พัฒนาขึ้นของเทคโนโลยีและบริการ.

เราได้แนะนำวิดเจ็ตใหม่ที่ใช้อิโมจิสเตมธงมาตรฐาน, ซึ่งรวมอยู่ในอีโมจิที่ตั้งไว้ในช่วงหลายปีที่ผ่านมา. การอัปเดตนี้ทำให้รหัสของวิดเจ็ตง่ายขึ้นอย่างมาก, ในขณะเดียวกันก็ช่วยให้การปรับแต่งธงได้ง่ายขึ้นเพื่อตอบสนองความต้องการเฉพาะของคุณ.
คุณสามารถตรวจสอบวิดเจ็ตใหม่นี้ได้ในเว็บไซต์ของเรา, ที่ซึ่งเราได้เพิ่มเคล็ดลับ CSS ที่ชาญฉลาดซึ่งทำให้ไอคอนภาษาปัจจุบันมีขนาดใหญ่เป็นสองเท่าของคนอื่น ๆ, ทำได้ด้วยรหัสสองบรรทัดต่อไปนี้!.transposh_flags{font-size:22px}
.tr_active{font-size:44px; float:left}
เราหวังว่าคุณจะสนุกกับเวอร์ชันใหม่นี้!
วิธีการแปลชื่อเมตาและคำอธิบายของคุณด้วย transposh!
บาง “การเข้ารหัส” อย่างที่พวกเขาพูด (คนที่ไม่ทราบวิธีการเขียนโค้ด แต่ยังคงรหัสกับ AI) ฉันคิดด้วยวิธีที่สร้างสรรค์วิธีการแปลชื่อเมตาและคำอธิบายเมื่อใช้ transposh.
ในฐานะนักการตลาด SEO ที่เป็นสิ่งที่รบกวนฉันจริงๆ. เว็บไซต์ที่แปล, ด้วยผลลัพธ์ภาษาอังกฤษใน Google.
แล้วฉันจะทำอย่างไร.
ก่อนอื่นฉันเพิ่มตัวอย่าง PHP นี้ (สร้างโดย Grok 3)
นั่นแปลชื่อเมตาสำหรับฉัน.
ฉันเรียกมันว่าชื่อเมตาและคำอธิบายในตัวอย่าง WP:
add_filter('rank_math/frontend/title', function($title) {
global $my_transposh_plugin;
// Controleer of Transposh actief is
if (!isset($my_transposh_plugin) || !is_object($my_transposh_plugin)) {
return $title;
}
// Haal de huidige taal op
$lang = transposh_get_current_language();
// Vertaal alleen als de taal niet de standaardtaal is
if ($lang && !$my_transposh_plugin->options->is_default_language($lang)) {
// Gebruik fetch_translation om de title te vertalen
list(, $translated_title) = $my_transposh_plugin->database->fetch_translation($title, $lang);
if ($translated_title) {
$title = $translated_title;
}
}
return $title;
});
add_filter('rank_math/frontend/description', function($description) {
global $my_transposh_plugin;
// Controleer of Transposh actief is
if (!isset($my_transposh_plugin) || !is_object($my_transposh_plugin)) {
return $description;
}
// Haal de huidige taal op
$lang = transposh_get_current_language();
// Vertaal alleen als de taal niet de standaardtaal is
if ($lang && !$my_transposh_plugin->options->is_default_language($lang)) {
// Gebruik fetch_translation om de description te vertalen
list(, $translated_description) = $my_transposh_plugin->database->fetch_translation($description, $lang);
if ($translated_description) {
$description = $translated_description;
}
}
return $description;
});
– หลังจากตัวอย่างนี้ > ชื่อถูกแปล, แต่ไม่ใช่คำอธิบาย. หลังจากที่มีความรู้สึกต่อไปและถึงจุดสิ้นสุดที่ตายไปกับ Grok ฉันคิดว่าโดยทั่วไปปลั๊กอิน transposh กำลังดึงการแปลจากฐานข้อมูลหลายครั้ง.
ดังนั้นฉันจึงบอก Grok, เฮ้ถ้าเราเพิ่มชื่อเมตาและคำอธิบายในส่วนท้าย (ที่ซ่อนอยู่) เป็นข้อความ.
และ transposh แปลมัน, หากเรามากกว่าดึงคำอธิบายจากฐานข้อมูลที่ Transposh จัดการให้เราจะไม่ได้รับการแปล?
และ Grok3 ได้รับการยืนยันและให้ข้อมูลนี้กับฉัน (หลังจากให้คำชมแก่ฉันในการคิดนอกกรอบ)
// Voeg de meta title en description toe aan de footer, alleen als de description is ingevuld
add_action('wp_footer', function() {
global $post;
if (is_singular() && $post) {
$meta_title = get_post_meta($post->ID, 'rank_math_title', true);
$meta_description = get_post_meta($post->ID, 'rank_math_description', true);
// Controleer of de meta description is ingevuld
if (!empty($meta_description)) {
// Standaard meta title als deze leeg is
if (empty($meta_title)) {
$meta_title = get_the_title($post->ID);
}
?>
document.addEventListener('DOMContentLoaded', function() {
var metaElement = document.getElementById('transposh-meta');
if (metaElement) {
var translatedText = metaElement.innerText || metaElement.textContent;
// Splits de tekst weer op in title en description (na vertaling)
var parts = translatedText.split(' | ');
var translatedDesc = parts[1] || translatedText; // Gebruik description na de |, anders hele tekst
var metaTag = document.querySelector('meta[name="description"]');
if (metaTag) {
metaTag.setAttribute('content', translatedDesc);
} else {
var newMeta = document.createElement('meta');
newMeta.name = 'description';
newMeta.content = translatedDesc;
document.head.appendChild(newMeta);
}
}
});
<?php
}
}
});
เพียงแค่สังเกต, ว่าฉันใช้ RankMath เป็นปลั๊กอิน SEO ของฉัน, นี่อาจจะใช้ได้กับ Yoast? หรือปลั๊กอินอื่น ๆ, แต่ฉันแน่ใจว่าถ้าคุณป้อนความคิดเห็นทั้งหมดนี้ไปยังเครื่องมือ AI ที่คุณเลือกมันสามารถแก้ไขฟิลด์ที่ถูกต้องสำหรับ Yoast และอื่น ๆ.
Happy Translating Guys และขอขอบคุณที่รับการสนับสนุนปลั๊กอินนี้หลังจากผ่านไปหลายปี🙂
หนึ่งในด้านบนของฉัน 3 อาวุธลับแน่นอน!
ขอโทษฉันลืมพูดถึงบางสิ่งบางอย่าง.
// เพิ่มชื่อเมตาและคำอธิบายลงในส่วนท้าย, เฉพาะในกรณีที่คำอธิบายเสร็จสมบูรณ์
หากคุณแปลสิ่งนี้เป็นภาษาอังกฤษจะบอกว่าเพิ่มชื่อเมตาและคำอธิบายลงในส่วนท้ายเฉพาะในกรณีที่คำอธิบายถูกกรอก.
เหตุผลที่ทำไมจึงเต็มไปด้วยเหตุผลเดียวกับที่ฉันคิดว่าเคล็ดลับส่วนท้ายนี้จะทำงานได้.
ถ้าฉันมีคำอธิบายเมตาที่เป็นเอกลักษณ์สำหรับหน้าเว็บของฉัน, ที่ไม่ได้อยู่ในเว็บไซต์. มันไม่ได้แปล.
แต่เมื่อฉันไม่ได้เพิ่มการแปลเลย, และทำให้มันว่างเปล่า, มันจะดึงคำสูงสุดของหน้า. ดังนั้นเมื่อฉันเพิ่มตัวอย่างแรกด้านบนเท่านั้น, มันเป็นเพียงการแปลชื่อ, เพราะชื่อเรื่องนี้เขียนไว้ในหน้า. แต่คำอธิบายเมตานั้นไม่ซ้ำกันและไม่มีที่ไหนที่เห็นในเว็บไซต์.
นั่นเป็นวิธีที่ฉันคิดออกถ้าเราเพิ่มคำอธิบายเมตาที่มองไม่เห็นในส่วนท้าย > เราสามารถแปลชื่อเมตาและคำอธิบายด้วยตัวอย่างแรกที่ด้านบน.
ดังนั้นคุณต้องใช้ตัวอย่างทั้งสองเพื่อให้ทำงานได้.
หรือเพียงครั้งแรกถ้าคุณไม่เคยกรอกคำอธิบายของคุณต่อไป. ไม่ต้องกังวล.
เมื่อฉันบันทึกโพสต์, มันแสดงข้อผิดพลาดนี้:
การเตือน: คีย์อาร์เรย์ที่ไม่ได้กำหนด “ข” in \wp-content\plugins\transposh-translation-filter-for-wordpress\core\constants.php on line 1702
ฉันแก้ไขได้โดยการเปลี่ยนรหัสนี้ในบรรทัด 1702
ถ้า ($langrec['เครื่องยนต์'][$เครื่องยนต์]) {
เพื่อ
ถ้า (isset($langrec['เครื่องยนต์'][$เครื่องยนต์])) {
ขอบคุณสำหรับการรายงานสิ่งนี้, การแก้ไขใน https://github.com/oferwald/transposh/commit/70f1a6bafc72a0358b42ada8a576a9f02b5ed136
สวัสดี, ฉันใช้ Ranmath สำหรับเว็บไซต์ของฉัน, แต่ชื่อและคำอธิบายจะไม่ถูกแปล,แต่เวอร์ชันไม่กี่ปีที่ผ่านมาก็โอเค,ปลั๊กอินนี้สามารถปรับให้เหมาะสมได้? ขอบคุณ
ถ้าฉันรู้ว่า Ranmath คืออะไร, มากกว่า. ฉันสามารถสันนิษฐานได้ว่าพวกเขาเปลี่ยนบางสิ่งบางอย่าง. และฉันไม่สามารถทดสอบสิ่งที่ฉันไม่รู้อะไรเลย.
เสียใจ, ฉันป้อนข้อมูลที่ไม่ถูกต้อง, มันคือคณิตศาสตร์อันดับ.
ฉันติดตั้งเวอร์ชันล่าสุด, แต่แถบภาษาว่างเปล่า. โปรดใช้เวลาในการอัปเดตข้อผิดพลาด. ขอขอบคุณ.
สวัสดีและขออภัยที่มาพร้อมกับรายงาน แต่
ในผู้ดูแลระบบใน meta-box (กำหนดภาษาของข้อความ) ไม่ทำงานตามที่ควร. มันแสดงหมายเลขมากกว่าประเทศ.
กลับไปที่ 1.0.9.4 การทำงาน
เหตุใดปลั๊กอินของเราจึงแปลว่า "หลักฐานการระเบิด" เป็น "หลักฐานการระเบิด" หรือ "หลักฐานการระเบิด" แทน "หลักฐานการระเบิด".
เรามีปัญหากับปลั๊กอิน. ภาษาจะไม่แสดงในรายการ. นี่คือภาพหน้าจอ: http://joxi.ru/vAWQJd9IKQ3aDm พยายามติดตั้งปลั๊กอินใหม่, แต่ไม่มีอะไรเปลี่ยนแปลง. ในซอร์สโค้ดของหน้าผู้ดูแลระบบแท็กเหล่านี้ว่างเปล่าจริง. คำแนะนำใด ๆ?
กรุณากดบันทึกแล้วคุณจะเห็นภาษาด้านล่าง, ฉันตระหนักถึงข้อผิดพลาดและจะแก้ไขได้เร็ว ๆ นี้
ขอบคุณมาก, การทำงาน!