Innholdsfortegnelse
Mange ganger som utviklere må vi lage personlig innhold eller funksjonalitet på en organisert måte og registrere våre egne verdier og felt som Wordpress ikke har som standard, det er også viktig at det kan gjenbrukes.Jeg ser i malkatalogen etter funksjonene.php -filen, her for eksempel i tjue -ti -malen.
Inne i filen ser vi om funksjonen eksisterer add_theme_support ('post-miniatyrbilder') som er den som tillater bruk av miniatyrbilder, hvis det ikke er det, vil jeg legge det til og jeg vil også legge til en variabel for en bestemt størrelse.
I dette tilfellet har malen allerede støtte for miniatyrbilder, så jeg legger bare til min tilpassede størrelse.
Dette betyr at når du tilordner egenskapstommelen til et bilde, blir det automatisk størrelsen til 80 piksler bred og 80 piksler høy.
Vi begynner å lage funksjonaliteten for dette, det er bedre å skille koden, den kan settes på slutten av funksjonsfilen, men for å fungere mer ryddig vil vi sette den i en katalog Komponenter
hvor vi skal lage en fil som heter real estate.php, så vi har den separate komponenten.
_x ('Eiendom', 'generelt navn på posttype'), 'singular_name' => _x ('Eiendom', 'posttype entallnavn'), 'add_new' => _x ('Ny eiendom', 'real eiendom '),' add_new_item '=> __ ("New Property"),' edit_item '=> __ ("Edit Property"),' new_item '=> __ ("New Property"),' view_item '=> __ ( "View Property"), 'search_items' => __ ("Search property"), 'not_found' => __ ('No property found'), 'not_found_in_trash' => __ ('No property'), 'parent_item_colon' = > ''); // Jeg lager argumentene for databasen $ inmobiliaria_args = array ('labels' => $ inmobiliaria_labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'query_var' => true, 'rewrite' => true, 'hierarchical' => false, 'menu_position' => null, 'capability_type' => 'post', 'supports' => array ('tittel', 'utdrag', 'redaktør', ' thumbnail '),' menu_icon '=> get_bloginfo (' template_directory ').' /images/photo-album.png.webp '// 16x16 png hvis du vil ha et ikon); // Registrer innlegget register_post_type ('inmobiliaria', $ inmobiliaria_args); ?> var13 ->
Deretter inkluderer vi den i functions.php -filen på slutten eller i en seksjon for komponentene, i dette tilfellet setter vi den sammen med de andre konfigurasjonene.
Vi kommer til å skrive inn vår wordpress-administrator, hvis den er aktiv, bør vi oppdatere eller lukke økten og gå inn på nytt for å oppdatere endringene som er gjort i functions.php-filen, som er den som påberoper komponenten.
Som vi kan se, har en ny eiendom meg blitt lagt til, for å kunne administrere våre egne data for denne tilpassede innleggskomponenten.
Vi vil også opprette noen kategorier eller taksonomier slik at søknaden vår blir mer komplett. For eksempel typen eiendom, hus, leilighet, etc. og en annen for provinser. For dette vil vi i eiendomsfilen nedenfor legge til følgende kode, hver blokk er en kategori og vi kan lage de vi ønsker.
true, 'label' => 'Egenskapstyper', 'singular_label' => 'Type', 'rewrite' => true)); }?> var13 -> true, 'label' => 'Provinser', 'singular_label' => 'provins', 'rewrite' => true)); }?> var13 ->
Når vi oppdaterer vår wordpress -administrator, kan vi se begge kategoriene i eiendomsmenyen.
Lister våre egne data
Wordpress -oppføringene og siden i administratoren har alltid samme tittel, forfatter og datodata, i dette tilfellet må vi liste opp dataene til eiendomskomponenten. For dette skal vi tilpasse kolonnene i listen
'', 'title' => 'Tittel', 'photo' => 'Foto', 'type' => 'Egenskapstype', 'provincie' => 'Provins', 'date' => 'Dato',); returner $ kolonner; }?> var13 ->
Etter å ha angitt titlene og typen kolonner som skal vises, fortsetter vi med å tildele dataene fra forespørsler som vi vil utføre i databasen og tildele dataene til hver kolonne, i dette tilfellet søker vi i kategoriene med wordpress -funksjonen get_the_term_list ().
ID, 'type', '', ',', '' '); gå i stykker; case 'province': echo get_the_term_list ($ post-> ID, 'province', '', ',', ''); gå i stykker; }}} // legg til miniatyrbilder i kolonnen add_filter ('manage_posts_columns', 'showphoto', 5); add_filter ('manage_pages_columns', 'showphoto', 5); add_filter ('manage_custom_post_columns', 'showphoto', 5); // Legg til kolonnefunksjonen showphoto ($ cols) {$ cols ['photo'] = __ ('Thumbnail'); return $ cols; }?> var13 ->
Når det gjelder bildet, lager vi en funksjon for å søke etter bildet og legge det til tilpassede_post_kolonner Hvis vi vil, kan vi også legge den til for støtte for innlegg og sider, bortsett fra komponenten vår, ellers fjerner vi disse linjene.
<? // legg til miniatyrbilder i kolonnen
add_filter ('manage_posts_columns', 'showphoto', 5);
add_filter ('manage_pages_columns', 'showphoto', 5);
add_filter ('manage_custom_post_columns', 'showphoto', 5);
// Legg til kolonnen
funksjon showphoto ($ cols) {
$ cols ['photo'] = __ ('Thumbnail');
return $ cols;
}
?>
Vi lagrer eiendommen.php -filen der vi gjorde disse endringene og oppdaterte wordpress -administratorsiden. Vi skal teste søknaden vår ved å registrere en eiendom, for dette vil vi tidligere registrere typer eiendomskategorier: Hus, leilighet, tomt, etc.
Deretter vil vi registrere noen provinser Barcelona, Madrid, etc.
Så går vi til menyen Egenskaper> Ny eiendom og vi registrerer dataene som en vanlig wordpress -oppføring, bare vi vil ha kategorien og et bilde eller foto som skal settes inn som et fremhevet bilde.
Husk at bildene vil ha en størrelse på 80 x 80 piksler for eiendomslisten, vi hadde definert dette i vår tilpassede størrelse eiendom-tommel, så det beste er at vi bruker firkantede bilder slik at de ikke kuttes, det ideelle ville være 500x500 piksler.
Når vi lagrer endringene, kan vi gå for å se listen over eiendommer, og vi vil se våre tilpassede kolonner, med alle funksjonene aktivert for å søke, filtrere, sortere alfabetisk eller se bare noen provinser, etc.
Dette vil være veldig enkelt å administrere, og vi kan også legge til flere funksjoner hvis vi trenger å endre tilpasset innleggstype eller tilpasset innleggstype. Når det gjelder gjenbruk, er komponenten optimal, siden hvis vi vil bruke den i et annet prosjekt, kopierer vi ganske enkelt den egendefinerte innleggstypen, inkluderer den i vår functions.php -fil, og vi vil ha den tilgjengelig for bruk uten å måtte omprogrammere den.
Så med en enkel kode kan vi vise dette på hjemmesiden eller i en del av nettstedet vårt, søk etter provins eller eiendomstype.
Vi kan også utvide komponenten ved å legge til flere funksjoner eller komplementere den med andre plugins, for eksempel for å implementere den på flere språk med Qtraslator eller legg til flere bilder Flere utvalgte bilder for å ha flere fremhevede bilder og lage et fotogalleri for hver eiendom.
Å bytte noen linjer kan også brukes for et bilbyrå der kategoriene var bilmerker og modeller eller for et reisebyrå der vi ville ha pakker og destinasjoner, mulighetene er uendelige, alt avhenger av behovene og fantasien vår.