Luo mukautettu WordPress-postityyppi

Kirjoittaja: Monica Porter
Luomispäivä: 14 Maaliskuu 2021
Päivityspäivä: 17 Saattaa 2024
Anonim
How to create custom post type in wordpress [ step by step tutorial ]
Video: How to create custom post type in wordpress [ step by step tutorial ]

Sisältö

  • Tarvittava tieto: PHP, kokemus WordPressistä
  • Edellyttää: WordPress v3.1 +
  • Projektin aika: 20 minuuttia
  • Tukitiedosto

Mukautetut postityypit otettiin käyttöön WordPress v3.0: ssa, jotta kehittäjät voivat helposti lisätä erityyppistä sisältöä laajennuksiinsa ja teemoihinsa, jolloin voit helposti laajentaa WordPressiä ja tehdä siitä enemmän CMS: n.

Tässä opetusohjelmassa näemme tarkalleen, mikä WordPress-mukautettu postityyppi on ja kuinka niitä voidaan käyttää heti laajennuksissa ja teemoissa.

01. Mitkä ovat WordPressin mukautetut postityypit?

Yksinkertaisimmassa muodossaan mukautettu WordPress-postityyppi edustaa tietyntyyppistä sisältöä. Älä hämmenty siitä, että sen otsikossa on "viesti". Se voi kirjaimellisesti edustaa mitä haluat. Joten esimerkiksi WordPressissä on useita oletusviestityyppejä:

  • Viestit
  • Sivut
  • Liitteet
  • Tarkistukset
  • Nav-valikot

Yritä ajatella WordPressin mukautettua postityyppiä keinona manipuloida sisältöä samalla tavalla kuin blogikirjoitusta, mutta paljon enemmän hallintaa sen näyttötavasta. Varoituksen sana on kuitenkin, että jos haluat vain luokitella sisältöäsi eri tavoin, harkitse luokkien, tunnisteiden tai mukautettujen taksonomioiden käyttöä, ennen kuin ryhdyt luomaan mukautettuja postityyppejä.


02. Kuinka luon mukautetun WordPress-postityypin?

WordPress-mukautetun postityypin luominen on todella uskomattoman yksinkertaista, ja kun näet kuinka paljon työtä WordPress tekee sinulle, alat ymmärtää kuinka tehokkaita ne voivat olla. Lisää seuraava koodi teeman toiminnot.php-tiedostoon:

add_action (’init’, ’create_post_type’);
function create_post_type () {
register_post_type (’kirja’,
taulukko (
’Tags’ => taulukko (
’Nimi’ => __ (’kirjat’),
’Singular_name’ => __ (’kirja’)
),
’Public’ => totta,
’Has_archive’ => true
)
);
}

Se on kirjaimellisesti kaikki mitä tarvitset WordPress-mukautetun postityypin luomiseen. Yllä olevassa esimerkissä luomme mukautetun postityypin nimeltä "kirja", jota käytämme luomaan kirjatietokannan. Annamme sille tarroja, asetamme muutaman vaihtoehdon, ja olemme hyviä mennä.

Yllä oleva esimerkki on erittäin yksinkertainen, mutta se osoittaa mukautettujen postityyppien luomisen yksinkertaisuuden. Jos siirryt WordPress-hallintapaneeliin, sinun pitäisi nähdä uusi valikkokohta nimeltä Kirjat. Mene eteenpäin ja pelaa uuden Kirjat-osion kanssa. Koska asetamme ”public => true”, WordPress luo meille kaiken järjestelmänvalvojan käyttöliittymän, mikä tekee elämästämme paljon yksinkertaisemman.


03. Kirjatietokannan luominen

Viimeisessä esimerkissämme loimme hyvin yksinkertaisen WordPress-mukautetun postityypin, mutta raapimme vain pinnan siitä, mikä on mahdollista mukautetuilla postityypeillä. Likaistaan ​​kätemme ja luodaan täysimittainen mukautettu postityyppi.

// Luo postityyppi
add_action (’init’, ’create_post_type’);
function create_post_type () {
$ args = taulukko (
’Labels’ => post_type_labels (’kirja’),
’Public’ => totta,
’Public_queryable’ => tosi,
’Show_ui’ => tosi,
’Show_in_menu’ => tosi,
’Query_var’ => tosi,
’Rewrite’ => true,
’Capability_type’ => ’viesti’,
’Has_archive’ => true,
’Hierarkkinen’ => väärä,
’Menu_position’ => null,
’Tukee’ => array (’otsikko’,
'Toimittaja',
"Kirjailija",
'Pikkukuva',
'ote',
'Kommentit'
)
);

register_post_type (’kirja’, $ args);
}

// Aputoiminto tarrojen luomiseen
funktio post_type_labels ($ singular, $ plural = ’’)
{
if ($ plural == ’’) $ plural = $ singular. ’’;

paluumatriisi (
’Nimi’ => _x ($ monikko, ’postityypin yleinen nimi’),
’Singular_name’ => _x ($ singular, ’post type singular name’),
’Add_new’ => __ (’Lisää uusi’),
’Add_new_item’ => __ (’Lisää uusi’. $ Yksikkö),
’Edit_item’ => __ (’Edit’. $ Singular),
’New_item’ => __ (’New’. $ Singular),
’View_item’ => __ (’View’. $ Singular),
’Search_items’ => __ (’Search’. $ Monikko),
’Not_found’ => __ (’Ei’. $ Monikko. ’Löydetty’),
’Not_found_in_trash’ => __ (’Ei’. $ Monikko. ’Löydetty roskakorista’),
’Parent_item_colon’ => ’’
);
}

// lisää suodatin varmistaaksesi, että kirja tai kirja näytetään, kun käyttäjä päivittää kirjaa
add_filter (’post_updated_messages’, ’post_type_updated_messages’);
function post_type_updated_messages ($ viestit) {
globaali $ post, $ post_ID;

$ messages [’kirja’] = taulukko (
0 => ’’, // Ei käytössä. Viestit alkavat hakemistosta 1.
1 => sprintf (__ (’Kirja päivitetty. A href ="% s "> Näytä kirja / a>’), esc_url (get_permalink ($ post_ID))),
2 => __ (’Mukautettu kenttä päivitetty.’),
3 => __ (’Mukautettu kenttä poistettu.’),
4 => __ ('Kirja päivitetty.'),
/ * kääntäjät:% s: tarkistuksen päivämäärä ja aika * /
5 => isset ($ _ GET [’versio’])? sprintf (__ (’Kirja palautettu versioon% s’), wp_post_revision_title ((int) $ _GET [’revisio’], false)): false,
6 => sprintf (__ (’Kirja julkaistu. A href ="% s "> Näytä kirja / a>’), esc_url (get_permalink ($ post_ID))),
7 => __ ('Kirja tallennettu.'),
8 => sprintf (__ ('Kirja lähetetty. Esikatselu = "_ blank" href = "% s"> Esikatsele kirja / a>'), esc_url (add_query_arg ('esikatselu', 'true', get_permalink ($ post_ID)) )),
9 => sprintf (__ (’Kirja ajoitettu: vahva>% 1 $ s / vahva>. A target =" _ blank "href ="% 2 $ s "> Esikatsele kirja / a>’),
// kääntäjät: Julkaise laatikon päivämäärämuoto, katso php.net/date
date_i18n (__ (’M j, Y @ G: i’), strtotime ($ post-> post_date)), esc_url (get_permalink ($ post_ID))),
10 => sprintf (__ ('Kirjaluonnos päivitetty. A target = "_ blank" href = "% s"> Esikatsele kirja / a>'), esc_url (add_query_arg ('esikatselu', 'true', get_permalink ($ post_ID)) ))),
);

palauta $ viestit;
}


Joten mitä täällä tapahtuu? Ensinnäkin, luomme mukautetun postityypin ja asetamme sen avulla suurimman osan käytettävissä olevista vaihtoehdoista. En aio selittää, mitä kaikki nämä vaihtoehdot tekevät täällä, koska WordPress Codex selittää ne erittäin hyvin.

Toinen näkemäsi toiminto on yksinkertaisesti auttajatoiminto, jonka avulla on helppo luoda tarroja, joita WordPress-järjestelmänvalvoja käyttää mukautettuun postityyppiin. Voit asettaa $ labels taulukon manuaalisesti, jos haluat, mutta minusta tämä on puhtaampaa ja helpompaa.

Viimeinkin lisäämme suodattimen päivitettyjen viestien muuttamiseksi. Joten nyt aina, kun WordPress näyttää päivitysviestin tälle mukautetulle postityypille, se näyttää oikeat tarrat (eikä vain käytä "post" koko ajan).

04. Kirjamme katselu

Joten nyt meillä on tämä mahtava mukautettu postityyppi, jota voimme hallita WordPress-järjestelmänvalvojalla. Entä kirjojen tosiasiallinen näyttäminen sivustollasi? No, WordPress on katsonut sinut.

Teemoissasi voidaan käyttää useita malleja mukautetun postityypin sisällön automaattiseen näyttämiseen:

  • yksi- {posttype} .php - Samalla tavalla kuin viestit näytetään omalla sivullaan single.php-tiedostolla, mukautetut postityypit käyttävät single- {posttype} .php -ohjelmaa, jos se on käytettävissä. Joten yllä olevassa esimerkissämme voisimme luoda single-book.php tiedosto ja tuoteviestit näytetään kyseisen mallin avulla.
  • arkisto- {posttype} .php - WordPress v3.1 -versiosta alkaen voit käyttää myös arkistotyyppimallia. Samalla tavalla kuin viestit näytetään omassa arkistossaan archive.php: n kanssa, mukautetut postityypit käyttävät archive- {posttype} .php -ohjelmaa, jos se on käytettävissä.

Nyt näiden mallitiedostojen saatavuus on hienoa, mutta joskus sinun on hankaloitava hieman monimutkaisemmaksi ja käytettävä mukautettua kyselyä hienorakeiseen ohjaukseen. Onneksi WP_Query on katsonut meidät antamalla meille määrittää post_type-parametrin.

$ args = array (’post_type’ => ’kirja’, ’posts_per_page’ => 10);
$ loop = uusi WP_Query ($ args);
while ($ loop-> have_posts ()): $ loop-> the_post ();
otsikko();
kaiku ’div>’;
sisältö();
kaiku ’/ div>’;
lopulta;

05. Päätelmä

Sinulla on nyt täysin toimiva kirjatietokanta, jota voit hallita WordPress-järjestelmänvalvojan kautta, jolloin voit näyttää kirjoja WordPress-sivustollasi. Tämä opetusohjelma toimii vain johdantona siihen, mitä mukautetuilla postityypeillä voidaan saavuttaa. Ne ovat uskomattoman tehokas WordPress-ominaisuus, joten käytä niitä huolellisesti, mutta älä pelkää venyttää mielikuvitustasi: on niin monia asioita, jotka voit helposti saavuttaa käyttämällä mukautettuja postityyppejä.

06. Lisähuomautuksia

Ennen kuin olemme lopettaneet, on muutama lisäpiste, jotka kannattaa mainita:

  • Muokattuja postityyppejä luodessa katsotaan parhaaksi käytännöksi, että postityyppi lisätään ainutlaatuisella nimitilalla, jotta vältetään ristiriidat muiden teemojen ja laajennusten kanssa. Vaikka ole varovainen, että mukautetun postityypin nimen kokonaispituus on enintään 20 merkkiä, muuten tapahtuu outoja asioita.
  • Älä käytä ”wp_” nimitilan etuliitteenä, koska se on varattu sisäisille WordPress-nimille.
  • Jos saat 404 sivua, kun yrität ensin nähdä mukautetut postityypit, älä paniikkia. Käy vain Asetukset> Permalinks -sivulla ja tämä tyhjentää uudelleenkirjoitussäännöt. Jos olet laajennusten kirjoittaja, varmista, että olet muuttanut uudelleenkirjoitussäännöt laajennuksen aktivoinnissa.

Piditkö tästä? Lue nämä!

  • Loistava Wordpress-opetusohjelman valinta
  • Luo täydellinen tunnelmalauta näiden ammattivinkkien avulla
  • Lopullinen opas logon suunnitteluun
  • Suosikkiverkkofontimme - ja ne eivät maksa penniäkään
Mielenkiintoiset Artikkelit
Uusi älykäs työkalu helpottaa 3D-tulostusta
Löytää

Uusi älykäs työkalu helpottaa 3D-tulostusta

"Ennen kuin omi tat 3D-tulo tinta, et ymmärrä, että tukien poi taminen ja tulo tu virheiden poi taminen voi olla turhauttavaa ja aikaa vievää", anoo Phil Newman 3D-t...
10 upeaa uutta työkalua perinteisille taiteilijoille huhtikuussa
Löytää

10 upeaa uutta työkalua perinteisille taiteilijoille huhtikuussa

Uu i loi tava uu i ta kuopa mangataide innoitti meitä et imään parhaita työkaluja niille, jotka haluavat hallita lomaketta, tä ä kuu a. Valit imme ympäriltämme ...
Päivän fontti: Hannah
Löytää

Päivän fontti: Hannah

Täällä Creative Bloqi a olemme uuria typografian faneja ja et imme jatkuva ti uu ia ja jännittäviä kirja imia - etenkin ilmai ia ​​fontteja. Joten jo tarvit et uu inta mu...