Titan Framework heeft de vervelende taak om metaboxen te maken in uw webontwikkelingsproject echt vereenvoudigd. Voor Titan Framework moest ik een heel lang stuk code schrijven om metaboxen weer te geven in de schermen voor het bewerken van posts en / of pagina's. Nu wordt het proces echt gemakkelijk, en dat ga ik vandaag bespreken. Laten we dus leren hoe we een metabox kunnen maken met Titan Framework.
Voordat ik een duik neem in dit onderwerp, laten we aannemen dat je:
titan-framework-checker.php
bestand opgenomen in uw projectNogmaals, ik verwijs naar mijn thema genaamd Neat voor de code die ik hier ga gebruiken. In eerdere artikelen heb ik uitgelegd dat de sjabloondocumenten van het thema zo zijn georganiseerd dat er een aparte map is voor admin-gerelateerde dingen binnen de middelen map. Dit bevat verder een bestand voor de code van metaboxen, d.w.z.. Metabox-options-init.php
, welke zich hier bevindt: assets / admin /
titanframework
/metabox-options-init.php
.
Dus hier is de code die een metabox zal toevoegen op de bewerkingsschermen van alle berichttypen die we noemden, namelijk:
my_custom_post_type
, Dit is de naam van elk aangepast berichttypecreateMetaBox (array ('naam' => 'Metabox-opties', // Geef het optiemenu een naam. 'post_type' => array ('page', 'post', 'my_custom_post_type') // Kan een tekenreeks of array zijn.) );
In het begin zijn er een paar regels met commentaar die u enkele van de helpende links bieden waar u doorheen kunt gaan met betrekking tot de ontwikkeling van metaboxen. Hieronder is het een add_action ()
functie die de tf_create_options
haak die het register registreert aa_metabox_options
functie voor het toevoegen van opties in de metabox.
Volgende (regel 14) Ik heb een functie gedefinieerd die onze metaboxcode omhult, d.w.z.. aa_metabox_options
. Dit bevat de volledige functionaliteit die nodig is om onze metabox te maken.
Het proces begint met het verkrijgen van een uniek exemplaar van Titan Framework en het te registreren in de $ titan
variabele (op regel 17). Oproep aan de getInstance ()
functie is een integraal onderdeel van Titan en is nodig in elke nieuwe routine of bestand waar je gebruik maakt van Titan Framework. Deze functie heeft een unieke parameter, idealiter uw themanaam om Titan in uw project te initialiseren. Dat is waarom ik heb gebruikt 'netjes' als mijn unieke naam. Ik heb het ook in een vorig artikel uitvoerig uitgelegd.
Regel 23 van deze code is waar ik de metabox heb gemaakt. Met Titan Framework kunt u de createMetaBox ()
functie om metaboxen toe te voegen aan uw thema's / plug-ins. Dus volgens deze regel maak ik een $ aa_metbox
metabox in Titan Framework.
Let nog een ding op: de createMetaBox ()
functie krijgt een array van parameters die parameters zoals kunnen nemen naam
, desc
, post_type
, enz. Dus, gebruikmakend van deze heb ik deze metabox genoemd 'Metabox-opties"(regel 24). Daarom zal het met deze naam verschijnen in mijn pagina en na het bewerken van het scherm.
De laatste regel (regel 25) van deze code koppelt deze nieuw gemaakte metabox aan alle posttypen die ik noem. post_type
is opnieuw een parameter die aangeeft in welk berichttype deze metabox wordt weergegeven. In het geval van mijn code, geef ik deze weer op alle pagina's en berichten, en op my_custom_post_type
. Merk ook op dat deze parameter een array opneemt als u de metabox op meerdere berichttypen moet gebruiken. Maar het kan ook een tekenreeks zijn voor wanneer u de metabox alleen voor één berichttype moet gebruiken, bijvoorbeeld 'post_type' => 'pagina'.
Ga nu naar uw WordPress-dashboard en klik op Nieuw menu toevoegen in berichten. Scroll naar beneden en je zult een metabox vinden met de naam Metabox-opties. Hier is de screenshot voor:
Doe hetzelfde voor elke pagina of aangepast berichttype van uw website, en u zult dezelfde metabox daar ook vinden.
Deze metabox is op dit moment leeg. Laten we er dus opties aan toevoegen.
Kopieer en plak deze regels net onder de hierboven geschreven code.
createOption (array ('id' => 'aa_mb_txt', // De id die wordt gebruikt om de waarde van deze optie te krijgen. 'type' => 'text', // Type optie dat we maken. 'name' => 'Mijn tekstoptie', // Naam van de optie die wordt weergegeven in het admin-paneel. 'Desc' => 'Dit is onze optie' // Beschrijving van de optie die wordt weergegeven in het admin-paneel.) );
Opties maken in Titan is niet iets nieuws voor jou. Ik heb de. Opnieuw gebruikt createOption ()
functie om opties toe te voegen. Maar wat u moet opmerken is regel 9, die ook aangeeft waar deze optie, dat wil zeggen binnen, moet worden gemaakt $ aa_metbox
. Dus ik heb een gemaakt tekst
typ veld in de metabox met de naam 'Mijn tekstoptie'wiens ID is aa_mb_txt
.
De bovenstaande screenshot is het resultaat van mijn ontwikkeling tot nu toe. Maar deze keer is het een pagina. Je kunt de. Duidelijk vinden Metabox-opties doos die een heeft Mijn tekstoptie veld erin.
Wat blijft er over? Afdrukken van de uitvoer aan de voorkant na het ophalen van de waarde. Laten we dat nu doen!
Nu zal ik de opgeslagen waarden aan de voorkant ophalen voor de pagina in de bovenstaande schermafbeelding. Alsjeblieft:
getOption ('aa_mb_txt', get_the_ID ()); / ** * Eerste metabox-optie. * / // Laten we deze waarde gebruiken in HTML. ?>De waarde van metaboxoptie txt voor deze pagina is:
Hier de GetOption ()
functie (regel 10) heeft twee parameters. Een daarvan is de unieke ID van de optie, d.w.z.. aa_mb_txt
, en de tweede is de get_the_ID_ ()
functie. Ik heb gebruikt get_the_ID ()
omdat de metabox is gemaakt voor alle postsoorten die we hebben gedefinieerd. Als u de waarde van een metabox-optie voor een specifieke pagina / bericht wilt weten, geeft u de getOptions ()
functioneer de ID van die specifieke post / pagina. Het resultaat wordt opgeslagen $ aa_mb_txt_val
.
Vervolgens wordt een alinea gemaakt (regel 19) waarin ik de echo
opdracht om de uitvoer via af te drukken aa_mb_txt_val
.
Laten we veronderstellen dat ik ben binnengekomen AA-Text-Option
in de metabox en publiceerde de pagina.
En voila, alles werkt als een charme.
Nu weet je hoe je metaboxen kunt maken met Titan Framework. Je beseft wel hoe simpel het is. In de aankomende artikelen van deze serie zal ik schrijven over het maken van een bepaald optietype met Titan Framework in een metabox. Daar neem ik aan dat je al weet hoe je de metabox zelf moet maken. Het is dus van vitaal belang dat u dit uitprobeert.
In het volgende artikel maak ik thema-aanpasserssecties en -panelen met opties: hoe cool is dat? Tot die tijd, als je vragen hebt, laat het me weten via opmerkingen of neem contact met me op via Twitter.