Oprettelse af tilpassede indlæg i WordPress (tilpassede indlægstyper)

Indholdsfortegnelse
Mange gange som udviklere er vi nødt til at oprette personligt indhold eller noget funktionalitet på en organiseret måde og registrere vores egne værdier og felter, som Wordpress ikke har som standard, det er også vigtigt, at det kan genbruges.
Jeg kigger i skabelonmappen efter funktioner.php -filen, her for eksempel inden for de tyve ti skabeloner.

Inde i filen ser vi om funktionen findes add_theme_support ('post-thumbnails') som er den der tillader brug af miniaturebilleder, hvis det ikke er det, vil jeg tilføje det, og jeg vil også tilføje en variabel til en bestemt størrelse.

I dette tilfælde har skabelonen allerede understøttelse af miniaturebilleder, så jeg tilføjer bare min brugerdefinerede størrelse.
Det betyder, at når du tildeler egenskab-tommelfinger til et billede, vil det automatisk blive dimensioneret til 80 pixels bredt og 80 pixels højt.
Vi begynder at oprette funktionaliteten til dette, det er bedre at adskille koden, den kunne placeres i slutningen af ​​funktionsfilen, men for at fungere mere velordnet vil vi sætte den i et bibliotek Komponenter
hvor vi vil oprette en fil kaldet real estate.php, så vi har den separate komponent.
 _x ('Fast ejendom', 'generelt navn på posttype'), 'singular_name' => _x ('Fast ejendom', 'post type ental navn'), 'add_new' => _x ('Ny ejendom', 'fast ejendom ejendom '),' add_new_item '=> __ ("Ny ejendom"),' edit_item '=> __ ("Rediger ejendom"),' new_item '=> __ ("Ny ejendom"),' view_item '=> __ ( "Vis ejendom"), 'search_items' => __ ("Søg ejendom"), 'not_found' => __ ('Ingen ejendom fundet'), 'not_found_in_trash' => __ ('Ingen ejendom'), 'parent_item_colon' = > ''); // Jeg opretter argumenterne 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 ('titel', 'uddrag', 'editor', ' thumbnail '),' menu_icon '=> get_bloginfo (' template_directory ').' /images/photo-album.png.webp '// 16x16 png, hvis du vil have et ikon); // Registrer posten register_post_type ('inmobiliaria', $ inmobiliaria_args); ?> var13 -> 

Derefter inkluderer vi det i filen functions.php i slutningen eller i et afsnit for komponenterne, i dette tilfælde sætter vi det sammen med de andre konfigurationer.

Vi kommer til at indtaste vores wordpress-administrator, hvis den er aktiv, skal vi opdatere eller lukke sessionen og genindtaste for at opdatere de ændringer, der er foretaget i filen functions.php, som er den, der påberåber komponenten.
Som vi kan se, er der tilføjet en ny fast ejendom mig for at kunne administrere vores egne data for denne tilpassede postkomponent.

Vi vil også oprette nogle kategorier eller taksonomier, så vores ansøgning er mere komplet. For eksempel typen af ​​ejendom, hus, lejlighed osv. Og en anden for provinser. Til dette vil vi i ejendomsfilen nedenfor tilføje følgende kode, hver blok er en kategori, og vi kunne oprette dem, vi ønsker.
 true, 'label' => 'Egenskabstyper', 'singular_label' => 'Type', 'rewrite' => true)); }?> var13 -> true, 'label' => 'Provinser', 'singular_label' => 'provins', 'rewrite' => true)); }?> var13 -> 

Så når vi opdaterer vores wordpress -administrator, kan vi se begge kategorier i menuen for fast ejendom.

Lister vores egne data
Wordpress -indgange og side i administratoren har altid samme titel, forfatter og datodata, i dette tilfælde skal vi angive dataene for ejendomskomponenten. Til dette vil vi tilpasse listens kolonner
 '', 'title' => 'Titel', 'photo' => 'Foto', 'type' => 'Ejendomstype', 'provincie' => 'Provins', 'date' => 'Dato',); returner $ kolonner; }?> var13 -> 

Efter at have angivet titlerne og typen af ​​kolonner, der skal vises, fortsætter vi med at tildele data fra forespørgsler, som vi vil udføre i databasen og tildele dataene til hver kolonne, i dette tilfælde søger vi i kategorierne med wordpress -funktionen get_the_term_list ().
 ID, 'type', '', ',', ',' '); pause; case 'province': echo get_the_term_list ($ post-> ID, 'province', '', ',', ''); pause; }}} // tilføj miniaturebilleder til kolonne add_filter ('manage_posts_columns', 'showphoto', 5); add_filter ('manage_pages_columns', 'showphoto', 5); add_filter ('manage_custom_post_columns', 'showphoto', 5); // Tilføj kolonnefunktionen showphoto ($ cols) {$ cols ['photo'] = __ ('Thumbnail'); returnere $ cols; }?> var13 -> 

I tilfælde af billedet opretter vi en funktion til at søge efter fotoet og tilføje det til tilpassede_post_kolonner Hvis vi vil, kan vi også tilføje det til understøttelse af indlæg og sider, bortset fra vores komponent, ellers fjerner vi disse linjer.
<? // tilføj miniaturebilleder til kolonne
add_filter ('manage_posts_columns', 'showphoto', 5);
add_filter ('manage_pages_columns', 'showphoto', 5);
add_filter ('manage_custom_post_columns', 'showphoto', 5);
// Tilføj kolonnen
funktion showphoto ($ cols) {
$ cols ['photo'] = __ ('Thumbnail');
returnere $ cols;
}
?>
Vi gemmer real estate.php -filen, hvor vi foretog disse ændringer, og opdaterede wordpress -administratorsiden. Vi vil teste vores ansøgning ved at registrere en ejendom, for dette vil vi tidligere registrere kategorierne Ejendomme: Hus, Lejlighed, Grund osv.
Så registrerer vi nogle provinser Barcelona, ​​Madrid osv.
Derefter går vi til menuen Egenskaber> Ny ejendom og vi registrerer dataene som en normal wordpress -post, kun vi har kategorien og et billede eller foto, der skal indsættes som et fremhævet billede.

Husk, at billederne vil have en størrelse på 80 x 80 pixels til ejendomslisten, vi havde defineret dette i vores brugerdefinerede størrelse fast ejendom-tommelfinger, så det bedste er, at vi bruger firkantede billeder, så de ikke skæres, det ideelle ville være 500x500 pixels.
Når vi gemmer ændringerne, kan vi gå til listen over ejendomme, og vi vil se vores personlige kolonner med alle funktioner aktiveret til at søge, filtrere, sortere alfabetisk eller kun se en provins osv.

Dette vil være meget let at administrere, og vi kan også tilføje flere funktioner, hvis vi skal ændre den tilpassede indlægstype eller tilpassede indlægstype. Med hensyn til genbrug er komponenten optimal, da hvis vi vil bruge den i et andet projekt, kopierer vi simpelthen den brugerdefinerede indlægstype, inkluderer den i vores functions.php -fil, og vi vil have den tilgængelig til brug uden at skulle omprogrammere den.
Så kan vi med en simpel kode vise dette på hjemmesiden eller i et afsnit af vores websted, søge efter provins eller efter ejendomstype.
Vi kan også udvide komponenten ved at tilføje flere funktioner eller supplere den med andre plugins, for eksempel at implementere den på flere sprog med Qtraslator eller tilføj flere billeder Flere fremhævede billeder for at få flere fremhævede billeder og oprette et fotogalleri for hver ejendom.
Ændring af nogle linjer kunne også bruges til et køretøjsbureau, hvor kategorierne var bilmærker og modeller eller til et rejsebureau, hvor vi ville have pakker og destinationer, mulighederne er uendelige, det afhænger alt af behovene og vores fantasi.

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave