wordpress 3.3 wp_enqueue_scripts i tema og plugins

WordPress 3.3 har introduceret en simplificering af hvorledes scripts og styling loades i temaer.

Nu er der en logisk opdeling i “det en besøgende ser” / “når man vil logge på” / “når man er i dashboard (kontrolpanel)”.
Dette gør det nemmere, når man vil enqueue scripts og styling. Før skulle man benytte 2 filter hooks for at tildele dette, men nu kan man gøre dette således:

“wp_enqueue_scripts” benyttes til scripts / styling som vises til besøgende.
“login_enqueue_scripts” til at tilpasse login siden.
“admin_enqueue_scripts” hvis du vil loade scripts til på administrations siden.

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Installer SSL på dit Surftown hostede domæne

Nu hvor Facebook kræver at ens Facebook sides iframe canvas loader via SSL (fra 1.okt 2011) har jeg haft en lille øvelse for recreative.dk som skulle overgå til SSL. (dvs. HTTPS).

Surftown har naturligvis nogle udemærkede vejledninger som kan følges til de indledende øvelser. Men jeg konstaterede at det var svært at forstå hvordan “INTERMEDIATE CA” skulle installeres, mest fordi der åbenbart benyttes forskellige termer om nogle af de “keys” man får i forbindelse med bestilling / installation af SSL.

Jeg er ingen ekspert i SSL, og på den baggrund er det måske også sjovere at gå igang med opgaven – skulle der være en fejl, eller nogle tekniske termer jeg har misforstået så sig endeligt til. Hovedsagen for mig er at løsningen virker. :)
NB: Jeg har skiftet surftowns kontrolpanel SPROG ud til ENGELSK.

Sådan gjorde jeg for at installere “DNS Validated” SSL på et domæne hostet ved surftown erherv.

1: Dit domæne skal have egen IP adresse.
Dette tilbydes kun til Surftown ERHVERV kunder.
Se vejledning “Hvordan får jeg en dedikeret ip adresse

2: Installer et temporert certifikat via surftowns kontrolpanel.
Se vejledning: Hvordan bestiller jeg SSL certifikat.
(husk at notere indholdet ned i et text dokument!)

3: På dit domæne som skal have SSL, opret email adressen “hostmaster@dit-domæne.dk”
Se vejledning: Hvordan opretter jeg en email adresse

4: Afvent at DNS for din nye IP adresse er slået igennem
– Ja der KAN gå 24 timer, så sov på det! Utålmodighed er ikke din ven. Du kan ikke fremprovokere en hurtigere løsning ved at skrive til surftown support – det er DNS servere rundt omkring i verden som også skal opdateres.
– VIGTIGT: kontroller at du kan MODTAGE email til den nye “hostmaster@dit-domæne.dk” adresse

5: Bestil dit eget certifikat
Jeg benyttede GratisDNS.dk til at bestille mit SSL (RapidSSL 2 år)
Nu hvor jeg har haft mere tid til at kigge mig omkring, ville jeg nok vælge The SSL Store som har samme varer bare billigere :)
Jeg bestilte “RapidSSL” altså UDEN Wildcard. Du skal indtaste din “hostmaster@dit-domæne.dk” som modtager af certifikatet. Og du skal bruge ØVERSTE del af den information du fik i 2 (altså den del som indeholder “BEGIN CERTIFICATE REQUEST”).
Når købs ordren er gennemført vil du modtage en email, hvor du validerer at du har købt et SSL certifikat, og at dette er din email. Herefter vil du modtage endnu en email med selve certifikatet!

6: Installer dit eget certifikat!
Og det er så her hvor Surftowns vejledning ikke stemmer – dvs følg IKKE denne vejledning: Hvordan installerer jeg mit SSL certifikat
I stedet for at følge surftowns egen vejledning (du skal IKKE disable/slette nuværende certifikat), så skal du…
a) Log på surftown kontrolpanelet.
b) Vælge “domæne Indstillinger”.
c) I domæne listens venstre side klik på pågældende domæne.
d) Udfor “SSL Support” trykker du på “Edit SSL” (på hammeren)
e) I feltet “Certificate Chain File” skal du copy/paste indholdet i “INTERMEDIATE CA” fra din email!
– husk at trykke “INSTALL”
f) I feltet for “Install Certificate based on previously generated Certificate request” copy/paster du indholdet i “Web Server CERTIFICATE” – husk at trykke “UPLOAD”

7: Verificer at certifikatet virker
– eller se hvad der mon er galt ved at benytte FairSSL.dk’s udemærkede test værktøj!
Hvis FairSSL’s værktøj viser en fejl med dit “chain” certifikat, kan du logge på RapidSSL’s hjemmeside, og få en udviddet udgave. – åben .pem filen i en tekst editor og benyt denne (som har 2 områder med krypteret indhold) i feltet beskrevet i punkt 6,e).

8: Når du har SSL installeret…
– Og hvis du benytter WordPress, så læs videre her Tips til WordPress og SSL HTTPS

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Tips til WordPress og SSL HTTPS

Der skal heldigvis ikke så meget til, når du vil bruge WordPress på en sikker url (https) med SSL.
(Du har installeret SSL for dit domæne)

Selvfølgeligt kræver det, at dit TEMA er programmeret korrekt.
Interne links skal kaldes på den rigtige måde.
Når dit tema benytter WordPress funktionerne “bloginfo()” eller “get_bloginfo()”, så har WordPress allerede registreret hvilken Protocol (HTTP eller HTTPS) der benyttes. derfor bliver:

automatisk til:

Hvis du skal benytte SSL er du sikkert ikke totalt nybegynder på nettet, og har erfaring med at redigere dit tema uden at gå i panik – ellers tag kontakt til mig, eller din faste konsulent som kan hjælpe med dit WordPress problem :)

Aktiver SSL for alle urler til din hjemmeside
Først ændre du i WordPress opsætning under “Indstillinger -> Generelt” for at sætte “default url” for din hjemmeside:
a) “WordPress-adresse (URL)” samt b) “Webstedets adresse (URL)” skal begge erstatte “http” med “https” for urlen.

Installer WordPress plugin WordPress HTTPS (SSL), og aktiver dette.
Jeg benytter KUN 2 options for dette plugin:
a) “Internal HTTPS Elements” & b) “HTTPS Front Page”

Opdater din .htaccess og redirect trafik til https
Nu kan man STADIG besøge din hjemmeside UDEN https, vil du tvinge alle over på https, kan du opdatere din .htaccess fil.
Der ER nogle SEO grunde til IKKE at redirecte ALT over på din nye HTTPS. Og hvis du er SEO interreseret, så læs her SEO HTTPS and HTTP Tips.
Men hvis dit website er NYT, og der ikke er noget særligt SEO juice at beholde, så kan du ummidelbart opdater din .htaccess med 2 linier for at tvinge alle besøgende over på SSL.
Editer filen og under “BEGIN WordPress” indsætter du det sidste RewriteCond/RewriteRule par:

Hvis du oplever “https mixed mode” problemer
Så skyldes det at der stadig er referencer til HTTP (altså ikke HTTPS) i dit wordpress tema eller plugins.
Det kan være besværligt at sidde og lede efter hvad der er problemet. Du må gennemgå dine template filer, husk javascript filerne også!
kontroller bla. at dit link til google+ scriptet er HTTPS, at facebook like er HTTPS osv.. eksempel:

Test din hjemmeside og clear så cachen!
Når du som administrator har verificeret at dit TEMA er i orden – dvs: at du har besøgt hjemmesidens forskellige områder og ser at det er korrekt, at dine links i din menu virker og at der ikke mangler billeder i indæg, funktioner ved kommentarer eller kontaktformularer virker osv.. – Så skal du clearer cachen!
– Når du er logget på som administrator i WordPress, vises siderne typisk direkte – altså ikke de cachede. Men besøgende vil stadig se de cachede sider. Det udnytter vi her, så du kan lave ændringer til url struktur uden at eventuelle besøgende vil opleve ændringerne før du har verificeret at det virker.

Nu kan du så benytte dit domæne (og din wordpress) til, fx at hoste din facebook iframe canvas side :)

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Din wordpress hjemmeside kører langsomt

Oplever du at din hjemmeside er langsom?
Hastighed er en relativ sag – er dine hjemmesidebesøgende lokale, eller fra den anden side af jordkloden?
Og du kan ikke regne med at fordi du bor i en boligforening med 100 mbit netværk, at så har dine besøgende også fuld fart på netværket.
Her er et par ting du kan gøre for at optimere hastigheden på din wordpress hjemmeside

  • Ryd op i temaer og plugins!
  • Hold wordpress opdateret!
  • Brug billeder i webformat!
  • Installer et cache plugin!

1. Ryd op i temaer og plugins

Du har sikkert prøvet forskellige plugins og temaer af. Nu er du tilfreds med opsætning og funktion – og har ingen planer om at ændre noget.
Slet de plugins og temaer som du ikke bruger!
Det skal du gøre fordi wordpress kontrollerer om der er kommet nye opdateringer til alle plugins og temaer, som du har liggende sammen med din wordpress installation på serveren.
Når du aktiverer et plugin eller et tema, benyttes ofte nogle “options” som gemmes i databasen. Disse bliver ikke slettet når du de-aktiverer et plugin – først når du sletter (via wordpress) bliver disse options fjernet igen. (hvis ellers plugin / tema udvikleren har styr på teknikken)
Du får altså genvundet plads på webserveren. Fjernet ubrugte opsætnings parametre. Reduceret wordpress versions check. Fjernet filer og scripts som potentielt kunne være skadelige (specielt hvis det er plugins/temaer som du ikke opdaterer fordi du ikke bruger dem).

2. Hold WordPress opdateret

Det er vigtigt for din hjemmesides sikkerhed, at du holder wordpress opdateret.

Den gratis version af wordpress som du benytter hviler på viden, teknologi og udvikling som som wordpress.com gennemgår.
Udvikling af wordpress.com står Automattic for. At det ikke “kun” er et opensource, men at der faktisk står et stort firma produktet, hjælper dig på flere måder.
Ud over at softwaren vedligeholdes og sikkerheden forbedres, så får du flere og flere fantastiske funktioner. Du får optimeret koden bag wordpress, og du kan være sikker på at softwaren har en lang levetid – du skal ikke skifte til noget andet foreløbigt!

3. Optimer dine billeder til nettet

Vi får alle sammen bedre og flere muligheder for selv at tage billeder. Og det er en rigtigt god ide at bruge billeder på hjemmesiden, men husk at tænke på den besøgende som skal hente billederne før de kan vises i deres browser!
Der findes mange måder at redigere et billede på. Nogle gange skal dele af billedet skæres helt væk. Måske skal det roteres en smule så det er horisontalt. Andre gange er det farverne som skal justeres.
Se f.eks Ole Rode’s artikler om foto til nettet, hvor han bla. beskriver hvad pixels er – og hvad de betyder for din hjemmeside.
Når du vil bruge billeder på din hjemmeside, så husk at de ikke behøver være større end de kan vises i forholdet 1:1. Dvs. hvis dit WordPress tema har en sidebredde på 600 px – så giver det ikke nogen mening at bruge dine 12 Mpix billeder i 4000 x 3000 pixels. Rediger dem så de bliver tilpasset til 600px i bredden, og gem dem enten med jpeg eller png kompression før du bruger dem på hjemmesiden.

Hvis du ikke selv kan redigere dine billeder, så kan du evt. benytte en service som
picasaweb.google.com eller mere kendte Flickr som kan bruges sammen med forskellige WordPress plugins – bonus er at du derved sparer plads og trafik på din lokale webserver.
Se også clever JPEG optimization / Clever PNG optimization

4. Installer cache på din blog

Din hjemmeside er en omgang data der sendes fra webserveren til din besøgendes browser.
Jo mindre data, jo hurtigere vises hjemmesiden!
Jeg benytter primært Hyper Cache Extended som er nemt at installere, bliver opdateret når det er nødvendigt og som ikke kræver at du skal tage stilling til alt muligt teknisk (det kan du godt, men du behøver ikke).
cache wordpress giver hurtig svartid
Når en besøgende henter din hjemmeside og caching er slået til, så vil data blive serveret via en fil eller serverens hukommelse. Caching gør at wordpress ikke skal bruge tid på at hente samme data frem fra databasen og formatere indholdet, hver gang en besøgende kigger forbi din hjemmeside.


Hvis du skal have et webhotel, så anbefaler jeg Surftown.
Surftown tilbyder et Billigt webhotel uden bøvl, høj oppetid, god kundeservice og fokus på kunderne!


Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Flyt WordPress til ny server

Benyt denne simple fremgangsmåde til at flytte din WordPress fra en server til en ny, fra en web host til en anden, eller fra din test computer til din kundes domæne.
– Dette er altså IKKE en vejledning i at migrere en enkeltstående WordPress ind i en Multisite WordPress installation.

Her kalder vi den WordPress du vil flytte for “GAMMEL” og din nye installation for “NY”.

Før du går igang, skal du have have adgang til både GAMMEL og NY server via FTP – det er ikke strengt nødvendigt, men det vil lette din opgave betydeligt (sparer tid).

Oprydning:
Det er god skik at når du skal flytte data, så rydder du lige op først – der er ingen grund til at flytte skraldet med over i det nye hjem.
Du kan derfor benytte denne mulighed til fx. at SLETTE indlæg / sider som du ikke har haft publiceret (draft/kladde) – husk at tømme papirkurven.
Slet billeder som du aldrig fik brugt i et indlæg/sider. (du har dem sikkert på din egen computer, og kan altid uploade dem igen).
Via WordPress administration – Slet Plugins og Temaer som du ikke bruger!
– Hvis fx. disse Plugins havde oprettet tabeller til eget brug, BØR disse også blive automatisk fjernet – dette er dog ikke 100% sikkert da mange plugin udviklere ikke har tænkt på dette.

Forberedelse
Du skal kontrollere hvorvidt din GAMMEL WordPress har “custom tables” – dvs tabeller som typisk er oprettet i forbindelse med aktivering af plugins. Altså tabeller i databasen som ikke er WordPress egne tabeller. Hvordan kan du vide om din installation har hjemmestrikkede tabeller?
– Den eneste sikre måde er at kigge i databasen, og se om der er tabeller som ikke er leveret af wordpress.. codex / 11 wp tabeller
Et WordPress Multisite har endnu flere tabeller ( 11 WP + 9 generelle Multisite relaterede + 9 tabeller for hver nyt Site ) – Igen, denne vejledning er IKKE for Multisite installationer.
Hvis du har “custom tables” bør du IKKE benytte denne metode, da WordPress eget export/import værktøj ikke kender tabellerne – og ikke vil blive behandlet.

Proceduren beskrevet her, benytter WordPress egne værktøjer til selve operationen med at eksportere data fra GAMMEL, til en FIL, og importere FIL ind i NY – og det er fedt, for så skal du ikke ud og have fat i databasen for at lave en export / søg-erstat i en sql fil efter domænenavne osv / import på ny server.

Så går vi igang!

1: FTP til GAMMEL server, og download alle filer fra din WordPress Installation.
2: På NY server: Opret eller noter database adgang – den information du skal bruge når du installerer WordPress.
3: I de FTP-hentede filer, find “wp-config.php” og ret database informationerne så de passer med dem du lige har noteret i punkt 2:
define(‘DB_NAME’, ‘din-database’);
define(‘DB_USER’, ‘database-brugernavn’);
define(‘DB_PASSWORD’, ‘brugernavns-kodeord’);
define(‘DB_HOST’, ‘localhost’);
4: Hvis der er en .htaccess fil i samme bibliotek som wp-config.php biblioteket, så SLET den!
5: I de FTP-hentede filer, SLET filerne som er i wp-content/uploads
6: På NY server: FTP upload WordPress filerne du lige har hentet fra GAMMEL server, samt den wp-config.php du lige har rettet.
– du skal “installere” wordpress, og det er som du kender det – indtast Blog-navn osv…
– log på denne NY WordPress, og se at den kører “default”
– slet WordPress default indhold (dvs. indlæg / sider / links – også fra papirkurven!)
7: På NY WordPress: Aktiver plugins og tema, se hjemmesiden og konstater at “det virker” selv uden uden indhold.
8: På GAMMEL server: Udfør en export af indhold via “Dashboard->Tools->Export” ( på dansk: Kontrolpanel->Værktøkjer->Eksporter ) – du får nu en fil gemt på din computer.
9: På NY WordPress: Benyt Import via “Dashboard->Tools->IMPORT” ( på dansk: Kontrolpanel->Værktøkjer->Importer ).
– Her bliver du bedt om at Installere pluginnet “Importer” – det siger du JA til, samt “activate and run”.
– Så skal du vælge den FIL som du fik ved step 8.
– Og vælge at importere ALT
– Og vælge at DOWNLOADE attachemnts. (så får du også overført billeder/dokumenter til dit upload bibliotek igen!)
10: På NY WordPress: Rediger evt “pretty permalinks” og andre indstillinger så som datoformat.
11: Kik på din NYe hjemmeside – ser det rigtigt ud? super!

12: Mangler billeder? Hvis du flytter fra en lokal kopi, en udviklings udgave på din egen computer – så kan wordpress importeren IKKE hente billeder og medier op til internet udgaven automatisk. Du skal derfor selv FTP filerne fra din gamle (dvs. din lokale) /wp-content/uploads folder til din nye server. Derefter skal du installere og benytte et plugin “search and replace” for at rette databasens “gamle adresse” til din ny webserver.

Se også http://codex.wordpress.org/Moving_WordPress Som på en lang og kringlet måde beskriver forskellige procedurer for at flytte en WordPress blog samt Multisites.

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Another WordPress IE issue fixed, 404 pages not working

So Im happily putting into production a nice newsletter plugin on a customer site.
Its AJAXed, got virtual page for email-response clicks and all..

To my horror the 404 pages on the customer site are displaying non graphical, text only Internet Explorer messages on the virtual page – actually any 404 pages..

I did not detect this behavior with my local IE_Tester, only the live site with the specified browser (IE 6.something) seem’d to have this issue of not letting the 404 pages resolve. (before you moan, Its impossible to upgrade browser or try another on this customer!)

I checked the PHP settings (mod_rewrite was working fine), apache server dident have anything obscure or errors popping out…

The fix. Insert this at the very top of header.php in the WordPress theme


Tip about this obtained from http://www.newnine.com/blog/47-wordpress-404-errors-in-ie

(for those worrying that this will set quirks mode – just make sure theres no spaces before the DOCTYPE)

And this really did the trick. Now WordPress allways return a page status 200 to the browser, and the build in global $wp_query; WordPress functionality will controls the error messages as expected.

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

WordPress ajax SACK dosent work for IE6

I have a big customer who uses IE6 as a platform. The last couple of days I have had my troubles working out why the described methods for doing ajax in WordPress with SACK dosent swing it..

Yes I can make it do Ajax, but having custom returnmessages (a requirement for user interaction) seems to fail on “eval(this.response)”

Yawnn..

While doing a signup for weekly digests, I have now combined various techniques to make
– a fake WordPress page – only vievable when a visitor clicks a mail response link.

– ajax the button for “confirm” or “unsubscribe” and if the clicked link dident return a known record – display form for submitting an email and “signup”
The Ajax were needed to update the database with the new status of the click, and to return a message like “thanks – blablabla..”

This is actually the second time I waste hours trying to understand why SACK dont work, If you stumble upon this, and are trying to figure out how to do AJAX and WordPress, read this brilliant tutorial: http://wpleet.com/wordpress-ajax-jquery-practice-using-shortcode

Im using it slightly differently, but that in essence is the way to do it.

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Using wordpress shortcodes anywhere

WordPress shortcodes are normally only displayed when the_content() is being fired.

You can however, if you know the shortcode and its parameters, paint it anywhere you like on your WordPress website. Its not practical to use for all plugins, as alot of them uses a referance to the post they are supposed to represent. (normaly the_content() is part of the loop).

Do this to display a shortcode anywhere on your WordPress site, this example will show the subscribe2 plugin signup form with only the “subscribe” button:

Often you need to take care that the plugin’s shortcode can be used like this – does it depend on a post_id, does it need to return stuff to the screen after a form has been submitted and so on..

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

WordPress 3 Comment formatting and styling

Content to the templatefile, in the theme directory comments.php

One “aber dabai” is that I moved the $req asterix (*) besides the label Name/Email/Website and removed the “required” span class. And the extra class can mess up the absolute position for the name, and then the asterix.

I did this becourse I like to use the jQuery infieldLabel plugin to move the input label inside the input field.

Further more, I like to use a ajax comment plugin like: ptm-ajax-comments

Styling the commentform

Styling the commentlist:

Enjoy

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

A few favorite WordPress Plugins

I do develop my own functions and plugins, but for some tasks there are really nice plugins in the WordPress repository that will do the job awsomely or better.

These are WordPress plugins that I use now and then…

 

Gallery

http://wordpress.org/extend/plugins/nextgen-gallery/
NextGen is a really well done, has a huge userbase and is thusfar the most throughoutly tested and used plugin for galleries. Almost all WordPress users run into this plugin at some point. I think its great but still its not the lightest on ressources for your installation.

http://wordpress.org/extend/plugins/lazyest-gallery/
A great alternative to NextGen gallery

http://wordpress.org/extend/plugins/magic-gallery/
I can see this one getting more and more support

 

Media Player and Viewers

http://wordpress.org/extend/plugins/shadowbox-js/
Great for displaying images and content inside modalboxes.

http://wordpress.org/extend/plugins/media-element-html5-video-and-audio-player/
Awsome video plugin!

http://wordpress.org/extend/plugins/wpaudio-mp3-player/
The most smooth way of adding your own mp3 files to a post – its beautifull and effective!

http://wordpress.org/extend/plugins/soundcloud-shortcode/
Soundcloud is an online music sharing site. Soundcloud hosts your files and you can create playlists of your tracks. Then share them on your site with this easy to use plugin!

http://wordpress.org/extend/plugins/soundcloud-is-gold/
Another soundcloud.com plugin – this is really cool for setting player settings without handwriting options to control stuff like width and colors.

 

Social plugins

http://wordpress.org/extend/plugins/embed-facebook/
When you want to display stuff from Facebook; pictures (albums), events, group pages.

http://wordpress.org/extend/plugins/facebook-comments-for-wordpress/
Great when it comes to letting facebook users write comment on posts or pages.

http://wordpress.org/extend/plugins/share-and-follow/
Adding Share and Follow when you want a floating bar on the right side, Insert a “like” box or any other sharing platforms out there.. this plugin does the trick really well.

http://wordpress.org/extend/plugins/sharebar/
Makes it really easy to add a sharebar that follows the page down when the visitor scrolls on a long page.

 

Caching

http://wordpress.org/extend/plugins/hyper-cache/
I have become a fan of this plugin for its simplicity and ease of use – and for one special feature, disable caching on certain areas!

http://wordpress.org/extend/plugins/w3-total-cache/
W3 Total Cache is the prefered plugin when I do caching.

http://wordpress.org/extend/plugins/wp-super-cache/
Super Cache is equally good.

http://wordpress.org/extend/plugins/flexicache/
FlexiCache is a close runnerup. I like it but I still prefere W3-Total-Cache.

 

Backup

http://wordpress.org/extend/plugins/updraft/
Simply amazing backup plugin – I did a few tweaks to include custom tables and a dashboard notification. You can save files locally, FTP them to an offsite location and on a CDN.

 

User Rating

http://wordpress.org/extend/plugins/gd-star-rating/
Whenever you want to let users rate posts, pages or comments with stars, hearts or give the thumbs up!

http://wordpress.org/extend/plugins/wp-postratings/
The more simple version of a rating system, this one only for posts.

 

Other

http://wordpress.org/extend/plugins/skeleton-key/

Skriv kommentar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *