Descărcați contorul pentru wordpress

Descărcați contorul pentru wordpress

Astăzi am decis să împărtășesc un plugin care să trimită un contor de descărcări pentru WordPress. lângă linkul către fișier:

Descărcați plugin-ul pentru aceasta

Și, de asemenea, ca supliment la articolul precedent (Scrierea unui plugin WordPress) vreau să demonstrez procesul de scriere a acestui plugin și să împărtășesc experiența cu dvs. cu cititorul respectat.

Pentru a înțelege ce vom face, să definim ce trebuie să se întâmple:

Descărcați contorul pentru WordPress cu propriile mâini

Avem nevoie ca urmare a instalării plugin-ului, să convertim acest link și să scoatem contorul de descărcări. alături de ea. În final, găsim această legătură cu tejghea:

Descărcați contorul pentru WordPress cu propriile mâini (Fișier descărcat: 5 persoane)

Lucrul pluginului:

Legătura inițială se face în conformitate cu cerințele plugin-ului. dacă am fi avut:

# 91; download_file url = "upload / countdownload.zip" title = "Download Count" # 93;
descărcați contorul pentru WordPress cu propriile mâini
# 91; / download_file # 93;

Pluginul procesează acest scurtcod și îl înlocuiește cu o formă mai ușor de înțeles pentru browsere, adăugând numărul de persoane descărcate de lângă link.

Cu principiul plug-in-ului, totul este clar, în plus, așa cum numără descărcările. Acum vă voi spune despre asta.

Când faceți clic pe linkul convertit, după cum puteți vedea, ajungem la scriptul /download_count.php. care dă utilizatorului fișierul solicitat, actualizând anterior contorul de descărcări în baza de date corespunzătoare acestui fișier.

Este totul clar? Corect nu toate! Ce fel de script este download_count.php și unde se află în directorul rădăcină al site-ului?

Întregul punct este că scriptul de descărcare contra nu ar trebui să fie în dosarul cu fișierele plugin, deoarece atunci în exil va trebui să îndrepți tot drumul spre el, și asta nu este un gud. Prin urmare, plugin-ul creează cu forța acest script în directorul rădăcină, de fiecare dată când nu detectează download_count.php atunci când procesează codul scurt.

Rețineți că dacă descărcarea_count.php a fost creată o singură dată și nu a fost ștearsă până când data viitoare a fost accesată, plugin-ul nu o va crea de fiecare dată.

Odată cu teoria dată, să trecem la scrierea codului:

Când pluginul contra este activat în panoul de administrare WordPress, vom crea imediat un tabel în baza de date în care vom salva datele.

funcția install_download_file # 40; # 41; # 123; // când plugin-ul este activat, creați tabelul necesar
global $ wpdb;
$ wpdb -> interogare # 40; 'CREAȚI TABELUL DACĂ NU EXISTĂ "download_file" (
`url` varchar (254) NU NULL,
`count` int (9) NU NULL
) ENGINE = MyISAM DEFAULT CHARSET = utf8; # 41; ;
# 125;
register_activation_hook # 40; __FILE__. 'Install_download_file' # 41; ;

Apoi, vom scrie o funcție care va înlocui codul scurt cu link-ul necesar

Dima. Am testat plugin-ul, cu diferite dimensiuni de fișiere. Nu mi-am putut reproduce problema. Am testat descărcarea de arhive de 15MB. 20MB. 130MB. și 206 MB. Totul a fost descărcat și deschis cu succes.
Poate într-adevăr această problemă pe dvs. de găzduire? Ai încercat să potești pe gazda locală?

Cu toate acestea, am făcut unele schimbări, atât în ​​contul contorului de descărcări, cât și în articol.

În noua versiune, a fost rezolvată o eroare cu nume de fișiere lungi pentru fișierele descărcate, iar atributul titlu a fost adăugat. Acum puteți folosi codul scurt al formularului:

O versiune ușoară offline a directorului 4.0 (direct de pe site) și
Nu stânca! Verificați! (cu plugin-ul instalat).

Nu cred că găzduirea este de vină. Am pus un alt plugin Kama's Click Counter și cu el fișiere mari swung și deschis în mod normal. Dar și el avea probleme (un alt plan) și l-am luat jos. (((

Îmi place pluginul dvs. mai mult, dar fișierele descărcate nu pot fi deschise (verificate nu numai de mine.

Dmitry, acum pe resursa ta există o versiune actualizată a plug-in-ului? sau vechi? Și o altă întrebare despre extensii, nu ați încercat aceleași directoare care să fie ambalate în zip? și să dea sub forma unei arhive? Înțeleg că nu este o soluție. vreau doar să înțeleg toate nuanțele problemei.

Mulțumesc lui Mark. că nu sunteți indiferenți față de munca dvs. și că vă ajutați să vă ocupați de un plugin foarte necesar!

Plugin-ul a fost complet reinstalat în conformitate cu recomandările dvs., acum plug-in-ul de pe site-ul meu este actualizat.

Am încercat să explic mai detaliat esența problemei, folosind exemple:

Sincer, Dmitriy

Articole similare