Annonse
Plugins plager meg - ser en lang liste over dem, registrerer hver sine kroker og filtre og... eugh. Noen ganger kan du finne en enkel løsning med bare noen få linjer i functions.php fil. Her er 10 av våre favoritter.
Noter det functions.php er en del av temaet ditt, og som sådan vil alle hacks som du plasserer der gå tapt når du endrer tema. Du må kopiere dem du vil overføre til det nye temaet - det er ikke vanskelig på noen måte, men noe å huske på i tilfelle nettstedet ditt plutselig går i stykker og ikke finner ut hvorfor. Hvis du gjør en feil med å kode disse, vil du bli møtt med en blank side (den ultimate guiden for å håndtere 500 serverfeil og blanke sider i WordPress Den ultimate guiden for å løse 500 interne serverfeil og blanke hvite sider i WordPressHar du problemer med 500 interne serverfeil og blanke sider i WordPress? Slik løser du dem med en gang. Les mer vil fortelle deg noen av de andre måtene dette kan skje) - så vær forsiktig. Kunnskap om PHP er også nyttig (her er vår
nybegynnerguide til PHP Lær å bygge med PHP: Et krasjkursPHP er språket som Facebook og Wikipedia bruker for å tjene milliarder av forespørsler daglig; de-facto-språket som brukes til å lære folk programmering på nettet. Det er vakkert enkelt, men strålende kraftig. Les mer ).Legg til miniatyrer til administrasjonsområdet
Hvis du bare kommer til å legge til legg ut miniatyrbilder Den komplette guiden for utvalgte miniatyrer og bildestørrelser i WordPressHer er alt du trenger å vite om bildestørrelser i WordPress og administrere funksjoner. Les mer , kan det være veldig nyttig å se med et øyeblikk hvilke innlegg som ennå ikke har tatt med et miniatyrbilde - dette kodebiten vil legge til en ny kolonne på admin-skjermen når du ser Alle innlegg. Du kan endre størrelsen ved å justere variablene i matrise (100.200), som spesifiserer maksimal bredde og høyde.
add_filter ('manage_posts_columns', 'posts_columns', 5); add_action ('manage_posts_custom_column', 'posts_custom_columns', 5, 2); funksjon innlegg_kolonner ($ standardverdier) {$ standardverdier ['post_thumbs'] = __ ('Tommelen'); returner $ standard; } funksjon posts_custom_columns ($ column_name, $ id) {if ($ column_name 'post_thumbs') {ekko the_post_oemnail (matrise (100.200)); } }
Du bør ende opp med noe slikt:
Lag din egen kortkode for JS-utdrag
Å integrere JavaScript direkte i innlegg kan være problematisk (men er mulig, se TinyMCE-hacket senere i artikkelen), spesielt når disse utdragene er tilbøyelige til ofte å endre - og dermed gjengi alle nåværende innlegg gått i stykker. Hvis JavaScript du legger inn inkluderer et størrelsesattributt, kan du også få problemer når temaet endres og plutselig ikke passer noe lenger. Eller kanskje du bare blir lei av å måtte legge inn den samme tingen om og om igjen. Uansett kan en kortkode hjelpe enormt.
Her er utdraget for en jeg laget for å legge inn det ukentlige chatroom, som er avhengig av gratis tlk.io service. Bruke kortkoden chatte, og gitt en enkelt attributt av rom, legger den inn den relevante koden som peker til riktig chatroom-adresse - eller i dette tilfellet er standard til et generisk “technophilia” -rom.
function chatroom ($ atts) {extract (shortcode_atts (array ('room' => 'technophilia'), $ atts)); komme tilbake ''; } add_shortcode ( 'chat', 'chatterom');
Drep en kortkode
Hvis du ikke lenger vil bruke en kort kode, kan det hende du finner dem strødd i utdataene. Denne enkle koden vil fjerne dem, en "renere" kortkode hvis du vil - selv om den ikke fungerer i databasen, bare på utdataene fra innholdet i innlegget.
function shortcode_cleaner () {remove_shortcode ('chat'); add_shortcode ('chat', 'my_remove_shortcode'); } add_action ('init', 'shortcode_cleaner'); funksjon my_remove_shortcode () {return ''; }
Pakk ut en YouTube-video fra et innlegg
Utvalgte bilder ble introdusert i versjon 2.9 for å gi hvert innlegg ett sentralt representativt bilde, men hva om innlegget ditt handler mer om videoen? Du kan ta en skjermdumping og bruke den som det valgte bildet, eller du kan trekke ut videoen og legge den inn i stedet for et omtalt bilde i stedet. Ring denne funksjonen fra loopen for å få en YouTube-URL tilbake til å gjøre med som du ønsker.
function video_from_post () {global $ post; $ retur = matrise (); preg_match ( '| http://www.youtube.com/watch\?v=([a-zA-Z0-9_\-]+)|', $ post-> post_content, $ matches); $ v = $ treff [1]; $ return [0] = $ post; $ retur [1] = $ v; returnere $ return; }
Det kan også være lurt å benytte seg av følgende kodestykke som filtrerer innlegg for å fjerne YouTube-nettadresser (siden du bruker dem andre steder).
funksjon remove_youtube ($ content) {$ search = '/http:\/\/www\.youtube\.com\/watch\?(.*?)v=(??a-zA-Z0-9_\-??+ ) (\ S *) / i '; $ content = preg_replace ($ search, "", $ content, 1); returner $ innhold; } add_filter ('the_content', 'remove_youtube');
Stopp Visual Visual Editor Stripping HTML
WordPress-visuelle redaktøren - TinyMCE - er utmerket for de fleste brukere, og kan utvides til å gjøre enda mer med TinyMCE Advanced plugin Ta kontroll over WordPress Editor med TinyMCE Advanced Les mer . For de som ønsker litt mindre barnevakt av koden sin, vil dette lille utdraget hindre TinyMCE i å strippe ut tags ved å utvide listen over gyldige elementer, slik at du kan legge inn ting som iFrames eller spesifisere klasser på elementer.
funksjon fb_change_mce_options ($ initArray) {// Kommaseparert streng med utvidede tags $ ext = 'Pre [id | navn | klasse | stil | lang | rømt], iframe [align | longdesc | navn | bredden | høyde | frameborder | rulle | marginheight | marginwidth | src]'; if (isset ($ initArray ['Extended_valid_elements'])) {$ initArray ['Extended_valid_elements']. = ','. $ Ext; } else {$ initArray ['Extended_valid_elements'] = $ ext; } $ initArray ['verifisere_html'] = falsk; returner $ initArray; } add_filter ('bittesmå_mce_before_init', 'fb_change_mce_options');
Til slutt stopper denne JavaScript fra å bli strippet, men husk at dette åpner et stort sikkerhetshull i flere forfattermiljøer.
function disable_kses_content () {remove_filter ('content_save_pre', 'wp_filter_post_kses'); } ADD_ACTION ( 'init', 'disable_kses_content', 20);
Gratis nettstedminiatyrer
WordPress.com tilbyr en lite kjent miniatyrtjeneste for nettsteder - det vil si at du kan fortelle den nettadressen til en webside, og den vil generere og tjene et miniatyrbilde av det nettstedet. Legg til følgende kodebit for å opprette en "kortside" -kode, og bruk den ved å omgi en URL som [WebThumb] // www.makeuseof.com [/ WebThumb]. Bruk attributter for å overstyre bredde eller høyde, og justere HTML-utdata etter behov. Miniatyrbilder er bufret, men det kan ta litt tid å generere i utgangspunktet.
funksjon websitethumbnails ($ atts, $ content = null) {extract (shortcode_atts (array ("snap" => ' http://s.wordpress.com/mshots/v1/', "alt" => 'Mitt bilde', 'w' => '600', // bredde "h" => '350' // høyde), $ atts)); $ img = ''; returner $ img; } add_shortcode ("webtum", "websitethumbnails");
Legg til utvalgte miniatyrer til RSS-feeder
Følgende kode vil justere både et utdrag eller en full RSS-feed til å inkludere det viste miniatyrbildet. Du kan også se hvordan vi har lagt til en standardkobling på slutten av hvert element, og koblet tilbake til hele innlegget. Du kan selvfølgelig endre dette til hva du vil, for eksempel inkludere noen delingsknapper.
funksjon excerpt_tattnail_feeds ($ content) {global $ post; if (has_post_tattnail ($ post-> ID)) {$ content = ''. get_the_post_thumbnail ($ post-> ID, 'kjennetegnet'). ''. rss_the_excerpt ($ post-> ID, 100); } $ innhold. = "Les hele artikkelen: ".Get_the_title ($ post-> ID)."
"; returner $ innhold; } add_filter ("the_excerpt_rss", "excerpt_tattnail_feeds"); // vis miniatyrbilder i innmatinger. funksjon full_tattnail_feeds ($ innhold) {global $ post; if (has_post_tattnail ($ post-> ID)) {$ content = ''. get_the_post_thumbnail ($ post-> ID, 'kjennetegnet'). ''. $ Innhold; } $ innhold. = "Les hele artikkelen: ".Get_the_title ($ post-> ID)."
"; returner $ innhold; } add_filter ("the_content_rss", "full_tattnail_feeds");
Se - det er utrolig mye du kan gjøre uten plugins, og dette er bare å klø i overflaten. Hvis du vil ha mer, sjekk min liste over IFTTT-oppskrifter for WordPress 5 fantastiske IFTTT-oppskrifter for WordPress-brukereIFTTT er kraftbrukerens valgte automatiseringsverktøy; og WordPress er den ultimate bloggerens sveitsiske hærkniv. Tenk deg hva slags verdensherredømme du kan oppnå ved å kombinere de to! Les mer , eller besøk WPSnipp - et nettsted med over 600 kategoriserte kodebiter.
James har en BSc i kunstig intelligens, og er CompTIA A + og Network + sertifisert. Han er hovedutvikler av MakeUseOf, og bruker fritiden sin på å spille VR paintball og brettspill. Han har bygd pc-er siden han var liten.