De WordPress Shortcode API is in versie 2.5 geïntroduceerd in WordPress. Sindsdien is het een veel gebruikte methode geworden voor het snel aanpassen van lay-out en het invoegen van bepaalde opmaakfragmenten. Maar shortcodes kunnen even nuttig zijn bij het maken van WordPress-thema's - zo kunt u er volledig gebruik van maken!
Shortcodes hebben veel voordelen als ze goed worden gebruikt in themabestanden. Als u bekend bent met preprocessor-macro's in C / C ++, dan kunnen shortcodes een enigszins vergelijkbare functie hebben in WordPress. Het basisdoel van het gebruik van een shortcode is om de tijdelijke aanduiding te vervangen door uw eigen aangepaste HTML-code wanneer de server de pagina naar de client verzendt. De stappen voor het maken en implementeren van shortcodes zijn als volgt.
In deze Snelle Tip gaan we gebruik maken van shortcodes om aangepaste berichten weer te geven. Ik heb een gedetailleerde uitleg gegeven over hoe je aangepaste berichttypen kunt maken en lege thema's kunt gebruiken bij Nettuts +, maar in dit voorbeeld zullen we het standaard TwentyTen-thema wijzigen dat wordt aangeboden door WordPress.
De functie die u voor uw shortcode creëert, definieert in feite het doel van de shortcode. Een basisfunctie kan op de volgende manier worden gedefinieerd (u kunt alle code onderaan uw functions.php-bestand toevoegen):
// De functie definiëren die wordt gebruikt voor het weergeven van de aangepaste projectplaats. function project_shortcode ($ atts) // Extractie van de argumenten voor de shortcode. extract (shortcode_atts (array ('limit' => '10', 'orderby' => 'date',), $ atts)); / * Hier zullen we de code schrijven voor het ophalen van gegevens * en de HTML-structuur bouwen die moet worden geretourneerd in de $ -uitvoervariabele * / $ output = 'Dit bevat de uiteindelijke HTML-uitvoer voor uw aangepaste projectlus.'; return $ output;
Zorg ervoor dat u geen witruimte achterlaat aan het einde van het function.php-bestand, want dit kan een probleem veroorzaken. Laten we nu wat code toevoegen om het aangepaste bericht 'project' op te halen en de HTML-structuur te bouwen die onze shortcode zal vervangen.
function project_shortcode ($ atts) extract (shortcode_atts (array ('limit' => '10', 'orderby' => 'date',), $ atts)); // Aangepaste query maken om het aangepaste bericht van het projecttype op te halen. $ loop = new WP_Query (array ('post_type' => 'project', 'posts_per_page' => $ limit, 'orderby' => $ orderby)); // Een lus maken door de berichten en de HTML-structuur maken. if ($ loop) while ($ loop-> have_posts ()) $ loop-> the_post (); $ output. = ''; else $ output = 'Sorry, nog geen projecten. Kom snel terug.'; // Nu geven we de HTML-code terug naar de plaats van waaruit de shortcode werd gebeld. return $ output;'.Get_the_title ().'
'; $ output. = ''.Get_the_excerpt ().'
De '$ atts' zijn de attributen die samen met de shortcode worden verstrekt. De extract-methode van PHP wordt gebruikt om de array-elementen in variabelen te verdelen, zodat ze direct in de functie kunnen worden gebruikt.
In dit voorbeeld gebruiken we de kenmerken die in de functie zijn doorgegeven om een aangepaste query te maken voor het ophalen van de aangepaste postgegevens van het project. Vervolgens doorlopen we alle projectposten die worden geretourneerd.
Binnen de lus halen we de gegevens op en voegen deze toe aan de uitvoervariabele met de juiste HTML-tags. Zodra de lus is voltooid, bevat de uitvoervariabele de volledige HTML-code voor onze projectlijst. Deze HTML-code wordt geretourneerd en de shortcode die in het thema wordt gebruikt, wordt hiermee vervangen wanneer de pagina wordt geladen.
Nu we de functie hebben gemaakt, moeten we deze registreren in de database, samen met de shortcode die ervoor wordt gebruikt. We kunnen dit doen met de
register_shortcode methode geleverd door WordPress.
add_shortcode ( 'projecten', 'project_shortcode');
Het eerste argument in deze methode is de naam van de shortcode die we in het thema zullen gebruiken, en het tweede argument is de naam van de functie (die we hierboven hebben gedefinieerd) met betrekking tot die shortcode. Op deze manier weet WordPress wat te doen wanneer die shortcode wordt geparseerd of tegenkomt.
WordPress biedt een methode voor het parseren van shortcodes, waarvan maar heel weinig ontwikkelaars overwegen dit vaak te gebruiken. De do_shortcode-methode kan worden gebruikt om shortcodes in themabestanden zelf in te voegen.
De shortcode-syntaxis is vergelijkbaar met die van de backend-editor. In dit geval geven we de kenmerken door voor de limiet van het aantal berichten dat moet worden weergegeven en hoe deze te bestellen. Omdat we "project" aangepaste berichten weergeven, zullen we een nieuwe speciale paginasjabloon maken en daarin de shortcode gebruiken. Maak een sjabloon met de naam 'page-project.php' en gebruik het volgende:
Om nu de sjabloon te bekijken die u zojuist hebt gemaakt, maakt u een pagina met de naam 'Project'. Natuurlijk zijn er ook een aantal demo "Project" -posten!
Voila! De korte code geeft de aangepaste berichten met succes weer.
Zoals je ziet, helpt de bovenstaande methode om een shortcode te maken voor aangepaste berichten en ze te gebruiken in ons thema, om de themabestanden beheersbaar en schoon te houden. Dit heeft ook een bijkomend voordeel dat iedereen de aangepaste post-lus ook in de WordDress-back-endeditor kan invoegen.
Het bovenstaande voorbeeld laat zien hoe we shortcodes kunnen gebruiken tijdens het ontwikkelen van thema's op een efficiënte manier. Er zijn veel innovatieve en productieve manieren om gebruik te maken van shortcodes in WordPress-thema's - voel je vrij om je eigen ideeën te delen in de comments!