I den föregående delen av denna serie lärde vi oss om att kombinera en WordPress-installation med plugins och teman och tweaking the wp-config-sample.php
fil.
Beviljade, buntande teman och plugins är inte en sådan fantastisk idé, men du måste erkänna att redigering wp-config-sample.php
att installera WordPress med anpassade wp-config.php
tweaks är snällt coolt. Dessutom fungerar båda tipsen tillsammans med magisk trick vi kommer att se i denna handledning och slutföra ett extremt användbart sätt att använda en out-of-the-box WordPress-installation för dina framtida projekt.
I den här delen kommer vi att upptäcka en spännande upptäckt om att aktivera de kombinerade teman och plugins på WordPress-installationen. Du kommer att se detta först på Tuts + eftersom det inte har avslöjats någonstans på internet till idag.
Bli upphetsad.
WP_DEFAULT_THEME
För ungefär ett år sedan delade jag en liten upptäckt jag gjorde på Tuts + om att använda wp-config-sample.php
fil för att anpassa den genererade wp-config.php
fil innan installerar WordPress. Och det var ett känt exempel wp-config.php
konstant kallad WP_DEFAULT_THEME
-Du kan läsa artikeln här om du är intresserad.
Om du tar bort alla standard "Tjugo någonting" teman från standard WordPress-paketet kommer WordPress att ge dig ett fel istället för ett front-end efter installationen, eftersom varje WordPress-version kommer med ett "standardtema" och det gör det inte leta efter ett annat tema i wp-content / teman
mapp om standardtemat inte finns där.
Det är därför jag efter att ha skrivit den artikeln trodde att jag skulle kunna använda den tweak för en annan handledning, kallad något som "Building a Out-of-the-Box WordPress Package". Jag noterade bara titeln, brydde sig inte om att skapa en skiss och lämnade anteckningen i min dator för nästan ett år. (Prata om förskott ... Jag borde skriva en artikel om det. Jag borde notera det nere.)
Över 10 månader senare bestämde jag mig för att skapa en översikt och skicka in till projektledningssystemet för Tuts + Code och få vår redaktör Tom McFarlins godkännande. När han godkände konturen och började skriva enkelsidigt handledning som jag ursprungligen hade i åtanke började jag tänka på WP_DEFAULT_THEME
.
Även om det är typ av ovanligt att tänka på en WordPress konstant i två dagar, slutade jag med en uppfattning att jag kunde använda denna konstant och tricket att redigera wp-config-sample.php
innan du installerar WordPress för att göra några ärenden (som att ta bort standardpost och sida, ändra permalinkstrukturen och inaktivera kommentarer) som jag normalt gör med ett "startprogram". Då insåg jag att jag kunde aktivera några plugins, som medföljer paketet i förväg. Då insåg jag att jag kunde byta tema till en riktigt tema efter det här sortimentet är gjort.
Och då slog det mig: Allt detta innebar att jag faktiskt kan aktivera pre-bundna plugins och ett tema automatiskt vid installationen av WordPress! Du kan nog känna min spänning från orden du läser nu - föreställ dig hur jag kände när jag gjorde denna upptäckt.
Är det en lösning? Absolut. Du kan till och med kalla det en WordPress "hack". Men det ändrar inte några kärnfiler (annat än wp-config-sample.php
, som vi får redigera) och det är inte emot någon annan WordPress-konvention än "funktionskoden är plugin-territorium", men jag tror att använda ett "engångstema" som avaktiverar sig i en sekund inte är "inte kosher". I slutändan bryter det inte några filer eller regler, och det är en helt säker lösning på en out-of-the-box WordPress-installation.
Nu när vi har gått igenom logiken om vad vi ska göra är det dags att skapa disponibel "Warm-Up Band" -tema.
I det här temat kommer det bara att finnas två filer: Den obligatoriska style.css
och den functions.php
fil som kommer att köra vår fyrdelskod som kommer att:
Jag sätter på style.css
filinnehåll nedan för att du ska kopiera:
/ * Tema Namn: Warm-Up Band Författare: Baris Unver från Tuts + Kod Beskrivning: Engångstema för att köra vissa ärenden. Version: 0 * /
WordPress låter dig inte ändra standardalternativen eftersom det skulle vara en längre installation om det gjorde det. Men det betyder inte att du inte kan ändra dem programmatiskt. Med hjälp av vissa kärnfunktioner är det enkelt att skräddarsy alternativen för dina behov:
", // ändra kategori bas" category_base '=>' / cat ', // ändra tagbasen' tag_base '=>' / label ', // inaktivera kommentarer' default_comment_status '=>' stängt ', // avaktivera trackbacks' use_trackback '=> ", // avaktivera pingbacks default_ping_status' => 'stängt', // avaktivera pinging 'default_pingback_flag' =>", // ändra permalinkstrukturen 'permalink_structure' => '/% postnamn% /' / använd inte år / månadsmappar för uppladdningar 'uploads_use_yearmonth_folders' => ", // använd inte de fula smilierna 'use_smilies' =>"); // ändra alternativen! foreach ($ option as $ key => $ value ) update_option ($ key, $ value); // spola omskrivningsregler eftersom vi ändrade permalinkstrukturen global $ wp_rewrite; $ wp_rewrite-> flush_rules ();?>
Som du kan se, vi:
för varje
slinga för att använda update_option ()
funktion för varje gruppobjektDet finns många, många standardalternativ du kan spela med - kolla in dem här i wp-admin / includes / schema.php
fil.
Nu när vi har ändrat vissa standardalternativ är det dags att ta bort det oönskade innehållet som vi alltid radera manuellt. Det här är enklare:
Kom ihåg att vi bestämde oss för att paketera vårt paket med tre populära plugins tillbaka i föregående del? Vi avgjorde WP Super Cache, WordPress SEO by Yoast och Kontaktformulär 7. Låt oss aktivera dem nu:
Vi kan också avaktivera standardvärdet Akismet och Hej Dolly plugins, men jag tror att du redan raderade dem från ditt paket precis som jag gjorde.
Allt är inställt, och nu kan vi byta till det aktuella temat vi ska använda! Det är den enklaste delen eftersom vi ska springa switch_theme ()
funktionen med mappens namn på namnet som parameter:
Lätt som en plätt!
functions.php
Fil", // ändra kategori bas" category_base '=>' / cat ', // ändra tagbasen' tag_base '=>' / label ', // inaktivera kommentarer' default_comment_status '=>' stängt ', // avaktivera trackbacks' use_trackback '=> ", // avaktivera pingbacks default_ping_status' => 'stängt', // avaktivera pinging 'default_pingback_flag' =>", // ändra permalinkstrukturen 'permalink_structure' => '/% postnamn% /' / använd inte år / månadsmappar för uppladdningar 'uploads_use_yearmonth_folders' => ", // använd inte de fula smilierna 'use_smilies' =>"); // ändra alternativen! foreach ($ option as $ key => $ value ) update_option ($ key, $ value); // spola omskrivningsregler eftersom vi ändrade permalinkstrukturen global $ wp_rewrite; $ wp_rewrite-> flush_rules (); // radera standardkommentaren, posten och sidan wp_delete_comment (1); wp_delete_post (1, SANT); wp_delete_post (2, TRUE); // Vi måste inkludera filen nedan eftersom funktionen activ_plugin () inte normalt definieras i fronten include_once (ABSPATH. 'wp-admin / includes /plugin.php '); // aktivera pre-bundna plugins activ_plugin ('wp-super-cache / wp-cache.php'); activate_plugin ('wordpress-seo / wp-seo.php'); activate_plugin ('kontaktformulär-7 / wp-contact-form-7php'); // byt tema till "Headliner" switch_theme ('headliner'); ?>
Medan WordPress är känt för sin "fem minuters installationsprocess", tror jag att det är möjligt att spara några minuter mer om du vet vad du gör. Med de saker som vi har täckt i den här serien kan du få mer tid före och under installationsprocessen för WordPress.
Vad tycker du om att skapa automatiska WordPress-installationer? Tror du att det finns mer utrymme att förbättra serien? Berätta vad du tycker genom att skriva i avsnittet Kommentarer nedan. Och om du gillade serien, glöm inte att dela båda delarna!