10 WordPress fragmenti tēmas pielāgošanai
Izmantojot WordPress, ir ļoti viegli mainīt jūsu vietnes izskatu, pateicoties tēmām. Ir daudz (piemēram, visa ķekars) WordPress Tēmas, kas ir pieejamas gan par brīvu, gan par izcilu cenu. Izvēlieties tēmu, instalējiet to un dažu minūšu laikā varat iegūt pilnīgi jaunu jūsu vietnes izskatu.
Bet, neņemot vērā izskatu un izjūtu, WordPress tēma var tikt paplašināta arī daudzos veidos. Jūs varat izveidot jaunas funkcijas ar spraudņiem, bet šajā ziņojumā mēs skatāmies WordPress funkcijas, kas var būt parocīgas jūsu tēmai. Jums tikai jāievieto šīs funkcijas jūsu tēmas funkcijās .php, lai iedarbotos.
Ieteicamais lasījums: kā pārvaldīt un lietot koda fragmentus programmā WordPress
1. Izmainiet izvilkuma garumu
An izvilkums ir īss sūtījuma gabals, ko var redzēt. Šādā gadījumā WordPress pēc noklusējuma nosaka izrakstu par 55 vārdiem. Bet, WordPress ļauj mums pielāgot noklusējuma garumu caur excerpt_length
filtru.
funkcija my_excerpt_length ($ garums) return 30; add_filter ('excerpt_length', 'my_excerpt_length', 999);
Atgriešanās vērtība attiecas uz vārdu summu, kas tiks parādīta kā izvilkums. Iepriekš minētajā piemērā mēs parādām 30 vārdus, kas ir vērtīgi katrai ziņai.
2. Samaziniet ziņu pārskatīšanu
WordPress ļauj rakstniekiem un Emuāru autori atskatīties uz iepriekšējām darba versijām. Tomēr, tā kā labojumi palielinās, tie var ietekmēt arī tīmekļa vietnes veiktspēju, jo katra jaunā reģistrētā versija papildina jaunu datu bāzi. Šī problēma laika gaitā tikai pasliktināsies.
Lai atrisinātu šo problēmu, varat iestatīt, cik daudz labojumu vēlaties saglabāt datubāzē. Lai to izdarītu, atveriet savu wp-config.php un pievienojiet šo fragmentu tālāk. Nomainiet numuru, lai ierobežotu vajadzīgo labojumu skaitu.
define ('WP_POST_REVISIONS', 5);
Ja vēlaties drīzāk atspējot WordPress versiju, pārslēdziet vērtību uz FALSE
kā šis:
define ('WP_POST_REVISIONS', false);
3. Automātiski iestatiet vēlamo attēlu pa pastu
Parasti tiek parādīts redzams attēls, kas attēlo vai apraksta ziņu. WordPress prasa, lai mēs uzstādītu šo attēloto attēlu manuāli. Lai padarītu procesu efektīvāku, mēs varam iestatīt attēla attēlojumu automātiski padarot pirmo attēlu attēlā redzamajā attēlā. Izmantojiet šādu koda fragmentu.
funkcija autoset_featured () global $ post; $ juba_has_thumb = has_post_thumbnail ($ post-> ID); ja (! $ jau_has_thumb) $ attach_image = get_children ("post_parent = $ post-> ID un post_type = pielikums un post_mime_type = attēls un numuru izvietojumi = 1"); ja ($ attach_image) foreach ($ attach_image kā $ attachment_id => $ pielikums) set_post_thumbnail ($ post-> ID, $ attachment_id); add_action ('the_post', 'autoset_featured'); add_action ('save_post', 'autoset_featured'); add_action ('Draft_to_publish', 'autoset_featured'); add_action ('new_to_publish', 'autoset_featured'); pievienot seuraavu ('gaidot_to_publish', 'autoset_featured'); pievienot_action ('future_to_publish', 'autoset_featured');
4. Piespiediet minimālo komentāru garumu
Ne līdzīgs 1-2 vārdu komentāriem “Nice Post!”, “Labs darbs!”? Lai gan komentārs, iespējams, nav surogātpasts, tie ir komentāru veidi, kas parasti neveicinās turpmākās diskusijas. Ja vēlaties, lai jūsu komentētāji runātu, varat iestatīt minimālo nepieciešamo vārdu garumu, pirms lasītāji var publicēt komentārus.
Tālāk ir sniegts fragments, lai noteiktu komentāru minimālo rakstzīmju vai vārdu skaitu. Ieliec to iekšā funkcijas.php.
funkcija minimal_comment_length ($ commentdata) $ minimalCommentLength = 20; ja (strlen (apdare ($ commentdata ['comment_content']))
$ minimalCommentLength
vērtība ir minimālais nepieciešamo rakstzīmju skaits, veiciet šīs vērtības izmaiņas, lai to izmainītu.5. Atspējot saites no lietotāja komentāriem
Saites, kas ir iekļautas komentāru veidlapā, uzreiz kļūst par klikšķināmām saitēm, tiklīdz tās būs publicētas un apstiprinātas. To var izmantot surogātpasta izplatītāji, mudinot viņus pārplānot komentāru sadaļu ar saiti uz viņu “surogātpasta” lapu.
Lai to novērstu, varat pievienot šo filtru, lai atspējotu saites (-u) klikšķināšanas spēju un saglabātu tos vienkārši kā vienkāršu tekstu.
remove_filter ('comment_text', 'make_clickable', 9);6. Noņemiet klases un ID no pielāgotās izvēlnes
Ja aplūkojat pielāgoto izvēlni programmā WordPress, katrā izvēlnes punktā atradīsiet virkni nodarbību un ID. Izmantojiet tālāk norādīto fragmentu, lai noņemtu nevēlamās klases un saglabātu vajadzīgās klases.
funkcija my_css_attributes_filter ($ var) return is_array ($ var)? array_intersect ($ var, masīvs ('current-menu-item')): "; add_filter ('nav_menu_css_class', 'my_css_attributes_filter', 100, 1); add_filter ('nav_menu_item_id', 'my_css_attributes_filter', 100, 1); add_filter ('page_css_class', 'my_css_attributes_filter', 100, 1);Iepriekš minētajā kodā mēs saglabājam
pašreizējā izvēlnes vienums
klasē.7. Izslēgt lapas no meklēšanas
Veicot meklēšanu programmā WordPress, rezultāti tiks noņemti gan no abām lapām, gan ierakstiem, dažkārt ar jūsu meklēšanas vaicājumu. Lai to novērstu, varat filtrēt meklēšanas rezultātus, lai parādītu tikai tos, kas atrodami ierakstos. Pievienojiet šo fragmentu function.php to darīt.
funkcija SearchFilter ($ query) if ($ query-> is_search) $ query-> set ('post_type', 'post'); atgriezt $ vaicājumu; add_filter ('pre_get_posts', 'SearchFilter');8. Nomainiet teksta tekstu
Vai jums ir garlaicīgs teksts? Ja vēlaties to mainīt uz īpašo apsveikumu jūsu vietnē, vienkārši pievienojiet to funkcijām.php un efekts notiks nekavējoties.
funkcija change_howdy ($ translated, $ text, $ domain) if (false! == strpos ($ translated, 'Howdy')) atgriezties str_replace ('Howdy', 'Hello', $ translated); atgriezt $ tulkojumu; add_filter ('gettext', 'change_howdy', 10, 3);9. Pievienojiet papildu izvēlnes noņemšanu konkrētām lomām
Ar šo fragmentu varat paslēpt vadības paneļa izvēlnes, kas nav administratori.
funkcija remove_admin_menus () if (is_user_logged_in () &&! current_user_can ('administrators')) remove_menu_page ('index.php'); // Dashboard remove_menu_page ('edit.php'); // Ziņojumi remove_menu_page ('upload.php'); // Media remove_menu_page ('edit.php? Post_type = page'); // Pages remove_menu_page ('edit-comments.php'); // Komentāri remove_menu_page ('themes.php'); // Izskats remove_menu_page ('plugins.php'); // Plugins remove_menu_page ('users.php'); // Lietotāji remove_menu_page ('tools.php'); // Rīki remove_menu_page ('options-general.php'); // Iestatījumi pievienotelut ('admin_init', 'remove_admin_menus');Lūdzu, ņemiet vērā, ka tas tikai izņem izvēlnes no ekrāna, bet nefiltrē lietotāja atļauju piekļūt šīm izvēlnēm. Tas neliedz lietotājam piekļūt šīm izvēlnēm tieši caur pārlūka adrešu joslu. Atcerieties pievienot tos savam funkcijas.php.
10. Noņemiet Admin Bar Link, kas nav administrators
WordPress vadības panelī, papildus galvenajai izvēlnei sānjoslā, augšpusē atradīsiet arī dažas izvēlnes saites. Varat ierobežot piekļuvi šai administratora joslas saitei no konkrētām lomām vai lietotājiem. Šis tālāk redzamais fragments noņems administratora joslas izvēlni lietotājiem, kuri nav administratori, - pielāgojiet to.
funkcija remove_admin_bar_links () global $ wp_admin_bar; ja (! current_user_can ('administrators')) $ wp_admin_bar-> remove_menu ('wp-logo'); // Noņemt WordPress logo $ wp_admin_bar-> remove_menu ('about'); // Noņemt WordPress saiti $ wp_admin_bar-> remove_menu ('wporg'); // Noņemt WordPress.org saiti $ wp_admin_bar-> remove_menu ('dokumentācija'); // Noņemt WordPress dokumentācijas saiti $ wp_admin_bar-> remove_menu ('atbalsta-forumi'); // Noņemt atbalsta forumus saiti $ wp_admin_bar-> remove_menu ('atsauksme'); // Noņemt atgriezeniskās saites saiti $ wp_admin_bar-> remove_menu ('vietnes nosaukums'); // Noņemt vietnes nosaukumu saite $ wp_admin_bar-> remove_menu ('view-site'); // Noņemt apmeklējuma vietnes saiti $ wp_admin_bar-> remove_menu ('atjauninājumi'); // Noņemt atjauninājumus saiti $ wp_admin_bar-> remove_menu ('komentāri'); // Noņemt komentāru saiti $ wp_admin_bar-> remove_menu ('new-content'); // Noņemt jauno satura saiti $ wp_admin_bar-> remove_menu ('my-account'); // Noņemiet lietotāja informācijas cilni add_action ('wp_before_admin_bar_render', 'remove_admin_bar_links');