Kaip sukurti komentarų centrinio puslapio šabloną

Vienas iš būdų padidinti lankytojų įsitraukimą yra atsilyginti už jų komentarus pateikiant juos jūsų svetainėje. Be to, taip pat galite pasižymėti aukščiausius komentatorius, proceso metu nukreipdami atgal į jų svetainę. Čia mes sukursime specialų puslapio šabloną, kad tie komentarai ir komentatoriai būtų rodomi vienoje vietoje.


Trumpai tariant, šis vadovėlis išmokys jus:

  1. sukurti puslapio šabloną,
  2. naudokite SQL užklausas savo kode, kad gautumėte komentarus su skirtingais parametrais,
  3. sukurkite puslapio skyrių, kurį mato tik administratorius,
  4. pridėti su komentarais susijusio papildinio palaikymą.

Puslapio šablono kūrimas

Paprasčiausias būdas sukurti puslapio šabloną yra atidaryti savo temos failą page.php, kuris apytiksliai atrodys taip:

<?php get_header (); ?>

<?php if (have_posts ()): while (have_posts ()): the_post (); ?>

<?php the_title (); ?>

<?php the_content (); ?>

<?php comments_template (); ?>
<?php galiausiai; endif; ?>

<?php get_sidebar (); ?>
<?php get_footer (); ?>

Nukopijuokite ir įklijuokite „page.php“ turinį ir pridėkite tai pačiame viršuje:

<?php
/ *
Šablono pavadinimas: Komentarai centriniai
* /
?>

Ir išsaugok. Nėra tikrų taisyklių, kaip pavadinti puslapio šablono failą, tačiau pravartu su prefiksu padaryti jį atpažįstamą, tarkime „pt-comment-central.php“. Į šį puslapio šabloną nieko nepridėjome, tačiau jis veikia ir veikia, jį galima pasirinkti naujo rašymo puslapio informacijos suvestinės srityje..

Gaunami komentarai

Šiame puslapio šablone nurodysime keturis skirtingus komentarų aspektus:

  • Naujausi Komentarai,
  • Naujausi „Trackback“ / „Pingbacks“ įrašai,
  • Svarbiausi komentatoriai,
  • Labiausiai komentuojami pranešimai,

Pirmiausia padarysime Naujausi Komentarai:

Naujausi Komentarai

    <?php
    $ max = 7; // numeris, kurį reikia gauti
    visuotinis $ wpdb;
    $ sql = "PASIRINKITE c. *, P.post_title from $ wpdb->komentarai c INNER JOIN $ wpdb->įrašai P ON (c.comment_post_id = p.ID) WHERE comment_approved = ‘1’ IR comment_type tipo nėra (‘trackback’, ‘pingback’) UŽSAKYTI comment_date DESC LIMIT $ max";
    $ rezultatai = $ wpdb->gauti_rezultatai ($ sql);

    $ šablonas = ‘% g % an apie % pt‘;

    $ aidėjo = 0;
    foreach ($ rezultatai kaip $ eilutė) {
    $ tags = masyvas (‘% ct’, ‘% cd’, ‘% g’, ‘% pt’, ‘% pu’, ‘% au’, ‘% an’, ‘% cid’);
    $ pakaitalai = masyvas ($ eilutė->komentaro pavadinimas, eilutė $->comment_date, get_avatar ($ eilutė->comment_author_email, ’32 ‘), $ eilutė->post_title, get_permalink ($ eilutė->comment_post_ID), $ eilutė->comment_author_url, $ eilutė->comment_author, $ eilutė->komentaras_ID);
    aidėti ‘

  • ‘. str_replace ($ žymės, $ pakaitalai, $ šablonas). ‘
  • ‘;
    $ aidėjo = 1;
    }
    if ($ echoed == 0)
    aidėti ‘

  • Komentaro nerasta.
  • ‘;
    ?>

SQL užklausoje prašoma visų patvirtintų komentarų, surūšiuotų pagal datą (naujausia pirma). Mes nustatome, kiek komentarų reikia gauti, ne daugiau kaip 7 USD, mūsų atveju – 7. Aukščiau pateiktas kodas bus neorganizuotas paskutinių komentarų sąrašas:

Naujausių komentarų sąrašas

Turėdami šiek tiek CSS galime ištiesinti, kad atrodytų geriau:

# cc-neseni-komentarai li {
plotis: 100%;
plūdė: kairė;
sąrašo stiliaus tipas: nėra;
}

# cc-neseni-komentarai li img {
plūdė: kairė;
paraštės viršutinė dalis: -5 taškų;
}

Naujausių komentarų sąrašas su tinkama CSS

$ šablonas nustato, kaip bus parašytas tikrasis tekstas; tai pagrįsta forma, kurią sukūrė WP komentaras Remix, ir galite sekti šią nuorodą, kad sužinotumėte daugiau apie jos pritaikymą (ieškokite žetonų).

Kitas yra Naujausi Pingbacks / Trackback:

Naujausi Pingbacks / Trackback

    <?php
    $ sql = "PASIRINKITE c. *, P.post_title from $ wpdb->komentarai c INNER JOIN $ wpdb->įrašai P ON (c.comment_post_id = p.ID) WHERE comment_approved = ‘1’ IR comment_type tipo nėra (‘trackback’, ‘pingback’) UŽSAKYTI comment_date DESC LIMIT $ max";
    $ rezultatai = $ wpdb->gauti_rezultatai ($ sql);

    $ šablonas = ‘% g % an apie % pt‘;

    $ aidėjo = 0;
    foreach ($ rezultatai kaip $ eilutė) {
    $ tags = masyvas (‘% ct’, ‘% cd’, ‘% g’, ‘% pt’, ‘% pu’, ‘% au’, ‘% an’, ‘% cid’);
    $ pakaitalai = masyvas ($ eilutė->komentaro pavadinimas, eilutė $->comment_date, get_avatar ($ eilutė->comment_author_email, ’32 ‘), $ eilutė->post_title, get_permalink ($ eilutė->comment_post_ID), $ eilutė->comment_author_url, $ eilutė->comment_author, $ eilutė->komentaras_ID);
    aidėti ‘

  • ‘. str_replace ($ žymės, $ pakaitalai, $ šablonas). ‘
  • ‘;
    $ aidėjo = 1;
    }
    if ($ echoed == 0)
    aidėti ‘

  • Komentaro nerasta.
  • ‘;
    ?>

Aukščiau pateiktas kodas yra labai panašus į tą, kurį turime naujausiuose komentaruose. Vieninteliai skirtumai yra tai, kad dabar mes prašome komentarų, nurodydami „comment_type“, esantį „pingback“ / „trackback“, o šablonas taip pat šiek tiek skiriasi. Rezultatas:

Naujausių „Pingbacks“ ir „Trackback“ sąrašas

Štai kodas Svarbiausi komentatoriai:

Svarbiausi komentatoriai

    <?php
    $ sql = "PASIRINKITE komentaro_autorą, komentaro_author_urlą, komentaro_author_postą, skaičiuokite (komentaro_ID) kaip komentaro_skaičiuoti nuo $ wpdb->komentarai KUR komentaro patvirtinta = ‘1’ IR komentaro tipo nėra (‘trackback’, ‘pingback’) GRUPĖS PAGAL komentarų autorių, comment_author_url, comment_author_email UŽSAKYTI komentarų skaičiuoklį DESC LIMIT $ max";
    $ rezultatai = $ wpdb->gauti_rezultatai ($ sql);

    $ template = ‘% g% an (% c komentarų) ‘;

    $ aidėjo = 0;
    foreach ($ rezultatai kaip $ eilutė) {
    $ tags = masyvas (‘% g’, ‘% au’, ‘% an’, ‘% c’);
    $ substittions = masyvas (get_avatar ($ eilutė->comment_author_email, ’32 ‘), $ eilutė->comment_author_url, $ eilutė->comment_author, $ eilutė->komentarų_skaičius);
    aidėti ‘

  • ‘. str_replace ($ žymės, $ pakaitalai, $ šablonas). ‘
  • ‘;
    $ aidėjo = 1;
    }
    if ($ echoed == 0)
    aidėti ‘

  • Nerasta komentatorių.
  • ‘;
    ?>

Nieko per daug įžvalgaus. Pastebėkite vėsą get_avatar () vis dėlto, kuri suteiks „Gravatar“ visiems, kurių el. pašto adresą jūs nurodėte. Tokiu atveju mes gavome avataro vaizdą naudodami komentatoriaus el. Pašto adresą. Turėdami tokį CSS, kokį turime neseniai pateiktose pastabose, galime gauti tokį rezultatą:

# cc-top-komentatoriai li {
plotis: 100%;
plūdė: kairė;
sąrašo stiliaus tipas: nėra;
}

# cc-top-komentatoriai li img {
plūdė: kairė;
paraštės viršutinė dalis: -5 taškų;
}

Populiariausių komentatorių sąrašas

Paskutinis yra Labiausiai komentuojami pranešimai:

Labiausiai komentuojami pranešimai

    $ sql = "PASIRINKITE p. *, C.comment_count NUO $ wpdb->pranešimai p INNER JOIN (PASIRINKTI komentaro_postą, suskaičiuoti (komentaro_ID) kaip komentaro_įrašą iš $ wpdb->komentarai KUR komentarą patvirtinta = ‘1’ GRUPĖ PAGAL komentarą_PID_ID) c ĮJUNGTA (c.comment_post_id = p.ID) UŽSAKYTI c.comment_count DESC LIMIT $ max";
    $ rezultatai = $ wpdb->gauti_rezultatai ($ sql);

    $ template = ‘% pt (% c komentarų) ‘;

    $ aidėjo = 0;
    foreach ($ rezultatai kaip $ eilutė) {
    $ tags = masyvas (‘% pd’, ‘% pt’, ‘% pu’, ‘% c’);
    $ pakaitalai = masyvas ($ eilutė->post_date, $ eilutė->post_title, get_permalink ($ eilutė->ID), $ eilutė->komentarų_skaičius);
    aidėti ‘

  • ‘. str_replace ($ žymės, $ pakaitalai, $ šablonas). ‘
  • ‘;
    $ aidėjo = 1;
    }
    if ($ echoed == 0)
    aidėti ‘

  • Nerasta komentatorių.
  • ‘;
    ?>

Labiausiai komentuojamų įrašų sąrašas

Štai ir viskas. Be to, pridėsime papildomų dalykų, kuriuos gali pamatyti tik administratorius.

Tik administratoriaus informacija

Norėdami parodyti medžiagą tik administratoriams, galime naudoti šį „WPCandy“ kodo fragmentą:

<?php
visuotinis $ user_ID;
if ($ user_ID):
if (current_user_can (‘level_10’)):
// čia tik administratoriaus turimi dalykai.
endif;
endif; ?>

Informacijos suvestinėje greitai apžvelgiame bendrą svetainės patvirtintą, laukiančią peržiūrą ir komentarus apie šlamštą. Pakartokime tai mūsų puslapio šablone, kad būtų lengviau naudotis tik administratoriui:

<?php
$ num_comm = wp_count_comments ();
?>
Iš viso komentarų: /wp-admin/edit-comments.php? “><?php echo $ num_comm->iš viso_komentarų; ?>
Patvirtinta: /wp-admin/edit-comments.php?comment_status=approved “><?php echo $ num_comm->patvirtinta; ?>
Prižiūrima: /wp-admin/edit-comments.php?comment_status=moderated “><?php echo $ num_comm->prižiūrimas; ?>
Šlamštas: /wp-admin/edit-comments.php?comment_status=spam “><?php echo $ num_comm->šlamštas; ?>

Administratorius

wp_count_comments () yra tvarkinga funkcija, kuri pateikia masyvą įvairių komentarų statuso numerių. Taip pat pridedame nuorodas į atitinkamą komentarų administravimo sritį.

Pridėjus keletą kibirkščių

Galiausiai sakykite, kad radote puikių su komentarais susijusių įskiepių, kuriuos norite įtraukti į šį puslapio šabloną. Užuot pridėję daugiau kodų, tiesiog pridėkime jo palaikymą. Dėl šio pavyzdžio aš eisiu su Veiklos kibirkštys papildinys, kuris jūsų šoninėje juostoje gali rodyti „putojančio stiliaus“ diagramą, nurodančią įrašų ir (arba) komentarų veiklą. “Man skamba puikiai.

Paprastai įskiepio skaitymo failas „readme.txt“ išmokys jus pridėti jį prie temos failų. Mūsų atveju kodas gali būti toks:

<?php
if (function_exists (‘activitysparks’)) {
veiklos parkai (masyvas (‘duomenų rinkinys’ =>’legenda’, ‘aukštis_px’ =>100, ‘plotis_px’ =>600, ‘laikotarpis’ =>30, ‘erkės’ =>24));
}
?>

„ActivitySparks“ papildinys

funkcija_eksiste () patikrina, ar yra tam tikra funkcija; mūsų atveju, „functionsparks“ funkcija, kuri bus prieinama, jei papildinys buvo įkeltas ir suaktyvintas. Jei ten yra, rodome diagramą. Jei ne, tada mūsų puslapio šablonas nieko neparodys (bet vis tiek veiks tik gerai, be klaidų).

Rezultatas ir pavyzdys

Šio puslapio šablono pavyzdys yra galima rasti čia. Jis naudoja čia matomus kodus su keliomis modifikacijomis, dažniausiai tam, kad HTML struktūra atitiktų likusią svetainės dalį. Visas to puslapio šablono kodas galima rasti Pastebine.

Kreditai ir kiti skaitymai

  • Kodai, naudojami norint parodyti įvairius naujausius ir svarbiausius komentarus, yra paimti iš WP komentaras Remix Prijunkite. Pažvelkite į jo kodą, kad sužinotumėte daugiau dalykų, susijusių su komentarais, pvz., Išskirti administratorių komentarus iš geriausių komentatorių arba kaip atsižvelgti tik į naujausius komentarus. $ Šabloną, kurį naudojame formatavimui, taip pat galima sužinoti daugiau iš to puslapio.
  • Savo puslapio šablono kūrimas „WordPress“ kodekse.
  • Pateikiama tik administratoriaus turinio pamoka „WPCandy“.
  • Jeffrey Wilson Administrator
    Sorry! The Author has not filled his profile.
    follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map