Cum să primeşti comentariile noi prin SMS (actualizat)

Eşti blogger şi vrei să primeşti SMS atunci când cineva comentează pe blogul tău? Dacă ai blog cu script WordPress şi un număr relativ mic de comentatori zilnic, iar răspunsul la întrebarea anterioară este „DA”, atunci mini-tutorialul de mai jos ar trebui să te ajute.

Ai nevoie de un cont pe OpenSms.ro, pentru a obţine un API Key. După ce te-ai înregistrat, intră la secţiunea Contul meu, acolo unde vei găsi acel API.
În codul de mai jos înlocuieşte API_CODE cu acel API din Contul meu. Numărul 0736166256 înlocuieşte-l cu numărul tău pe care vrei să primeşti SMS-uri, iar „Admin” cu numele pe care îl foloseşti pe blog (pentru a nu primi SMS atunci când comentezi tu… pe blogul tău).

În codul de mai jos este inclusă şi o funcţie anti-spam. Când se găseşte un cuvânt în textul comentariului din acea funcţie, va apărea un mesaj de eroare (wp_die). Dacă ai comentatori ce folosesc în comentariile lor vreounul din acele cuvinte, editează şi acolo, ştergând cuvinte din array. 😀

Iar acum… codul mult prealăudat, pe care să-l adaugi la sfârşitul fişierului functions.php al temei pe care o foloseşti sau într-un plugin propriu, pentru a nu pierde modificările la actualizarea temei.

[php]if( !class_exists(‘CommentPrinSms’)) {
Class CommentPrinSms{
public function __construct() {
add_filter(‘pre_comment_approved’, array($this, ‘filter’), 99, 2);
}
public function filter( $status=0, $data=array() ) {
$cenuascris = $data["comment_author"];
$texcontinut = $data["comment_content"];
$ceascris = nl2br( "$cenuascris. $texcontinut" );
$dami_sms=’https://opensms.ro/api/send/API_CODE/0736166256/’.$ceascris;

function wordsExistCC(&$string_cc, $words_cc) {
foreach($words_cc as &$word_cc) {
if(stripos($string_cc, $word_cc) !== false) {
return true;
}
}
return false;
}

$string_cc = $data["comment_content"];
if (!is_user_logged_in() AND wordsExistCC($string_cc, array(‘[url=’,’fuck’,’reklamy’,’drug’,’viagra’,’outlet’,’benefit’,’pharmaceut’,’wholesale’,’against’,’pay’,’.cfm’,’order’,’Louis Vuitton’,’also’,’stomach’,’people’,’egg’,’shoes’,’buy’,’westwood’,’coins’))) {
wp_die( __(‘Spam detectat! Comentariul nu a fost adăugat! Ai folosit cuvinte nepermise, marcate ca spam!’) );
}

if( $cineascris !="Admin" ) {
$astasigata = file_get_contents( "$dami_sms" );
return $status; }
return $status;
}
}
New CommentPrinSms();
}
[/php]

Limita este de 5 SMS-uri/zi şi nu vei primi prin SMS unele comentarii care sunt mai lungi.

Etichete:, ,

12 comentarii

Dă-ți cu părerea

Adresa ta de email nu va fi publicată.