Izslēdziet dažas WordPress kategorijas no lappuses. Kā izslēgt ziņas un kategorijas no WordPress sākumlapas, RSS plūsmas, kategorijām un arhīviem bez spraudņiem

Mājas lapā, kā arī kategoriju lapās, arhīvos un meklēšanas rezultātos parasti ir nepieciešama lapu navigācija (pazīstama arī kā lappušu pārsūtīšana). Blogi uz WordPress nav izņēmums, tajos tiek izmantota arī lappušu maiņa, kad informācijas izvades rezultāti tiek sadalīti vairākās lapās.

Iepriekš šīs funkcijas ieviešanai tika izmantoti trešo pušu spraudņi vai īpašas funkcijas, kas atradās failā funkcijas.php. Taču, izlaižot WordPress versiju 4.1, lappušu veidošanas funkcija tika iebūvēta SPS kodolā, un tagad ar WordPress iekšējām funkcijām pietiek, lai ieviestu lapas navigāciju un nav jāpievieno trešās puses kods vai spraudņi.

Iepriekš rakstīju par līdzīgu uzlabojumu no WordPress puses saistībā ar tagu TITLE - https://aboutwordpress.ru/post/wordpress-title/.

Kas ir paginācija

Lapu šķirošana ir informācijas sadalīšana lapās. Šis jēdziens nozīmē arī lappušu secīgu numerāciju, ko norāda cipari, kas atrodas lapas apakšā, augšpusē vai sānos.

WP-PageNavi — WordPress lappušu veidošanas spraudnis

Vispopulārākais WordPress lappušu veidošanas spraudnis ir WP-PageNavi. Godīgi sakot, tas tik labi tiek galā ar lappuses uzdevumu, ka nav jēgas apspriest un salīdzināt citus spraudņus.

WordPress lappušu veidošana — spraudnis WP-PageNavi

WordPress lappušu veidošana bez spraudņa

Lai veiktu lappušu kārtošanu vietnē bez spraudņiem, mēs izmantosim WordPress iebūvēto funkciju the_posts_pagination(). Mums vajadzīgajā vietā ir jāievieto šāds kods (parasti tie ir faili indekss.php, kategorija.php un tamlīdzīgi):

Funkcijas the_posts_pagination() rezultāts būs aptuveni šāds HTML kods:

H2 virsraksta noņemšana no lappuses

H2 galvene “Post Navigation” nekavējoties piesaista jūsu uzmanību. Kurai vairumā gadījumu vietnē nav vietas. Lai no tā atbrīvotos, pievienojiet failam šādu kodu funkcijas.php:

/* Noņemt H2 no lappuses */ add_filter("navigation_markup_template", "my_navigation_template", 10, 2); function my_navigation_template($template, $class)( return "

"; }

Lapu lapu iestatīšana

Pēc noklusējuma the_posts_pagination() parāda pirmo un pēdējo lapu, kā arī vienu lapu ap pašreizējo. Visi pārējie tiek aizstāti ar elipsi. Šo uzvedību var mainīt, izmantojot argumentus:

  • show_all — rādīt visas lapas
  • end_size — lappušu skaits saraksta sākumā un beigās
  • mid_size — lappušu skaits pa kreisi un pa labi no pašreizējās lapas

Piemēram, šādi:

2, "gala_izmērs" => 2,)); ?>

CSS lappušu veidošanas stili

Lapu numuri (polsterējums: 1% 2%; lodziņa ēna: 0 0 10 pikseļi # ccc; piemale: 0 1% 0 0; fons: #fff; apmales rādiuss: 3 pikseļi; )

Saites uz lapām ar šiem stiliem izskatīsies šādi:

…kā to izdarīt? ...vispār nav grūti. Un, ja uzdevums ir tieši aizliegt vienas vai otras kategorijas attēlošanu, tad mēs šo kaprīzi atrisināsim dažu minūšu laikā.

Tomēr ir kāds āķis -

...risinot problēmu par kategorijas parādīšanas aizliegumu logrīkā, ar to rodas drūma saistība, proti, jautājums: kā konfigurēt kategoriju attēlošanu vajadzīgajā un loģiskā secībā, bet ne haotiski!?


...jums par to vajadzētu rūpīgi padomāt. ...un skaidri definējiet savas vajadzības. Bet vispirms vispirms: un beigās es jums sniegšu perfektu un ģeniālu risinājumu kategoriju filtrēšanai...

koda vienkāršības izmantošana Ieviešot šādus vajadzīgā/nevajadzīgā emuāra satura aizliegumus/atļaujas, ir vērts paturēt prātā kādu perspektīvu savas vietnes attīstībai, lai nesastaptos ar kādu citu pavadošu “pārsteigumu” būt vai nebūt emuāra atjaunošana nākotnē – vai nu rediģējot failus, vai nomainot spraudņus.

Galu galā vienmēr ir alternatīva: vai izmantot spraudni (to numurs "...kā shag..." ne vienmēr ir labs), vai ierakstīt kodu funkciju failā - f unctions.php (nav slikti, bet neatrisina problēmu viennozīmīgi)!?

Izlem!..

Esmu parādījis nepārdomāta blogošanas sākuma iespējamo tehnisko nepilnību, un tagad piedāvāju iespējamos loģiskā risinājuma veidus:

Ja jums vienkārši jāslēpj noteikta WordPress logrīka kategorija, kas pēc noklusējuma atrodas jebkuras jaunas vietnes vēderā, tas ir vienkārši.

Mēs atveram failu, par kuru mēs runājām par functions.php, un kaut kur tā galīgajā dekodēšanā) pirms taga?> mēs ierakstām šo brašo kodēto filtru.

// RUBRIC IZSLĒGŠANAS KODS sākuma funkcija ext_widget_categories($args)( $exclude = "39"; $args["exclude"] = $izslēgt; return $args; ) add_filter("widget_categories_args","ext_widget_categories"); //RUBRIKAS IZSLĒGŠANAS KODS beigas

Cipars 39 norāda kategorijas ID, kas vietnē tiek filtrēts kā bezjēdzīgs tirgus.

Varat norādīt vairākus, atdalot tos ar komatiem.

...Lūk, viens no jautājumiem ir slēgts.

kā logrīkā paslēpt apakškategorijas attēlojumu

Risinājums ir tieši zemāk esošajā koda versijā, kas aizliedz/atļauj parādīt atsevišķu apakškategoriju nosaukumus (bērnu emuāra ieraksti).

// izvades kods vienīgajām kategorijas apakškategorijām ar norādīto ID=7 sākuma funkciju ext_widget_categories($args)( $args["child_of"] = 7; return $args; ) add_filter("widget_categories_args","ext_widget_categories") ; //izejas kods vienīgajām kategorijas apakškategorijām ar norādīto ID=7 beigām

Šo kodu argumentāciju var apvienot.

Lūk! Mēs esam sasnieguši pilnīgu kontroli pār DISPLEJA vadību visu jūsu kategoriju logrīkā “Kategorijas”.

...bet - tomēr sakām!! Nereti gadās, ka kādu laiku vēlāk, atverot mājas lapas lapu, rūgti tiek atklāts vēl viens defekts: virsraksti sānjoslas logrīkā nav izvietoti loģiskā secībā (nejauši) - ziniet, profesionalitātes attīstīšanas prasība.

Šajā gadījumā jums ir jāizvēlas arī no vairākām jaukām iespējām:

Dosimies uz WordPress spraudņu repozitoriju - ceļš: konsole/plugins/add plugin/...install/activate... tāds brīnums Kategoriju secība un taksonomijas terminu secība.

Spraudņa citāta tehniskais tulkojums:
Sakārtojiet kategorijas un visus taksonomijas terminus (pielāgoti hierarhiski) un pakārtotos terminus, izmantojot velkot un nometot šķirojamās Javascript iespējas.
Spraudnim nav mulsinošu iestatījumu: viss, kas jums jādara, ir jānovieto kursors virs “ierakstiem” konsoles kreisajā pusē un jāskatās uz Taksonomijas pasūtījuma vienumu...

Viss ir paradoksāli vienkārši: velkot dēļus, konfigurējiet optimālo secību esošo virsrakstu nosaukumu parādīšanai.

“Spraudņa” metodes trūkumi ir šādi: jūs nevarat aizliegt noteiktu kategoriju parādīšanu...

Tāpēc jums būs jāizmanto iepriekš ieteiktais kods vai tālāk redzamais spraudnis...

Mēs aizliedzam parādīt dažas kategorijas, izmantojot spraudni NS Category Widget

...atkal ieejam WordPress depozitārijā un lejupielādēsim NS Category Widget spraudni – šis “lēciens” papildus esošajam logrīkam “Categories” dos vēl vienu, bet elegantāku iestatījumu: t.i. – parasts logrīks ir jāizdzēš vai paslēpts kā “neaktīvs” un konfigurēt šo papildu opciju satura pārvaldībai: tā rādīšana/bloķēšana.

Dodieties uz tā iestatījumiem un iestatiet savus noteikumus: pēc kategorijas ID, hierarhiju nozīmīguma un līdzīgiem pielāgojumiem... Tas ir vienkārši!

Spraudnis ļauj izmantot daudzas logrīku vienības nepieciešamajos lapu līmeņos, kurām iestatījumi ir individuāli, atšķirībā no standarta “kategorijas”, no kurām var parādīt vismaz duci, bet “augšējā” koda iestatījumus. attieksies uz visiem: tas ir mīnuss iespējai savienot standarta “kategorijas” logrīku un pašā raksta sākumā aprakstīto kodu... Un, ja kategoriju logrīkiem plānojat izmantot vairākas opcijas, tad tomēr vajadzētu lejupielādējiet spraudni NS Category Widget.

BET! uzlabotajā nav vienkāršākas un smalkākas kategoriju šķirošanas kārtības - tas ir tā trūkums. Tāds apjukums!

Lēmums ir jūsu...

...ja rakstā kaut ko noderīgu ieraudzīji sev, lieliski!

Sveiki puiši!

Šodien būs tehnisks raksts, kas parādīs, kā izslēgt ziņas no WordPress vietnes galvenās lapas.

Jūs arī uzzināsit, kā izslēgt visas kategorijas, nevis tikai konkrētus ierakstus. Es jums parādīšu daudzas iespējas gan ar spraudņiem, gan bez tiem. Kopumā viss ir kā vienmēr.

Kādos gadījumos to vajadzētu lietot?

Nepieciešamība izslēgt dažus ierakstus, tas ir, to paziņojumus, no galvenās lapas, pārsvarā pastāv personīgajos emuāros, kad papildus lieliem, kvalitatīviem rakstiem pastāvīgai auditorijai, ir vērts papildināt resursu arī ar vienkāršiem SEO optimizētiem rakstiem. .

Šādi raksti, visticamāk, nebūs noderīgi emuāra dalībniekiem, jo ​​viņi to visu jau zina. Lai neapgrūtinātu galveno lapu ar liekiem sludinājumiem, labāk tos nerādīt. Tajā pašā laikā tie ir jāpievieno vietnei, lai piesaistītu resursam jaunas mērķauditorijas no meklētājprogrammām. Tie arī ir jāparāda, taču tas jādara sadaļu un arhīvu lapās, lai jaunpienācēji tos varētu atrast, izmantojot navigāciju vietnes sadaļās.

Piemēram, jūs neatradīsiet šo rakstu mana emuāra galvenajā lapā nevienā to lappušu lapā (lapas navigācija). Tajā pašā laikā raksta sludinājums ir redzams sadaļā “Noderīgi” un vietnes kartes lapā “Visi raksti”.

Bez spraudņa

Metode bez spraudņa vienmēr ir ieteicama, taču šajā gadījumā tā nebūs prioritāte, jo, lai izslēgtu kādu rakstu, jums katru reizi ir jāveic izmaiņas veidnes failā, kuru esat instalējis. Bet tomēr es parādīšu vairākas dažādas iespējas šāda risinājuma ieviešanai, jo ir pilnīgi iespējams, ka tas jums būs piemērots.

Zemāk es sniegšu dažādus koda fragmentus, kas jāievieto functions.php veidnes failā.

Konkrētu ierakstu izslēgšana pēc ID

Izmantojot šo opciju, nav nepieciešams slēpt visas kategorijas no redzamības galvenajā lapā, kā to dara daudzi ar dažādu spraudņu palīdzību. Viss, kas jums jādara, ir jāpievieno kodā nepieciešamo ierakstu ID.

funkcija include_post($query) ( if ($query->is_home) ($query->

if ($query -> is_home )

($query -> // pasta id

atgriezt $query ; )

3. rindā cipari 1 un 2 ir ID ieraksti, kas netiks rādīti sākumlapā. Jums tas jāraksta, atdalot tos ar komatiem.

Ziņas, lapas un kategorijas ID uzzināsiet pārlūkprogrammas adreses joslā, skatoties caur redaktoru.

Nākamā opcija ļaus izslēgt ierakstus no RSS plūsmas.

Izslēgšana no RSS plūsmas

Šis kods ļaus jums izslēgt paziņojumus no ziņu plūsmas un nesūtīt tos pa e-pastu, ja izmantojat abonēšanas un paziņojumu pakalpojumu, izmantojot Feedburner.

funkcija exclude_post($query) ( if ($query->is_feed) ($query->set("post__not_in", array(1, 2));) // post (post) id return $query; ) add_filter(" pre_get_posts","izslēgt_ziņu");

funkcija external_post ($query) (

if ($query -> is_feed )

( $query -> set ( "post__not_in" , masīvs ( 1 , 2 ) ) ;) // pasta id

atgriezt $query ; )

add_filter ("pre_get_posts" , "exclude_post" ) ;

Ierakstu pievienošana šajā gadījumā un visos citos gadījumos notiek tādā pašā veidā.

Izslēgšana no kategorijām un arhīviem

Lai izslēgtu ziņas no kategoriju lapām, izmantojiet šādu kodu.

funkcija exclude_post($query) ( if ($query->is_category) ($query->set("post__not_in", array(1, 2));) // post (post) id return $query; ) add_filter(" pre_get_posts","izslēgt_ziņu");

funkcija external_post ($query) (

if ($vaicājums -> ir_kategorija )

( $query -> set ( "post__not_in" , masīvs ( 1 , 2 ) ) ;) // pasta id

atgriezt $query ; )

add_filter ("pre_get_posts" , "exclude_post" ) ;

Šo kodu var modificēt, lai piemērotu izņēmumu no arhīviem. Nepieciešams 2. korpusā funkciju is_category aizstāt ar is_archive.

Izslēgšana no meklēšanas lapas

Šī opcija var būt nepieciešama arī tad, ja daži ieraksti nav jāparāda apmeklētājiem, kad viņi izmanto vietnes meklēšanu. Piemēram, tie varētu būt dažādi ziņu raksti, kas nesatur saturu par vietnes tēmu.

funkcija exclude_post($query) ( if ($query->is_search) ($query->set("post__not_in", array(1, 2));) // post id return $query; ) add_filter(" pre_get_posts", "izslēgt_ziņu");

funkcija external_post ($query) (

if ($query -> is_search )

( $query -> set ( "post__not_in" , masīvs ( 1 , 2 ) ) ;) // pasta id

atgriezt $query ; )

add_filter ("pre_get_posts" , "exclude_post" ) ;

Apvienojot vairākas iespējas

Varat apvienot visas iepriekš minētās opcijas un izslēgt ierakstus no visu veidu lapām uzreiz vai selektīvi uz nepieciešamajām lapām.

Ja kārtīgi apskatāt visus kodus, tad 2. rindiņā var redzēt nosacījumu, kurā lapas tipu parametrs ir iestatīts, lai atspējotu tajos ziņu paziņojumu rādīšanu:

  • is_search
  • ir_kategorija
  • is_feed
  • is_home

Varat apvienot visas iespējas un izslēgt ziņas no jebkuras vietas vai dažās lapās. Piemēram, izslēgšanai no kategorijām un galvenās, failā functions.php jāievieto šāds kods.

funkcija external_post($query) ( if ($vaicājums->is_kategorija || ($vaicājums->is_mājas)) ($query->set("post__not_in", array(1, 2));) // post id ) return $query; ) add_filter("pre_get_posts","exclude_post");

funkcija external_post ($query) (

if ($vaicājums -> ir_kategorija || ($vaicājums -> ir_mājas_vieta ) )

( $query -> set ( "post__not_in" , masīvs ( 1 , 2 ) ) ;) // pasta id

atgriezt $query ; )

add_filter ("pre_get_posts" , "exclude_post" ) ;

2. rindiņa ar nosacījumu (ja) satur kategoriju (is_category) vai mājas (is_mājas) parametrus.

Ņemiet vērā, ka katrs nākamais parametrs ir ierakstīts iepriekšējā, izmantojot 2 vertikālas joslas, un atrodas atsevišķās iekavās. Tas ir, ja skatāties uz iepriekšējo kodu, jūs redzēsit, ka otrais galvenās lapas nosacījums ir ietverts savās iekavās un atrodas vispārējās iekavās, kas apņem pirmo kategoriju nosacījumu.

Ja ir vērts pievienot kādu trešo nosacījumu, piemēram, arhīva lapām, tad to ir vērts pievienot iekavās ar nosacījumu galvenajam (is_home) un ierakstīt to caur 2 vertikālām joslām. Praksē tas izskatās šādi.

funkcija include_post($query) ( if ($query->is_category || ($query->is_home || ($query->is_archive))) ($query->set("post__not_in", masīvs(1, 2) );) // post id return $query; ) add_filter("pre_get_posts","exclude_post");

funkcija external_post ($query) (

if ($vaicājums -> ir_kategorija || ($vaicājums -> is_home || ($vaicājums -> ir_arhīvs ) ) )

( $query -> set ( "post__not_in" , masīvs ( 1 , 2 ) ) ;) // pasta id

atgriezt $query ; )

add_filter ("pre_get_posts" , "exclude_post" ) ;

Izmantojot to pašu principu, pievienojiet cita veida lapas, kas jāizslēdz.

Nākamā ierakstu izslēgšanas iespēja ir visu virsrakstu (kategoriju) izslēgšana.

Izslēdzot visas kategorijas

Tas ir ļoti ērti slinkiem cilvēkiem, kad jūs varat vienkārši izveidot sava veida kategoriju un pievienot tur visus ierakstus, kuriem nav nepieciešama parādīšana noteikta veida lapās.

Koda struktūra ir gandrīz tāda pati. Tas maina tikai parametru, kas nosaka ziņas vai kategorijas izslēgšanu. Iepriekš apspriestajos gadījumos pēdējā rindiņa tika iestatīta kā izslēgts_posts. Jaunajā kodā tas jāaizstāj ar include_cat.

funkcija exclude_cat($query) ( if ($query->is_home) ($query->set("cat","-1, -2, -3");) // kategorijas ID atgriež $query; ) add_filter( "pre_get_posts","exclude_cat");

funkcija external_cat ($query) (

if ($query -> is_home )

( $query -> set ("cat" , "-1, -2, -3" ) ; ) // kategorijas ID

atgriezt $query ; )

add_filter ("pre_get_posts" , "exclude_cat" ) ;

Kā redzat, pēdējā rindā ir veiktas izmaiņas un 3. rindā, kur ir mainīts parametrs, kas nolasa kategorijas ID. ID šajā gadījumā tiek rakstīts ar domuzīmi, bet arī ar komatu.

Lapu veidu nosacījumu konstruēšanas princips ir līdzīgs iepriekš apspriestajām opcijām, kur es parādīju konkrētu ziņu izslēgšanas piemēru. Ir vērts mainīt 2. rindiņu, pievienojot nepieciešamos parametrus kategorijām, meklēšanai, arhīviem vai RSS plūsmām.

Tātad, mēs apskatījām metodes bez spraudņa. Ir arī iespēja izslēgt ierakstus par tagiem, taču tagad tagi vairs nav īpaši aktuāli 99% resursu. Ja jums nepieciešama šāda informācija, lūdzu, rakstiet par to komentāros. Tūlīt visu pievienošu.

Spraudņi

Spraudņi šajā jautājumā ir elastīgāks risinājums, jo, izslēdzot konkrētus ierakstus, nav nepieciešams katru reizi rediģēt veidnes failu. Ir vērts atzīmēt vēlamo ziņu redaktorā izvēles rūtiņu, publicējot tos vai pēc tam.

Ja ir vērts izslēgt īpašu kategoriju, kas izveidota rakstiem, kuriem nav nepieciešams attēlojums, tad labāk izmantot kādu no iepriekš norādītajiem kodiem.

Vienkārši izslēdziet spraudni

Spraudni var lejupielādēt, izmantojot WordPress konsoli, izmantojot meklēšanu, vai no oficiālā WordPress vietne.

Pēc aktivizēšanas tas jau darbosies, un jums tas nav jākonfigurē. Tomēr es iesaku veikt dažas izmaiņas, lai padarītu darbu ar tā funkcijām patīkamāku.

Pēc instalēšanas un aktivizēšanas mēs nekavējoties pārejam uz tā iestatījumiem.

Sākotnēji spraudņa iestatījumos viss ir iestatīts tā, ka, aktivizējot izvēles rūtiņu (mēs to apskatīsim tālāk), vajadzīgās lapas (ziņas, kategorijas, lapas) tiks atzīmētas kā "atļauts parādīt". Tādējādi katram lapas veidam jums būs jāatzīmē visas izvēles rūtiņas, lai viss tiktu parādīts.

Loģiskāk būtu šo opciju iestatīt, kad, aktivizējot izvēles rūtiņu (piemēram, galvenajai lapai), tas atzīmēs rakstu vai ko citu kā aizliegtu attēlošanai.

Iestatījumos ir 3 cilnes, kas paredzētas dažādu veidu lapu iestatījumu konfigurēšanai:

  • Taksonomijas (taksonomijas) - spraudņa darbības iestatījumi WordPress admin paneļa sadaļās: kategorijas un tagi;
  • Ziņu veidi - ziņu veidiem: raksti un lapas;
  • Lietotāji - iestatījumi lietotājiem.

Tagad es sniegšu pirmās cilnes (taksonomijas) iestatījumu ekrānuzņēmumu un paskaidrošu parametrus, kas jāiestata.

  • Pirmajā iestatījumu blokā "Aktīvs" ir jāiestata izvēles rūtiņa "Aktīvs", lai spraudnis pievienotu nepieciešamās izvēles rūtiņas, lai atspējotu rādīšanu kategorijās vai jebkāda cita veida lapās;
  • Otrajā blokā mēs iestatām visus parametrus pretī opcijai “Izslēgt”. Tas nozīmē, ka, ja izvēles rūtiņa ir iespējota katra veida lapas redaktorā, tā tiks paslēpta un pēc noklusējuma tiks atvērti jauni raksti. Ja iestatāt parametru "Iekļaut tikai", tad, atzīmējot izvēles rūtiņu, ieraksti tiks atvērti attēlošanai un jaunie raksti pēc noklusējuma tiks paslēpti. Ja ir atlasīta otrā opcija “Iekļaut tikai”, tad pēc spraudņa instalēšanas visi ieraksti tiks paslēpti un jums būs jāiestata opcija “Izslēgt”;
  • Blokā "Rādīt/slēpt" iestatiet parametru "Rādīt", lai katra veida lapā tiktu parādītas nepieciešamās izvēles rūtiņas, lai varētu atspējot vai iespējot displeju.

Tie paši parametri jāievada pārējās 2 spraudņa “Vienkārši izslēgšanas” iestatījumu cilnēs.

Piemēram, šeit ir cilnes “Ziņu veidi” ekrānuzņēmums.

Protams, jūs varat atspējot dažu funkciju darbību, piemēram, pirmajā cilnē varat deaktivizēt kategoriju spraudni, ja mēs negrasāmies izslēgt visas visas kategorijas ziņas.

Tagad par paša spraudņa darbu. Kad esat iestatījis nepieciešamos parametrus, varat doties uz redaktoru katram ieraksta veidam un ievietot izvēles rūtiņas blakus tām lapām, kurās vēlaties izslēgt to parādīšanu.

Piemēram, lai iestatītu iestatījumus ziņām, varat doties uz vajadzīgā raksta redaktoru vai izmantojot vienumu Visi raksti. Gan tur, gan tur būs vajadzīgās izvēles rūtiņas. Redaktora labajā kolonnā būs bloks “Vienkārši izslēgt”, kurā ir 4 izvēles rūtiņas, lai paslēptu ziņas un lapas:

  • Arhīvi - kategorijas un arhīvi;
  • Plūsmas - RSS plūsmas;
  • Front/Home - galvenais;
  • Meklējumi - meklēt.

Atzīmējot vajadzīgo izvēles rūtiņu, jūs varat paslēpt ziņu no noteikta veida lapas.

WordPress administratora panelī "Visas ziņas" pretī katram materiālam jaunā kolonnā ar nosaukumu "Vienkārši izslēgt šovu" būs arī šīs 4 izvēles rūtiņas. Tas pats attiecas uz rubrikām. Tiks pievienota jauna kolonna ar visām izvēles rūtiņām.


Tas ir viss šim spraudnim. Instalējot to, jūs varat ļoti ātri un elastīgi mainīt konkrētu ziņu vai visu kategoriju displeja parametrus, neiejaucoties veidņu failos.

Izslēgšanas kategoriju spraudnis

Spraudnis ir paredzēts tikai visas kategorijas paslēpšanai no galvenās lapas un RSS plūsmas. Tā kā šī opcija neprasa lielu elastību (vienreiz izveidoju kategoriju un pievienoju tur rakstus), iesaku ieviest visas kategorijas izslēgšanu, izmantojot kodu (skat. 2. punktu).

Spraudni var lejupielādēt, izmantojot tālāk esošo pogu.

Pēc instalēšanas dodieties uz iestatījumiem (Settings - Exclude Category) un atlasiet vajadzīgo kategoriju, lai to izslēgtu no galvenās lapas.

Visu kategorijas ierakstu izslēgšana ir izplatīta iespēja. Bet es tajā redzu trūkumu, jo vietnei ir jāpublicē daudz rakstu, lai piesaistītu meklēšanas trafiku, un tie visi būs par dažādiem vienas tēmas jautājumiem.

Bet dažādu materiālu sagrūšana vienā kategorijā nav īpaši laba.

Šo iespēju bieži izmanto arī, aktīvi pārdodot saites vietnē. Īpašnieks izveido sadaļu un publicē tajā visus rakstus ar pārdošanas saitēm. Un tas arī nav ļoti labi, jo tagad tīmekļa pārziņi pieprasa ievietot saiti vienā no galvenajām vietnes sadaļām, lai tā būtu vismaz nedaudz noklikšķināma un iedarbotos reklāmas laikā.

Tas ir viss, puiši, ar šo piezīmi es beidzu šo detalizēto rokasgrāmatu, kurai vajadzētu būt noderīgai, ja esat nonācis šī raksta īstajā vietā. Es ceru, ka jums viss būs labi.

Es novēlu jums brīnišķīgu noskaņojumu un brīnišķīgu dienu. Uz redzēšanos.

Ar cieņu, Konstantīns Hmeļevs!

Šodien ir raksts par to, kā manuāli, neizmantojot spraudņus, varat izslēgt kategorijas no WordPress vietnes galvenās lapas.

Ir vairāki veidi, kā emuāra vietnes galvenajā lapā izslēgt ziņas no noteiktas kategorijas. Viens no vienkāršākajiem veidiem, manuprāt, ir failam pievienot nelielu koda fragmentu funkcijas.php. Šis koda fragments būs sava veida filtrs, kas pasargās mūs no nepieciešamības mainīt citus motīvu failus. Izmantojot šo metodi, jums nav jātērē laiks, pārstrādājot ierakstu izvadīšanas ciklu failā indekss.php cauri query_posts.

Tātad, aplūkosim piemēru:

1) Pieņemsim, ka mums ir jāizdzēš ieraksti no kategorijas, kuras identifikācijas numurs ir 4, tas ir, ID = 4. Citiem vārdiem sakot, mums ir jāizslēdz ziņas no kategorijas, kuras ID ir 4, no galvenās lapas.

2) Mēs esam izlēmuši par uzdevumiem, sāksim tos īstenot - šim nolūkam mēs tos pievienosim failam funkcijas.phpšādu koda daļu:

Funkcija removeFromHome($query) ( if ($query->is_home) ($query->

Mēs saglabājam modificēto failu funkcijas.php un mēs redzam, ka galvenajā lapā vairs nav ierakstu no kategorijas ID=4.

No WordPress loģikas viedokļa galvenā lapa ir arī jebkura cita lapa, kuru veido lapas navigācija. Tādējādi mēs neredzēsim ziņas no izslēgtās kategorijas ID=4 2., 3. vai 4. lappusē utt.

Ja šī opcija jums nav piemērota, varat nedaudz mainīt iepriekš minēto kodu uz šo:

Funkcija removeFromHome($query) ( if ($query->is_home && !(is_paged())) ($query->set("cat","-5");) atgriež $query; ) add_filter("pre_get_posts" "removeFromHome");

Mēs saglabājam un tagad katrā lapā, izņemot galveno lapu, ieraksti no kategorijas ar ID=4 tiks parādīti normāli.

Kategoriju ierakstu izslēgšana no meklēšanas rezultātiem

Ja jums ir jāizslēdz kategoriju ieraksti no meklēšanas rezultātu lapas, jums vienkārši ir jāmaina is_home ieslēgts is_search.

Lai izslēgtu ierakstus no vairākām kategorijām, iepriekš minētajos kodos ir jānorāda šo kategoriju ID, atdalot tos ar komatiem. Pieņemsim, ka jums ir jāizslēdz kategorijas, kuru ID ir 3,7,8,9. Pēc tam kodā būs šādas izmaiņas:

Funkcija removeFromFeed($query) ( if ($query->is_feed) ($query->set("cat","-3, -7, -8, -9");) atgriež $query; ) add_filter(" pre_get_posts","removeFromFeed");

Kategoriju ierakstu izslēgšana no RSS plūsmas

Kā rīkoties, ja no RSS plūsmas jāizslēdz ziņas no noteiktas kategorijas? Un jūs to varat izdarīt ļoti vienkārši - izmantojiet zemāk esošo kodu:

Funkcija removeFromFeed($query) ( if ($query->is_feed) ($query->set("cat","-4");) return $query; ) add_filter("pre_get_posts","removeFromFeed");

Mēs saglabājam izmaiņas un redzam, ka plūsmā vairs nav ziņu no kategorijas, kas mums nav vajadzīga.

Kategoriju ierakstu izslēgšana no RSS plūsmas un galvenās lapas

Ja pēkšņi jums jāpārliecinās, ka noteiktas kategorijas ziņas netiek rādītas galvenajā lapā un plūsmā, jums ir jāizmanto šāds kods:

Funkcija removeCat($query) ( if ($query->is_feed || ($query->is_home && !(is_paged()))) ($query->set("cat","-3,-7") ;) return $query; ) add_filter("pre_get_posts","removeCat");

Šajā gadījumā ieraksti kategorijās, kuru ID ir 3, netiks rādīti galvenajā lapā un RSS plūsmā, bet tiks parādīti, atverot citas lapas.

Izmaiņas failā funkcijas.php var ievadīt jebkurā vietā, bet nepieskaroties citas funkcijas kodam. Vienkāršākais veids ir pievienot kodu faila beigās.

Ir labi zināms, ka lappušu pārklāšana izraisa lapu dublēšanos. Tas, savukārt, var novest pie tā, ka šāda vietne var “nokrist” meklēšanas rezultātos. Šajā gadījumā vienīgā izeja no šīs situācijas ir pārliecināties, ka meklēšanas roboti “neredz”, ka jebkurā vietā vietnē ir lappušu maiņa.

Kā bloķēt lappušu indeksēšanu?

Viena no metodēm, kā atrisināt šo problēmu, ir pievienot lapām noindex direktīvu. Galu galā tiem vajadzētu izskatīties šādi:

noindex ir īpaša direktīva, ko izmanto, lai norādītu saites, kuras nav vēlamas meklētājprogrammu indeksēšanai. Kad meklēšanas robots tam uzklups, tas uzreiz “sapratīs”, ka šī lapa nav jāņem vērā. Viņš to vienkārši izlaidīs, tāpēc tas netiks iekļauts to sarakstā, kurus vajadzētu pievienot indeksam.

No visiem problēmas risināšanas veidiem vispareizākais un vienkāršākais WordPress lietotājam ir spraudnis, kas ar diviem klikšķiem paslēps no meklētājprogrammām lapas. Lai to izdarītu, vienkārši dodieties uz administratora sadaļu Clearfy Pro, pēc tam cilnē SEO iespējot opciju Noindex lappušu šķirošanai.

Papildus spraudnim Clearfy Pro, ir arī citi, mazāk ērti veidi, kā bloķēt lappušu nolikšanu no robotiem. Apskatīsim populārākos no tiem.

1. metode: fails functions.php

Šī metode ietver īpaša PHP koda pievienošanu aktīvajam motīva failam.

Ja nezināt, kā rediģēt functions.php, spraudnis jums palīdzēs.

Tātad pašās beigās jums jāpievieno šādas rindas:

Funkcija wpschool_noindex_pagination() ( if(is_paged()) echo " "; ); add_action("wp_head", "wpschool_noindex_pagination");

Tā rezultātā kods darbojas lappušu lapās (sākot no otrās), sadaļā , būs redzama iepriekš minētā rinda:

2. metode. Robots.txt fails

Lapu šķirošanas lapām varat pievienot arī noindex, izmantojot īpašu failu robots.txt, kas atrodas jūsu vietnes saknes direktorijā. Tajā jāpievieno šāda rinda:

Neatļaut: */lapa/

Šī metode ir līdzīga iepriekšējai un dod tādu pašu rezultātu.