Kaikkien mahdollisten HTML-elementtien tulee olla tyyliltään teeman mukaisia (ellei se ole aliteema), sekä viestin / sivun sisällössä että yhdessä
- Taulukot, kuvatekstit, kuvat, luettelot, lainausmerkit jne.
Tulostukseen sopivien tyylien lisääminen on erittäin suositeltavaa.
- Voit sisällyttää tulostustyylisivun media = ”print” tai lisätä tulostusmateriaalilohkoon päätyylitaulukkoon.
Funktiotiedosto
Teema voi vaihtoehtoisesti käyttää funktiotiedostoa, joka sijaitsee teeman alihakemistossa ja jonka nimi on function.php. Tämä tiedosto toimii periaatteessa kuin laajennus, ja jos se esiintyy käyttämässäsi teemalla, se ladataan automaattisesti WordPress-alustuksen aikana (sekä järjestelmänvalvojan sivuille että ulkoisille sivuille). Ehdotetut käyttötavat tälle tiedostolle:
- Houkuttele teeman tyylitaulukoita ja komentosarjoja. Katso wp_enqueue_scripts.
- Ota käyttöön teemaominaisuudet, kuten sivupalkit, siirtymisvalikot, postin pikkukuvat, postimuodot, mukautetut otsikot, mukautetut taustat ja muut.
- Määritä toiminnot, joita käytetään useissa mallipohjatiedostoissa. teema.
- Määritä asetusvalikko, joka antaa sivuston omistajille vaihtoehtoja väreille, tyyleille ja muille teeman ominaisuuksille.
WordPress-oletusteema sisältää toiminnot. php-tiedosto, joka määrittelee monet näistä ominaisuuksista, joten kannattaa ehkä käyttää sitä mallina. Koska functions.php toimii periaatteessa laajennuksena, Function_Reference-luettelo on paras paikka saada lisätietoja siitä, mitä voit tehdä tällä tiedostolla.
Huomaa, kun haluat päättää, milloin funktiot lisätään toiminnoille.php tai tiettyyn laajennukseen: Saatat huomata, että tarvitset saman toiminnon, jotta se olisi käytettävissä useammalle kuin yhdelle pääteemalle. Jos näin on, funktio tulisi luoda laajennuksessa funktion.php sijaan tietylle teemalle. Tämä voi sisältää mallimerkkejä ja muita erityistoimintoja. Laajennusten sisältämät toiminnot näkyvät kaikki teemat.
Mallitiedostot
Mallit ovat PHP-lähdetiedostoja, joita käytetään kävijöiden pyytämien sivujen luomiseen, ja ne tulostetaan HTML-muodossa. Mallitiedostot koostuvat HTML-, PHP- ja WordPress-mallitunnisteista.
Tarkastellaan erilaisia malleja, jotka voidaan määrittää osana teemaa.
WordPress antaa sinun määrittää erilliset mallit sivustosi eri osa-alueille. Se ei ole Olennaista on kuitenkin, että kaikki nämä eri mallipohjatiedostot toimivat sivustosi toimiakseen täydellisesti. Mallit valitaan ja luodaan mallihierarkian perusteella sen mukaan, mitä malleja tietyssä teemassa on käytettävissä.
Teemana kehittäjä, voit valita mukautuksen määrän, jonka haluat toteuttaa mallien avulla. Esimerkiksi äärimmäisenä tapana voit käyttää vain yhtä mallipohjatiedostoa nimeltä index.php mallina kaikille sivuston luomille ja näyttämille sivuille. yleisempi käyttö on, että eri mallipohjatiedostot tuottavat erilaisia tuloksia maksimaalisen mukauttamisen mahdollistamiseksi.
Mallitiedostoluettelo
Tässä on luettelo WordPressin tunnistamista teematiedostoista. teemasi voi sisältää mitä tahansa muita tyylitaulukoita, kuvia tai tiedostoja. Muista vain, että Seuraavilla on erityinen merkitys WordPressille – katso lisätietoja mallihierarkiasta.
style.css Päätyylitaulukko. Tämä on sisällytettävä teemaan, ja sen on sisällettävä teeman tietotunniste. rtl.css rtl-tyylitaulukko. Tämä sisällytetään automaattisesti, jos verkkosivuston tekstisuunta on oikealta vasemmalle. Se voidaan luoda käyttämällä RTLer-laajennusta. Index.php Päämalli. Jos Teemasi tarjoaa omat mallit, index.php: n on oltava läsnä. comments.php Kommenttimalli. etusivu.php Etusivumalli. home.php Kotisivumalli, joka on oletusarvoisesti etusivu.Jos käytät staattista etusivua, tämä on sivun malli uusimmilla viesteillä. single.php Yhden viestin malli. Käytetään, kun yksittäistä viestiä kysytään. Tätä ja kaikkia muita kyselymalleja varten käytetään index.php-tiedostoa, jos kyselymallia ei ole. single- {post-type} .php Yhden postin malli, jota käytetään, kun kysytään yksittäistä viestiä mukautetusta postityypistä. Esimerkiksi single-book.php-tiedostoa käytettäisiin näyttämään yksittäisiä viestejä mukautetusta postityypistä nimeltä ”kirja”. index.php käytetään, jos mukautetun postityypin kyselymallia ei ole. page.php Sivumalli. Käytetään, kun yksittäiselle sivulle kysytään. category.php Luokkamalli. Käytetään kun kysytään luokkaa. tag.php Tagimalli. Käytetään, kun tagia kysytään. taxonomy.php Termimalli. Käytetään, kun mukautetun taksonomian termiä kysytään. author.php Kirjoittajamalli. Käytetään, kun kirjoittajaa kysytään. date.php Päivämäärä- ja aikamalli. Käytetään, kun päivämäärää tai aikaa kysytään. Vuosi, kuukausi, päivä, tunti, minuutti, sekunti. archive.php Arkistomalli. Käytetään, kun kysytään luokkaa, tekijää tai päivämäärää. Huomaa, että category.php, author.php ja date.php ohittavat tämän mallin omille kyselytyypeilleen. search.php Hakutulosmalli. Käytetään, kun haku suoritetaan. attachment.php Liitteen malli. Käytetään tarkasteltaessa yhtä liitettä. image.php Kuvaliitteen malli. Käytetään yksittäisen kuvaliitteen katselemiseen. Jos sitä ei ole, käytetään attachment.php-tiedostoa. 404.php 404-mallia ei löydy. Käytetään, kun WordPress ei löydä kyselyä vastaavaa viestiä tai sivua.
Näillä tiedostoilla on erityinen merkitys WordPressin suhteen, koska niitä käytetään index.php: n korvaajana, jos ne ovat käytettävissä, mallihierarkian mukaan ja kun vastaava ehdollinen tunniste palauttaa arvon true. Jos esimerkiksi näytetään vain yksi viesti, funktio is_single () palauttaa arvon ”true”, ja jos aktiivisessa teemalla on single.php-tiedosto, sivua luodaan kyseisellä mallilla.
Perusmallit
WordPress-teema koostuu vähintään kahdesta tiedostosta:
Molemmat näistä tiedostoista menevät Teemahakemistoon. Index.php-mallitiedosto on erittäin joustava. Sitä voidaan käyttää sisällyttämään kaikki viitteet otsikkoon, sivupalkkiin, alatunnisteeseen, sisältöön, luokkiin, arkistoihin, hakuun, virheisiin ja muihin WordPressissä luotuihin sivuihin.
Tai se voidaan jakaa moduulimalliksi tiedostot, joista kukin ottaa osan työmäärästä. Jos et tarjoa muita mallitiedostoja, WordPressillä voi olla oletustiedostoja tai -toimintoja työnsä suorittamiseksi. Esimerkiksi, jos et anna searchform.php-mallitiedostoa, WordPressillä on oletustoiminto hakulomakkeen näyttämiseen.
Tyypillisiä mallitiedostoja ovat:
- kommentit. php
- comments-popup.php
- footer.php
- header.php
- sidebar.php
Näiden mallitiedostojen avulla voit laittaa mallitunnisteet index.php-päätiedostoon sisällyttääksesi nämä muut tiedostot sinne, missä haluat niiden näkyvän lopullisella luotavalla sivulla.
Tässä on esimerkki sisältää käytön:
<?php get_sidebar(); ?><?php get_footer(); ?>
Joidenkin mallitoimintojen oletustiedostot voivat olla vanhentuneita tai niitä ei ole, ja sinun on annettava nämä tiedostot teemalla. Vanhentuneet oletustiedostot sijaitsevat versiosta 3.0 alkaen wp-includes/theme-compat
. Sinun on esimerkiksi annettava header.php, jotta funktio get_header () toimii turvallisesti, ja comments.php funktiolle comments_template ().
Lisätietoja näiden eri mallien toiminnasta ja erilaisten luomisesta lue Templates-ohjeet.
Mukautetut sivumallit
Kunkin sivumallin määrittävät tiedostot löytyvät Teemat-hakemistosta. Luo uusi mukautettu sivumalli sivulle luomalla tiedosto. Soitetaan ensimmäisen sivumallin sivumme snarfer.php. Laita snarfer.php-tiedoston yläosaan seuraava:
<?php/*Template Name: Snarfer*/?>
Yllä olevat code määrittelee tämän snarfer.php-tiedoston ”Snarfer” -malliksi. Luonnollisesti ”Snarfer” voidaan korvata useimmilla teksteillä sivumallin nimen muuttamiseksi. Tämän mallin nimi näkyy Teemaeditorissa linkkinä tämän muokkaamiseen. tiedosto.
Tiedosto voidaan nimetä melkein mille tahansa .php-laajennuksella (katso varattujen teemojen tiedostonimet niille tiedostonimille, joita sinun ei pitäisi käyttää; nämä ovat erityisiä tiedostonimiä, jotka WordPress varaa tiettyihin tarkoituksiin).
Yllä olevien viiden koodirivin noudattaminen on sinun tehtäväsi. Loput kirjoittamasi koodi hallitsee sitä, miten Snarfer-sivumallia käyttävät sivut näytetään. Katso WordPress-mallin eri toimintojen kuvaus kohdasta Mallitunnisteet. Voit käyttää tätä tarkoitusta varten. Saatat olla helpompaa kopioida jokin muu malli (ehkä sivu.php tai index.php) sivulle snarfer.php ja sitten lisää edellä mainitut viisi koodiriviä tiedoston alkuun.Tällä tavoin sinun tarvitsee vain muuttaa HTML- ja PHP-koodia sen sijaan, että luot kaiken tyhjästä. Esimerkkejä on esitetty alla. Kun olet luonut sivumallin ja sijoittanut sen teeman hakemistoon, se on valittavissa, kun luot tai muokkaat sivua. (Huomaa: Kun luot sivua tai muokkaat sitä, Sivumalli-vaihtoehto ei tule näkyviin, ellei vähintään yksi malli on määritelty yllä olevalla tavalla.)
Kyselypohjaiset mallitiedostot
WordPress voi ladata erilaisia malleja eri kyselytyypeille. Voit tehdä tämän kahdella tavalla: osana sisäänrakennettua mallihierarkiaa ja käyttämällä ehdollisia tunnisteita mallitiedoston silmukassa.
Jos haluat käyttää mallihierarkiaa, sinun on periaatteessa annettava erikoiskäyttöiset mallitiedostot, jotka käytetään automaattisesti indeksin.php ohittamiseen. Jos esimerkiksi Teemasi tarjoaa mallin nimeltä category.php ja luokkaa kysytään, category.php ladataan index.php: n sijaan. Jos category.php ei ole läsnä, index.php -ohjelmaa käytetään tavalliseen tapaan.
Saat tarkempia tietoja mallihierarkiassa tarjoamalla af iile kutsui esimerkiksi kategoria-6.php – tätä tiedostoa käytetään luokan.php sijaan, kun luodaan sivu luokalle, jonka tunnistenumero on 6. (Löydät luokan tunnistenumerot kohdasta Hallitse > Luokat, jos olet kirjautunut sisään sivuston järjestelmänvalvojana WordPress-versiossa 2.3 ja sitä vanhemmissa versioissa. WordPress 2.5: ssä ID-sarake poistettiin Järjestelmänvalvoja-paneeleista. Voit etsiä luokan tunnuksen napsauttamalla Muokkaa luokkaa ja etsimällä URL-osoiteriviltä cat_ID-arvoa. Se näyttää ”… categories.php? Action = edit & cat_ID = 3” missä ”3” on luokan tunnus). Katso tarkemmin tämän prosessin toiminnasta kohdasta Luokkamallit.
Jos teemallasi on oltava vielä enemmän hallintaa käytetyissä mallitiedostoissa kuin mitä mallihierarkiassa on tarjolla, voit käyttää ehdollista Tunnisteet. Ehdollinen tunniste tarkistaa periaatteessa, onko jokin tietty ehto totta WordPress Loopissa, ja voit sitten ladata tietyn mallin tai laittaa tietyn tekstin näytölle kyseisen ehdon perusteella.
Esimerkiksi, jos haluat luoda erottuvan tyylitaulukon postista, joka löytyy vain tietystä luokasta, koodi voi näyttää tältä:
Tai kyselyn avulla se voi näyttää tältä:
<?php$post = $wp_query->post;if ( in_category( "9" ) ) { get_template_part( "single2" );} else { get_template_part( "single1" );}?>
Kummassakin tapauksessa tämä esimerkkikoodi saa aikaan erilaisia malleja riippuen näytettävän viestin luokasta. Kyselyehdot eivät rajoitu luokkiin, mutta katso kaikki ehdot vaihtoehdoista Ehdolliset tagit -artikkelista.
Mukautettujen mallien määrittely
Voit määrittää WordPress-laajennusjärjestelmän avulla lisää malleja, jotka näytetään omien mukautettujen ehtojesi perusteella. Tämä lisäominaisuus voidaan suorittaa käyttämällä ”template_include” -toimintokoukkua. Lisätietoja laajennusten luomisesta löytyy Plugin API -sovelluksesta.
Sisältävät mallitiedostot
Toisen mallin lataaminen (muu kuin otsikko, sivupalkki, alatunniste, jossa on ennalta määritetyt komennot, kuten get_header ()) malliksi, voit käyttää get_template_part (). Tämän ansiosta teeman on helppo käyttää koodiosia uudelleen.
Tiedostoihin viittaaminen mallista
Kun viitat muihin saman teeman tiedostoihin, vältä kovakoodattuja URI-tiedostoja ja tiedostopolkuja. Sen sijaan viittaa URI-tiedostoihin ja tiedostopolkuihin bloginfo (): katso Tiedostoihin viittaaminen mallista.
Huomaa, että tyylitaulukossa käytetyt URI: t ovat suhteessa tyylitaulukkoon, ei sivuun, joka viittaa tyylitaulukkoon. Jos esimerkiksi sisällytät teemaan teema / hakemiston, sinun on määritettävä CSS: ssä vain tämä suhteellinen hakemisto, kuten:
h1 { background-image: url(images/my-background.jpg);}
Laajennussovellusliittymän koukut
Teemoja kehitettäessä on hyvä pitää mielessä, että teema on määritettävä siten, että se toimii hyvin kaikkien WordPress-laajennusten kanssa, jotka käyttäjät saattavat päättää asentaa. Laajennukset lisäävät toiminnallisuutta WordPressiin Toiminto Koukut ”(lisätietoja on Plugin-sovellusliittymässä).
Useimmat toimintokoukut ovat WordPressin PHP-ydinkoodin sisällä, joten teemalla ei tarvitse olla mitään erityisiä tunnisteita toimiakseen. Mutta muutama toiminto Koukkujen on oltava läsnä teemalla, jotta laajennukset voivat näyttää tietoja suoraan otsikossa, alatunnisteessa, sivupalkissa tai sivun rungossa. Tässä on luettelo erityisistä Action Hook -mallimerkkeistä, jotka sinun on sisällytettävä:
wp_enqueue_scripts Käytetään teematoimintotiedostossa. Käytetään ulkoisten komentosarjojen ja tyylitaulukoiden lataamiseen. wp_head () Siirry < -päähän > teeman elementti otsikossa.php. Esimerkki laajennuksen käytöstä: lisää JavaScript-koodi. wp_footer () Siirry footer.php-tiedostoon juuri ennen viimeistä < / body > -tunnistetta. Esimerkki laajennuksen käytöstä: lisää PHP-koodi, joka on suoritettava kaiken muun jälkeen, alatunnisteen alaosaan.Hyvin yleisesti käytetty verkkotilastokoodin, kuten Google Analytics, lisäämiseen. wp_meta () Menee tyypillisesti < li > Meta < / li > osio Teeman valikosta tai sivupalkista; sidebar.php-malli. Esimerkki laajennuksen käytöstä: sisälly pyörivä mainos tai tunnisteiden pilvi. Comment_form () Siirtyy comments.php-tiedostoon suoraan ennen tiedostoa ” s viimeinen tagi (< / div >). Esimerkki laajennuksen käytöstä: näytä kommentin esikatselu.
Tosielämän käyttöesimerkkinä löydät nämä plugin-koukut oletusteemojen malleihin.
Teeman mukauttamisen sovellusliittymä
WordPress 3.4: sta alkaen uusi Teeman räätälöintiominaisuus on oletusarvoisesti käytettävissä melkein kaikille WordPress-teemoille. Teeman mukauttamisen järjestelmänvalvojan sivu täytetään automaattisesti asetuksilla, joille teema julistaa tuen add_theme_support (): lla tai Asetukset-sovellusliittymällä, ja antaa järjestelmänvalvojille mahdollisuuden nähdä reaaliajassa tekemiensä muutosten pysyvät esikatselut.
Teema- ja laajennuskehittäjien, jotka ovat kiinnostuneita lisäämään uusia vaihtoehtoja teeman Teeman mukauttaminen -sivulle, tulisi nähdä Teeman mukauttamisen sovellusliittymän ohjeet. Teeman mukauttamisen sovellusliittymän lisäoppaat ovat saatavilla Ottopress.com-verkkosivustolla.
Epäluotettavat tiedot
Sinun tulisi välttää teeman dynaamisesti luotua sisältöä, etenkin HTML-määritteisiin tuotavaa sisältöä. Kuten WordPress-koodausstandardeissa todetaan, attribuutteihin menevä teksti tulisi suorittaa esc_attr (): n kautta siten, että yksi tai kaksoislainausmerkit eivät lopeta attribuutin arvoa ja mitätöivät XHTML: n ja aiheuttavat tietoturvaongelman. Yleisiä tarkistettavia paikkoja ovat otsikko-, alt- ja arvo-attribuutit.
Yleisiä tapauksia varten on vain vähän erityisiä mallimerkintöjä Tarvitaan turvallinen lähtö. Yksi tällainen tapaus liittyy julkaisun otsikon kirjoittamiseen otsikkomääritteeseen käyttämällä_title_attribute () -tunnusta (), jotta vältetään tietoturva-aukko. Tässä on esimerkki viestin otsalinkin otsikkomääritteen oikeasta pakenemisesta, kun käytetään käännettävää tekstiä:
<a href="<?php the_permalink(); ?>" title="<?php sprintf( __( "Permanent Link to %s", "theme-name" ), the_title_attribute( "echo=0" ) ); ?>"><?php the_title(); ?></a>
käännöstuki / I18n
Varmista kielen lokalisoinnin sujuva siirtyminen käyttämällä WordPressin gettext-pohjaisia i18n-toimintoja kaiken käännettävän tekstin käärimiseksi mallitiedostoihin.Tämä helpottaa käännöstiedostojen liittämistä ja kääntämistä tarrojen, otsikoiden ja muun mallin tekstin sivuston nykyinen kieli. Katso lisää: WordPress Localization ja I18n for WordPress Developers.
Teemaluokat
Toteuta seuraavat mallimerkinnät lisätäksesi WordPressin luomia luokan määritteitä body-, viesti- ja kommenttielementteihin. Käytä postikursseja vain The Loop -elementteihin.
- body_class ()
- post_class ()
- comment_class ()
Mallitiedostojen tarkistuslista
Kun kehität teemaa, tarkista mallitiedostosi seuraavien mallitiedostostandardien mukaisesti.
Document Head (header.php)
- Käytä oikeaa DOCTYPE-tunnusta.
- Avautuvan < html > -tunnisteen tulisi sisältää language_attributes ( ).
- < meta > -sarjaelementti tulisi sijoittaa ennen kaikkea muuta, mukaan lukien < title > -elementti.
- Määritä < -meta bloginfolla () > merkistö- ja kuvauselementit.
- Käytä wp_title () -asetusta < -otsikon > -elementti. Katso miksi.
- Lisää syötelinkkejä automaattisten syötelinkkien avulla.
- Lisää kutsu osoitteeseen wp_head () ennen viimeistä < / head > -tunniste. Laajennukset käyttävät tätä toimintokoukkua omien komentosarjojen, tyylitaulukoiden ja muiden toimintojen lisäämiseen.
- Älä linkitä teeman tyylitaulukoita otsikkomalliin. Käytä sen sijaan teematoiminnossa wp_enqueue_scripts -toimintokoukkua.
Tässä on esimerkki oikein muotoilusta HTML5-yhteensopivasta pääalueesta:
siirtymisvalikot (header.php )
- Teeman päävalikossa on tuettava mukautettua valikkoa, jossa on wp_nav_menu ().
- Valikoiden tulisi tukea pitkiä linkkien otsikoita ja suurta määrää luettelokohteita. Nämä kohteet eivät saa rikkoa ulkoasua tai ulkoasua.
- Alivalikon kohteiden tulisi näkyä oikein. Jos mahdollista, tuki avattavien valikkojen tyylejä alivalikkokohteille. Pudotusvalikot, joiden avulla valikon syvyys voidaan näyttää sen sijaan, että näytetään vain ylätaso.
- Teema tulisi widgetoida mahdollisimman täydellisesti. Kaikkien asettelun alueiden, jotka toimivat kuten widget (tagipilvi, blogroll, luokkaluettelo) tai voivat hyväksyä widgetejä (sivupalkki), tulisi sallia widgetit.
- Sisältö, joka näkyy oletuksena widgetoiduilla alueilla (kovakoodattu) esimerkiksi sivupalkkiin) pitäisi kadota, kun widgetit otetaan käyttöön Ulkoasu > -widgeteistä.
Alatunniste (footer.php)
- Käytä wp_footer () -kutsua ilmestyäksesi juuri ennen vartiotunnisteen sulkemista.
<?php wp_footer();
read more