BÀsta praxis: Kontrollera om funktionen finns nÀr du lÀgger till i WordPress-tema

BÀsta praxis: Kontrollera om funktionen finns nÀr du lÀgger till i WordPress-tema

Det bĂ€sta med WordPress Ă€r plugins. Temadesigners har ocksĂ„ en tendens att anvĂ€nda WordPress-plugins för att lĂ€gga till coola funktioner. NĂ€r du arbetar med ett anpassat WordPress-temaprojekt för en klient Ă€r en sak du vill se till att följa bĂ€sta praxis. IgĂ„r fick vi en förfrĂ„gan frĂ„n en av vĂ„ra anvĂ€ndare vars webbplats var trasig. Han hade en anpassad design gjord av nĂ„gon. Temat fungerade bra tills han bytte vĂ€rd. Hans enskilda inlĂ€gg laddades inte efter inlĂ€ggets innehĂ„ll. KommentaromrĂ„det, sidofĂ€ltet, sidfoten, ingenting laddas. Det kommer helt enkelt att mata ut felet. Vi gick in och fixade problemet för dem. FrĂ„gan var att hans temadesigner inte följde bĂ€sta praxis. Han hade ett mycket populĂ€rt plugin “User Photo” som lĂ„ter dig lĂ€gga till anvĂ€ndarens foto lĂ€ngst ner i inlĂ€gget, förutom att han bara lade till funktionen direkt. Nu skulle det fungera sĂ„vida inte plugin-programmet naturligtvis inaktiveras av nĂ„gon anledning. NĂ€r den hĂ€r klienten bytte vĂ€rd var GD-biblioteket tydligen inte installerat pĂ„ den nya servern. Detta fick plugin att inaktivera. Du kunde inte heller aktivera pluginet pĂ„ nytt eftersom det Ă€r beroende av GD-biblioteket. Detta gjorde att webbplatsen bröts för alla anvĂ€ndare. Detta fĂ„r uppenbarligen den dĂ€r temadesignern ett dĂ„ligt rykte, för nĂ€r klienten frĂ„gade vad som var problemet förklarade vi dem. Om du Ă€r temadesigner som lĂ€gger till plugin-utgĂ„ngar bör du alltid följa bĂ€sta praxis. HĂ€r Ă€r nĂ„gra exempel pĂ„ hur vi gör saker med vĂ„ra kunder:

För det populÀra User Photo-plugin-programmet har vi det sÄ hÀr:


<?php
if( function_exists('userphoto') && userphoto_exists($author->ID))
    userphoto($author->ID);
else
    echo get_avatar($author->ID);
?>

Koden ovan kontrollerar tvĂ„ saker. Den kontrollerar om “userphoto” -funktionen existerar (i princip om plugin-programmet Ă€r aktivt). Den andra kontrollen Ă€r att se om anvĂ€ndarfotoet finns för den specifika författaren. Om bĂ„da kontrollerna blir sanna visar vi anvĂ€ndarbilden. Annars har vi helt enkelt att det visar anvĂ€ndarens Gravatar.

För andra plugins, som vi inte har nÄgon ersÀttning för, lÀgger vi alltid till en liten anteckning. Till exempel nÀr vi lÀgger till OIO Publisher-utdata:


<?php if(function_exists('oiopub_banner_zone')) {
oiopub_banner_zone(1, 'center');
} else {
echo 'OIO Zone 1 does not exist. Check to see if this plugin is active.';
}
 ?>

Koden ovan ser i princip om OIO Publisher Banner Zone-funktion finns (vilket den kommer att göra om inte plugin-programmet Àr avaktiverat). Om den existerar kommer den att mata ut bannern. Om den inte finns, visar den texten för att lÄta webbplatsÀgaren veta att detta tillÀgg har inaktiverats.

Om du inte lÀgger till funktionen_existerar kommer din webbplats att returnera ett fel dÀr funktionen misslyckas. Tema formgivare börja göra detta.