Bir Yaramaz Köşeye Ev Kurallarının İhlali Yorumcusu Nasıl Yerleştirilir
Yorumlar iki kenarlı kılıçtır. Okuyucularla ve okuyuculara katılmaya izin veriyorlar, ancak aynı zamanda sitenin itibarını artırmayan halka açık bir argo maçta hızla yok edilebilirler. Kutunun dışında, WordPress sadece saldırgan yorumlar için iki seçenek sunar: izin veya atık. BBC ve Guardian gibi sitelere katılmak daha mı iyi değil ve yorumları ev kurallarını ihlal ediyor ve metni yalnızca uygun mesajlarla değiştirmek olarak işaretleyebilir mi? Bu makalede, bu işlevselliği WordPress sitesine eklemek için gereken güncellemeleri tartışacağız ve yorumcuların kuralları çiğnediklerinde şüphe etmemelerini sağlayacağız.
Futbol veya iklim değişikliği veya kirli kelimeleri tetikleme eğiliminde olan diğer konular hakkında bir siteniz olmasa bile kuralları çiğnediklerinde bir yorumcuyu şüphesiz bırakın, sitenizdeki yorumlara izin verirseniz, o zaman harekete geçmeniz gerekebilir. Savaş API yorumlarını önleyin veya durdurun veya sadece saldırgan yorumları silin. Yorumları atmak seçeneklerden biridir, ancak bu, kullanıcıları rahatsız eden yorumculara evin kurallarını ihlal ettiklerini ve bu nedenle yorumların devre dışı bırakıldığını söylemez.Gereken şey:
Yorum sayfasında hasarlı bir ev kuralı olarak yorumları etiketleyin
Her yorum görüntülendiğinde metni “kuralları ihlal etme” mesajıyla değiştirin
Tartışma Ayarları sayfası aracılığıyla “Kuralları İhlal” mesajını güncelleyin
Hadi yapalım. Adım 1 işaretli yorumlar Hasarlı evler için bir kural olarak yorumlar WordPress, yeni yorumların durumunu tanıtmayı neredeyse imkansız hale getirebilir (bunlar birkaç yerde haard kodudur), ancak WordPress, yorumlara meta verileri ekleme yeteneği sağlar ve bunu kullanacağımız budur. Kuralları ihlal eden yorumları işaretlemek. Aslında, yorumların onaylanmasına izin vermek, ancak uygulamayı kolaylaştırdığını gösterir. İstediğimiz, yorum sayfasındaki her girişin altında görünen menüye seçenekler eklemektir:
Bu yorum seçeneğine “Breeke House kuralları” ekleyin ve büyük şapka ipucu Andrew Nacin ve Yorum Deneyi eklentisinin yollarını göstermek için. İşlev yorum_row_actionlar ($ actions, $ yorum) { if (! isset ($ eylemler [‘onay’])))
$ eylemleri döndür;
$ houserules = Str_Replace (‘Action = Onaylama’, ‘Action = Prefrovecomment & Houseules = 1’, $ eylemler [‘onay’]);
preg_match (‘/^(.*?>)/’, $ houserules, $ maçlar);
$ houserules = str_replace (dizi (‘: yeni = onaylanmış’, ‘vim-a’), dizi (‘new = onaylanmış & housules = 1’, ”), $ kibritler [1]);
$ Houseerules. = __ (‘Breed House Rules’, ‘Yorum-Wouseules’). ”;
$ eylemler [‘onay’]. = ‘ | ‘. $ Houseerules. ”;
$ eylemleri döndür;
}
Filtreye eklenen bu işlev, “kabul” lerin mevcut seçenek olduğunu inceler ve daha sonra sorgu dizesine bir Houseerules = 1 ekleyerek “Breeke House kuralları” eylemini onay eylemine ekler.
Bu arada, “Breeke House kuralları” seçeneği yalnızca onaylanmamış yorumlarda görünecektir. Kabul edilen yorumları işaretlemek için, onayı iptal edin, ardından Breoke House kurallarını tıklayın. Ardından, gerektiğinde yorumları bir kural dökümü olarak işaretlemek için wp_set_comment_status eylemine bağlanmamız gerekir. İşlev wp_set_comment_status ($ yorum_id, $ status) {if ($ status! = ‘Onaylanmış’)
delete_comment_meta ($ yorum_id, self :: meta_key);
if (! boş ($ _ get [‘houseerules’]) ||! Boş ($ _ post [‘houserules’]))))
update_comment_meta ($ yorum_id, self :: meta_key, ‘1’);
}
Bu, yorum onaylanmış işlemde değilse yorum işaretini siler. Daha sonra Meclis Kurallarının ayarlanıp ayarlanmadığını ve yorumlarda bir etiket verip vermediğini görmek için incelendi.
Yorum sayfasında güncellemeleri işler. Metin değiştirmeye ne dersiniz? Adım 2 – Kolayca işaretlenen yorum metnini değiştiren mesajların güncellenmesini etkinleştirmek için Ayarlar> Tartışma Sayfasına “Breeked Kuralları” mesajını ekleyin, Ayarlar sayfasına seçenekler ekleyeceğiz.
Ayarlar aracılığıyla hasarlı kurallar mesajından kolay güncelleme // Tartışma sayfasında yeni ev kuralları mesajı mesajı kaydetme
işlev hr_register_setting () {
Register_setting (‘Tartışma’,
‘HR_MSG’,
‘Trim’
);
add_settings_field (
‘EV KURALLARI’,
‘Breed House kuralları mesajı’,
dizi (& $ this, ‘hr_show_settings’),
‘Tartışma’,
‘Varsayılan’,
dizi (‘label_for’ => ‘hr_msg’)
);
}
// Yeni İK seçeneği için açıklama
işlev hr_description () {
Eko ‘
Yorum metni yerine görüntülenecek mesajı girin
‘;
}
// Seçenek değerini alın
işlev hr_show_settings ($ args) {
$ data = esc_attr (get_option (‘hr_msg’, ”); printf (
‘