TTSWP'yi standart WordPress kancalarıyla genişletin veya özelleştirin. Bu kancaları temanızın functions.php dosyasına ya da özel bir eklentiye ekleyin. Her kanca kararlı ve belgelenmiştir.
Filtre kancaları
Sentez öncesinde metni değiştirme
Bunu içeriği temizlemek, özel biçimlendirme eklemek veya ses oluşturulmadan önce bölümleri kaldırmak için kullanın.
add_filter( 'mementor_tts_pre_synthesize_text', function( $text, $post_id ) {
// Değişiklikleriniz
$text = str_replace( 'WP', 'WordPress', $text );
return $text;
}, 10, 2 );
Belirli gönderiler için sesi atlama
Bir gönderiyi otomatik oluşturmadan atlamak için true döndürün.
add_filter( 'mementor_tts_skip_auto_generation', function( $skip, $post_id ) {
// "archive" kategorisindeki gönderileri atla
if ( has_category( 'archive', $post_id ) ) {
return true;
}
return $skip;
}, 10, 2 );
Önbellek anahtarını değiştirme
TTSWP'nin ses önbellek anahtarını nasıl oluşturduğunu geçersiz kılın. Kullanıcı bazında veya özel bağlam bazında farklı önbellekleme istediğiniz durumlarda kullanışlıdır.
add_filter( 'mementor_tts_audio_cache_key', function( $key, $text, $voice ) {
return $key . '_' . get_current_user_id();
}, 10, 3 );
Varsayılan sesi özelleştirme
Belirli gönderiler için hangi sesin kullanılacağını değiştirin.
add_filter( 'mementor_tts_voice_for_post', function( $voice_id, $post_id ) {
if ( get_post_type( $post_id ) === 'podcast' ) {
return 'my-podcast-voice-id';
}
return $voice_id;
}, 10, 2 );
Sütun biçimlendirmesini oluşturma
Gönderiler listesinde özel sütun içeriği oluşturmak için çok dilli entegrasyonlar tarafından kullanılır.
add_filter( 'mementor_tts_render_column', function( $rendered, $post_id, $audio_exists, $audio_url, $processing, $post_status ) {
// Varsayılanı atlamak için kendi biçimlendirmenizi oluşturduktan sonra true döndürün
return $rendered;
}, 10, 6 );
Eylem kancaları
Ses oluşturulmadan önce
add_action( 'mementor_tts_before_generate', function( $post_id, $text, $voice ) {
// Kaydet, bildir veya bir şey hazırla
}, 10, 3 );
Ses oluşturulduktan sonra
add_action( 'mementor_tts_audio_generated', function( $post_id, $audio_url, $characters ) {
// Bildir, özel bir alan güncelle, harici bir kuyruğa gönder
}, 10, 3 );
Ses silindikten sonra
add_action( 'mementor_tts_audio_deleted', function( $post_id ) {
// İlgili verileri temizle
} );
Site bağlantısında
add_action( 'mementor_tts_site_connected', function( $site_token ) {
// Ekibinizi bilgilendirin, karşılama e-postası gönderin, vb.
} );
Tanımlayabileceğiniz sabitler
wp-config.php dosyasında tanımlayın:
Hata ayıklama günlüğünü etkinleştirme
define( 'MEMENTOR_TTS_DEBUG', true );
Ayarlandığında, ayrıntılı günlükler wp-content/debug.log dosyasına yazılır.
API uç noktasını geçersiz kılma
Hazırlık veya test ortamları için:
define( 'MEMENTOR_TTS_API_URL', 'https://staging.ttswp.com' );
Yaygın özelleştirme tarifleri
Blok düzenleyici kenar çubuğuna gönderi bazlı ses seçici ekleme
Eklenti, düzenleyiciye zaten bir TTS paneli ekler. Bunu genişletebilirsiniz:
add_filter( 'mementor_tts_editor_sidebar_fields', function( $fields ) {
$fields[] = [
'key' => 'speaking_speed',
'label' => 'Konuşma hızı',
'type' => 'number',
];
return $fields;
} );
Her oluşturmayı Slack'e gönderme
add_action( 'mementor_tts_audio_generated', function( $post_id, $audio_url, $characters ) {
wp_remote_post( 'https://hooks.slack.com/your-webhook', [
'body' => json_encode( [
'text' => sprintf( '%d karakter oluşturuldu, gönderi %s: %s', $characters, get_the_title( $post_id ), $audio_url ),
] ),
] );
}, 10, 3 );
Kararlılık taahhüdü
Bu sayfada listelenen kancalar, kararlı genel API'dir. En az bir ana sürüm bildirimi ve önceki ana sürüm için kullanımdan kaldırma uyarısı olmadan bunları kaldırmaz veya yeniden adlandırmayız.