Web-suunnittelijoina se on luonteemme vastaista rajoittaa pääsyä koodimme käyttöön. Meitä opettaa maksimoida verkkosivustojemme yhteensopivuus ja pyrkiä taaksepäin yhteensopivuuteen aina, kun se on mahdollista; luoda asteittain parannettuja ja hellästi degrading sivustoja. Jos voimme tehdä siitä IE1: n, se ei ole huono asia ...

Ongelma, ainakin WordPress-kehittäjille, on se, että WordPress on hirviö; se nielaisee sinut ja sinun ihastuttava pieni projekti kokonaan, jos annat sen.

Kun tuot WordPress-teemaa tietyn asiakkaan tietyntyyppisenä työpaikkana tai myydä jollakin monista WordPress-kauppapaikoista, tavoitteesi ei voi koskaan kattaa kaikkea, mikä on koskaan ollut osa WordPressiä. Sen sijaan sinun pitäisi pyrkiä käyttämään avainfunktioita, ominaisuuksia ja suodattimia parhaalla mahdollisella tavalla maksamaan nykyinen koodibussi.

Ammattimaisena, aika on rahaa, sitä kauemmin käytät kehityksellesi vähemmän voittoa; se on yksinkertainen yhtälö. WordPressin koko tarkoittaa, että voit helposti viettää 80% aikaa ruokailusta 20 prosenttiin markkinoista. Paljon on parempi viettää 80% aikaa catering 80% markkinoista. Laatu-tuotteen ja oman pankkitalletuksen kannalta se on varmin lähestymistapa.

Sisään 14 avainsanaa WordPress-toiminnot hyppy-start teeman kehittämiseen menimme läpi joitakin toimintoja, jotka ilman epäonnistumista sisällytän käynnistysteeman toimintoihin.php. Tässä artikkelissa käsitellään toinen tärkeä tehtävä, joka pitäisi mennä avainsanan WordPress-toimintojen luetteloon. Se säästää sinua sekä päätä että sydäntä, jotka ovat tuskassa.

WordPress rajoittaa jo taaksepäin yhteensopivuutta

Kun vältettävissä oleva hyökkäys tuo asiakkaasi sivuston (joka toimii teemalla) polvilleen, kuka luulet soittaa? Antakaa minun pelastaa sinut arvailuista: sinä, m'kay? Ei ole väliä, että mikä tahansa aiheuttaa ongelman, ei ole lainkaan vikaasi asiakkaalle, vain se, että olet lähinnä linkki mahdolliseen ongelmaan. Viimeinen asia, jonka he muistavat, on palkata sinut rakentamaan heille uusi teema.

Jos tarkastuksen jälkeen huomaat, että asiakkaan sivusto toimii edelleen WordPress-ohjelmassa vanhempaa kuin nykyinen vakaa versio, vie muutaman sekunnin ja napsauta itseäsi kasvojen yli: vasemmalla poskella ensin, sitten oikealla poskella. Teemasi ei pidä sallia heidän tehdä niin!

Jos olet kiinnittänyt huomiota WordPress-version 3.6 versiosta, olette alkaneet huomata, että oletustyylin funktioissa.php on melko korkealla, mikä rajoittaa oletusaiheen käyttöä WP: n versioihin, jotka ovat uudempia kuin 3.6. Itse asiassa se on toinen toiminto, joka on määritelty kaksikymmentänteentoista toimintoihin.php !

Tämä toiminto näyttää tältä:

/*** Twenty Fourteen only works in WordPress 3.6 or later.*/if ( version_compare( $GLOBALS['wp_version'], '3.6', '<' ) ) {require get_template_directory() . '/inc/back-compat.php';}

Olemme kiinnostuneita kyseisen back-compat.php- tiedoston sisällöstä. Tässä määritellyt toiminnot ovat mitä käytämme omien teemojen kanssa.

Ei maata vanhalle WordPressille

Lähes ei ole väliä mitä ominaisuuksia olet toteuttamassa, mutta jos mahdollista, rajoita teemojen käyttöä kohtuullisen uusia versioita WordPress. Tämä varmistaa, että loppukäyttäjä päivittää asennuksensa (sitä paremmin heille turvallisuuden kannalta) ja varmistaa, että käytät suurimman osan kehitysaikaasi suurimmalla osalla käyttäjistä.

Toiminnon määrittäminen

Tämän saavuttamiseksi käytämme PHP version_compare () -toimintoa tarkastelemaan parhaillaan asennettua WordPress-versiota viimeisimmän käytettävissä olevan version suhteen varmistamalla, että uusin asennettu versio ei ole pienempi kuin 3.6. Tee oma valinta millä versiolla testaa, 3.6 ei ole suositus, vain esimerkki. Tämä toiminto näyttää tältä:

if ( version_compare( $GLOBALS['wp_version'], '3.6', '<' ) ) {// do (or do not) somethingfunction butter_never_get_old() {switch_theme( WP_DEFAULT_THEME, WP_DEFAULT_THEME );unset( $_GET['activated'] );add_action( 'admin_notices', 'butter_step_your_game_up' ); // we add some admin notices here (we haven't defined this function yet)}add_action( 'after_switch_theme', 'butter_never_get_old' );}

Toiminnon tehtävänä on määrittää funktion function butter_never_get_old (), joka toimii vain kun after_switch_theme () ydinfunktio kutsutaan. Toistaiseksi butter_never_get_old () -toiminto, joka sijaitsee versionversion sisällä, tekee seuraavat:

  1. Tarkistaa, mikä WordPress-versio on tällä hetkellä asennettuna
  2. Varmista, että versio on uudempi versio 3.6
  3. Käyttää kosmisesti merkityksellistä If / Else:
  4. Jos se on: Ota teema käyttöön.
  5. Jos se ei ole: älä aktivoi teemaa. Sen sijaan voit ottaa oletusaiheen uudelleen ja ottaa sen mukavaksi, tuottaa mukavan pienen viestin, joka kehottaa käyttäjää päivittämään naurettavan vanhan asennuksensa. Tule, isä!

Nudge, nudge! Päivitä s #% *

Seuraavaksi meidän on määriteltävä butter_step_your_game_up () -toiminto, joka tulostaa admin-ilmoituksemme, jos jotain pitäisi epäonnistua, mikä tarkoittaisi, että WP-versio on vanhempi kuin haluaisimme.

function butter_step_your_game_up() {$update_message = sprintf( __( 'This theme requires WordPress version 3.6 or newer. You're currently using version %s. Please upgrade.', 'butter' ), $GLOBALS['wp_version'] );printf( '

%s

', $update_message );}

Yllä oleva butter_step_your_game_up () -toiminto määrittää kääntävän virheviestin merkkijonon $ update_message -muuttujalle määritettynä (tämä teema vaatii ... jne.), Joka tulostetaan ja näytetään käyttäjälle (aiemmin määritellystä butter_never_get_old () toiminnosta) ja visuaalisesti div, jolla on "virhe" luokka. Tätä viestiä voit muokata halutulla tavalla.

Joten kaiken kaikkiaan meidän tehtävämme pitäisi näyttää tältä:

if ( version_compare( $GLOBALS['wp_version'], '3.6', '<' ) ) {// This function deactivates our newly activated theme if WP isn't newer than 3.6// It then re/activates the default themefunction butter_never_get_old() {switch_theme( WP_DEFAULT_THEME, WP_DEFAULT_THEME );unset( $_GET['activated'] );add_action( 'admin_notices', 'butter_step_your_game_up' );}add_action( 'after_switch_theme', 'butter_never_get_old' );// This function, called from within the above function// outputs the relevant message that nudges the theme's user// to upgradefunction butter_step_your_game_up() {$update_message = sprintf( __( 'This theme requires WordPress version 3.6 or newer. You are currently using version %s. Please upgrade!', 'butter' ), $GLOBALS['wp_version'] );printf( '

%s

', $update_message );} }

Näin varmistat, että teemasi ei voida aktivoida WordPress-versioissa, jotka ovat vanhempia kuin versio 3.6.

Pidä se puhtaana

Sinun tulisi mahdollisimman pitkälle pitää toiminnot.php puhtaina. Sen pitäisi olla puhdas siinä mielessä, että sinun pitäisi pystyä nopeasti skannaamaan ja havaitsemaan välittömästi, mitä jokainen toiminto tekee. Tätä varten voimme haluta siirtää toiminnon sisällys kansioon.

Jos et ole jo tehnyt sitä, luo kansio ja nimeä se "sisällys" teemasi hakemistoon. Sisällä, luo php-tiedosto ja nimi, joka on back-compat.php . Kopioi ja liitä juuri luoman toiminnon sisältö jättäen vain version_compare () funktioihin.php:

if ( version_compare( $GLOBALS['wp_version'], '3.6', '<' ) ) {require get_template_directory() . '/inc/back-compat.php';}

Liitä /inc/back-compat.php -tiedostoon liitetyt aiemmin määritetyt toiminnot:

function butter_never_get_old() {switch_theme( WP_DEFAULT_THEME, WP_DEFAULT_THEME );unset( $_GET['activated'] );add_action( 'admin_notices', 'butter_step_your_game_up' );}add_action( 'after_switch_theme', 'butter_never_get_old' );function butter_step_your_game_up() {$update_message = sprintf( __( 'This theme requires WordPress version 3.6 or newer. You are currently using version %s. Please upgrade!', 'butter' ), $GLOBALS['wp_version'] );printf( '

%s

', $update_message );}

johtopäätös

Se on aina vaikea myydä kertoa hyvälle kehittäjälle, että heidän on rajoitettava koodinsa yhteensopivuutta. Mutta WordPress-koodibussin pelkkä koko, varsinkin kun keskityt taaksepäin yhteensopivuuteen, tekee teeman soveltamisalan rajoittamisesta käytännön välttämättömyyden. WordPress itse tekee niin korostaakseen sen voimassaoloa.

Ja nyt, vapautettu vanhentuneesta koodista tulevista jatkuvista esteistä, voit keskittää energiasi, joihin he kuuluvat: WordPressin mahtavaa voimaa hyödyntäen.

Esitetty kuva / pikkukuva, käyttää yhteensopivuuskuva kautta Shutterstock.