Timthumb gebruiken met aangepaste URL's voor site-optimalisatie

In dit artikel zal ik vertellen hoe je een betere paginasnelheidsscore kunt krijgen, zelfs wanneer je TimThumb gebruikt als miniatuur voor je site. Op mijn persoonlijke blog gebruik ik deze methode al geruime tijd en het resultaat is best indrukwekkend. Laten we beginnen met de zelfstudie!

Stap 1 Voorbereiding van TimThumb

Eerste! Oudere versies van timthumb zijn notoir onveilig... dus als je een oude versie van timthumb hebt, download dan eerst de laatste versie van TimThumb Google Code. Open de bestanden en zoek naar regel 27

define ('FILE_CACHE_DIRECTORY', './cache');

en vervang het door

define ('FILE_CACHE_DIRECTORY', ");

Dit zorgt voor een veiligere instelling, maar u kunt nog steeds de map 'cache' of uw eigen gedefinieerde naam gebruiken. Hackers en bots weten te zoeken naar die cachemap, die in oudere versies gebruikers zou hebben die de maprechten instellen op lagere dan veilige niveaus.

Stap 2 Nieuwe locatie instellen voor TimThumb

Normaal gebruikt een themaontwikkelaar timthumb in hun themamap; Dit is duidelijk bedoeld om gebruikers te helpen de functie gemakkelijk uit de doos te gebruiken, maar in het belang van de veiligheid zullen we de locatie voor de time-to-bom veranderen naar een nieuwe map of naar een nieuw subdomein (ik gebruik deze optie op mijn persoonlijke blog). Ik zal je beide methoden laten zien:

Stap 2.1 Een submap gebruiken

Maak een nieuwe map "media" op uw hoofddomein, dat wil zeggen: uwdomein.com/media

Plaats daarna in de map "media" een .htaccess-bestand met de onderstaande code.

 RewriteEngine On RewriteBase / media / RewriteRule ^ resizer /(.*) x (. *) / R /(.*) resizer / thumb.php? Src = http: // $ 3 & h = $ 2 & w = $ 1 & zc = 1 

Voeg vervolgens een submap toe onder "media" met de naam "resizer", dat wil zeggen: uw-domein.com/media/resizer/. Upload de timthumb naar deze map en zorg ervoor dat je je timthumb-bestand een naam geeft als thumb.php. De bestandsstructuur zal zijn zoals hieronder getoond

  1. /media
  2. /media/.htaccess
  3. / Media / resizer /
  4. /media/resizer/thumb.php

Als u de cachemap inschakelt, moet u de cachemap maken onder "Resizer".

Stap 2.2 Een subdomein gebruiken

Eerst moet u uw subdomein instellen, bijvoorbeeld www3.uw-domein.com.

Plaats daarna in de hoofdmap van uw subdomein een .htaccess-bestand met de onderstaande code.

 RewriteEngine On RewriteBase / RewriteRule ^ resizer /(.*) x (. *) / R /(.*) resizer / thumb.php? Src = http: // $ 3 & h = $ 2 & w = $ 1 & zc = 1 

Voeg vervolgens een submap "resizer" toe, dat wil zeggen: www3.uw-domein.com/resizer/. Upload de timthumb naar deze map en zorg ervoor dat je je timthumb-bestand een naam geeft als thumb.php. De bestandsstructuur zal zijn zoals hieronder getoond

  1. /.htaccess
  2. / Resizer /
  3. /resizer/thumb.php

Als u de cachemap inschakelt, moet u de cachemap maken onder "Resizer".

Stap 3 Gebruik

Nadat je klaar bent met stap 2, ben je nu klaar om de timthumb te gebruiken met een aangepaste URL. Het formaat dat u kunt gebruiken voor de nieuwe aangepaste URL wordt hieronder weergegeven:

submap

http://your-domain.com/media/resizer/250x150/r/your-image-url.jpg

subdomein

http://www3.your-domain.com/resizer/250x150/r/your-image-url.jpg

Het formaat dat wordt gebruikt voor de URL is http://www3.your-domain.com/resizer/[Afbeelding breedte]X[Afbeelding hoogte]/ R /[afbeelding URL]

  1. [beeldhoogte] - definieer de hoogte van de miniatuur
  2. [beeldbreedte] - definieer de breedte van de miniatuur
  3. [image-url] - definieer de url van de afbeeldingsbron, verwijder http: // uit de url of anders zal de miniatuurgeneratie mislukken

Stap 4 Gebruik met automagic Thumbnail / Image Management

Mijn vorige artikel ging over Automagic post thumbnail / image management, als je deze aangepaste url-functie samen met het beheer van de postminiatuur wilt gebruiken, volg dan de onderstaande stappen, daar wat bewerking om te zorgen dat alles naar behoren werkt.

Eerst moet je een extra functie toevoegen aan je functions.php-bestand.

function remove_http ($ url = ") if ($ url == 'http: //' OR $ url == 'https: //') return $ url; $ matches = substr ($ url, 0, 7 ); if ($ overeenkomsten == 'http: //') $ url = substr ($ url, 7); else $ matches = substr ($ url, 0, 8); if ($ matches == ' https: // ') $ url = substr ($ url, 8); return $ url;

Kijk daarna in de functie get_attachment_picture (), voor de sluitingshaak ziet u de code zoals hieronder getoond:

echo $ related_thumbnail;

Verander de code in

 echo remove_http ($ related_thumbnail);

Hierna kunt u de aangepaste URL samen met de functie Post Thumbnail / Image Management gebruiken. Voorbeeld van gebruik:

echo '';

Conclusie

Inmiddels zou je deze functie in elk van je thema's kunnen gebruiken, als je nog andere suggesties of vragen hebt over aangepaste url voor timthumb, kun je een reactie achterlaten!