Snabbtips Spara en standardinställd miniatyrbild

Denna handledning visar hur man skapar en standardpostminne i kärnan. Många handledning visar hur man kontrollerar om en miniatyr finns i ett inlägg och gör sedan en om ingen miniatyr finns. Denna handledning visar dig hur man undviker att spara ett inlägg utan en miniatyrbild, för det första.


Vanligt sätt att få standard miniatyrbild

Som tidigare nämnts, föreslår vissa handledning att göra en Om annat uttalande i temat för att visa en standard miniatyrbild. Ett exempel är följande:

 om (has_post_thumbnail ()) the_post_thumbnail ();  annars echo 'Miniatyr'; 

Det enkla uttalandet kommer att fungera, men det skulle kräva att ändra pluginprogram från tredje part som inte har standard miniatyrfunktioner. Det är därför som denna handledning sparar en standard miniatyrbild till databasen.


Steg 1 Hämta miniatyrbilds-id

Det första du behöver göra är att hämta IDet på den uppladdade miniatyrbilden du ska använda. Du gör det genom att besöka mediebiblioteket, välja din bild och samla in ID.

I skärmdumpen samlar man ID-talet från adressfältet där "attachment_id =".


Steg 2 kodar funktionen

För att lägga till standard miniatyrfunktionen kan du lägga till följande kod i din functions.php filen i din temmapp.

 add_action ('save_post', 'wptuts_save_thumbnail'); funktion wptuts_save_thumbnail ($ post_id) // Få miniatyrbild $ post_thumbnail = get_post_meta ($ post_id, $ key = '_thumbnail_id', $ single = true); // Verifiera att inlägget inte är en revision om (! Wp_is_post_revision ($ post_id)) // Kontrollera om miniatyr finns om (tomt ($ post_thumbnail)) // Lägg till miniatyrbild för att posta update_post_meta ($ post_id, $ meta_key = '_thumbnail_id ', $ meta_value =' 233 '); 

Vi använder spara inlägget krok för att utlösa vår funktion och få det nyligen tillagda inlägget. När vi refererar till det nyligen tillagda inlägget använder vi get_post_meta för att hämta värdet från databasen för miniatyr ID där post-ID är det sista infogade. Nästa använder vi wp_is_post_revision funktion för att kontrollera om det sparade inlägget är en revision eller ett nytt inlägg. Om posten är en revision, kommer vi att radera resten av funktionen. Använda en Om uttalande, vi kontrollerar om någon metadata för miniatyren finns. Om ingen finns, använder vi add_post_meta funktion för att lägga till standard miniatyrens ID till det senast inlagda inlägget.

Voila! Under ett spara på utkast sparas standard miniatyrbilden i databasen och är nu tillgänglig för widgets eller plugins som använder miniatyrer. Om du bygger ett tema kan du använda den här metoden och ersätta $ meta_value med en bild från din temafil. Glad kodning!