Како створити коментаре централног предлошка странице у ВордПресс-у

Један од начина за повећање ангажмана посетилаца је награђивање њихових коментара тако што ћете их приказати на својој веб локацији. Поред тога, такође можете да поставите главне коментаторе, повезујући се са њиховим веб локацијама у том процесу. Овде ћемо створити наменски предложак странице који ће на једном месту приказати коментаре и коментаре.


Укратко, овај водич ће вас научити како:

  1. креирајте предложак странице,
  2. користите СКЛ упите у вашем коду да бисте дохватили коментаре са различитим параметрима,
  3. направите део странице који Админ може видети само,
  4. додајте подршку за додатак који се односи на коментаре.

Креирање предлошка странице

Најлакши начин за креирање предлошка странице је отварање датотеке паге.пхп у вашој теми, која ће отприлике изгледати овако:

<?пхп гет_хеадер (); ?>

<?пхп иф (хаве_постс ()): вхиле (хаве_постс ()): тхе_пост (); ?>

<?пхп тхе_титле (); ?>

<?пхп тхе_цонтент (); ?>

<?пхп цомментс_темплате (); ?>
<?пхп ендгетхер; ендиф; ?>

<?пхп гет_сидебар (); ?>
<?пхп гет_фоотер (); ?>

Копирајте и залепите садржај паге.пхп и додајте ово на сам врх:

<?пхп
/ *
Име шаблона: Коментари Централни
* /
?>

И сачувај. Не постоје права правила о називу датотеке предлошка странице, али добра је идеја да идете префиксом како бисте га учинили препознатљивим, рецимо, “пт-цоммент-централ.пхп”. Нисмо додали ништа у овај предложак странице, али оно се покреће и може бирати на пољу писања нове странице надзорне табле.

Преузимање коментара

За овај предложак странице имаћемо четири различита аспекта коментара:

  • Недавни коментари,
  • Недавне повратне поруке,
  • Топ Цомментерс,
  • Већина коментарисаних постова,

Прво ћемо учинити Недавни коментари:

Недавни коментари

    <?пхп
    $ мак = 7; // бројчана ставка коју треба добити
    глобални $ впдб;
    $ скл = "СЕЛЕЦТ ц. *, П.пост_титле ОД $ впдб->коментари ц ИННЕР ЈОИН $ впдб->постс п ОН (ц.цоммент_пост_ид = п.ИД) ГДЈЕ цоммент_аппровед = ‘1’ АНД цоммент_типе нот ин (‘трацкбацк’, ‘пингбацк’) НАРУЧИТЕ ПО коментару_дат ДЕСЦ ЛИМИТ $ мак";
    $ ресултс = $ впдб->гет_ресултс ($ скл);

    $ темплате = ‘% г % ан на % пт‘;

    $ ецхоед = 0;
    фореацх ($ резултати као $ ров) {
    $ тагс = низ (‘% цт’, ‘% цд’, ‘% г’, ‘% пт’, ‘% пу’, ‘% ау’, ‘% ан’, ‘% цид’);
    $ субститутионс = низ ($ ров)->цоммент_титле, $ ров->цоммент_дате, гет_аватар ($ ров->цоммент_аутхор_емаил, ’32 ‘), $ ров->пост_титле, гет_пермалинк ($ ров->коментар_пост_ИД), $ ров->цоммент_аутхор_урл, $ ров->цоммент_аутхор, $ ров->цоммент_ИД);
    одјек ‘

  • ‘. стр_реплаце ($ тагови, $ замјене, $ предложак). ‘
  • ‘;
    $ ецхоед = 1;
    }
    иф ($ ецхоед == 0)
    одјек ‘

  • Није пронађен ниједан коментар.
  • ‘;
    ?>

СКЛ упит тражи све одобрене коментаре поредане по датуму (први најновији). $ мак је оно где постављамо количину коментара које добијамо, 7 у нашем случају. Излаз горњег кода представљаће неуређен списак недавних коментара:

Листа недавних коментара

Уз мало ЦСС-а то можемо исправити да изгледа боље:

# цц-рецент-цомментс ли {
ширина: 100%;
плута: лево;
лист-стиле-типе: ноне;
}

# цц-рецент-цомментс ли имг {
плута: лево;
маргин-топ: -5пк;
}

Листа недавних коментара са одговарајућим ЦСС-ом

$ темплате одређује како ће се писати стварни текст; ово се заснива на формату који је направио Ремик коментара ВП-а, и можете да пратите ту везу да бисте сазнали више о томе како да је прилагодите (потражите „токене“).

Следеће је Недавни пингбацк / повратне поруке:

Недавни пингбацк / повратне поруке

    <?пхп
    $ скл = "СЕЛЕЦТ ц. *, П.пост_титле ОД $ впдб->коментари ц ИННЕР ЈОИН $ впдб->постс п ОН (ц.цоммент_пост_ид = п.ИД) ГДЈЕ цоммент_аппровед = ‘1’ АНД цоммент_типе нот ин (‘трацкбацк’, ‘пингбацк’) НАРУЧИТЕ ПО коментару_дат ДЕСЦ ЛИМИТ $ мак";
    $ ресултс = $ впдб->гет_ресултс ($ скл);

    $ темплате = ‘% г % ан на % пт‘;

    $ ецхоед = 0;
    фореацх ($ резултати као $ ров) {
    $ тагс = низ (‘% цт’, ‘% цд’, ‘% г’, ‘% пт’, ‘% пу’, ‘% ау’, ‘% ан’, ‘% цид’);
    $ субститутионс = низ ($ ров)->цоммент_титле, $ ров->цоммент_дате, гет_аватар ($ ров->цоммент_аутхор_емаил, ’32 ‘), $ ров->пост_титле, гет_пермалинк ($ ров->коментар_пост_ИД), $ ров->цоммент_аутхор_урл, $ ров->цоммент_аутхор, $ ров->цоммент_ИД);
    одјек ‘

  • ‘. стр_реплаце ($ тагови, $ замјене, $ предложак). ‘
  • ‘;
    $ ецхоед = 1;
    }
    иф ($ ецхоед == 0)
    одјек ‘

  • Није пронађен ниједан коментар.
  • ‘;
    ?>

Горњи код је врло сличан ономе који имамо за Недавне коментаре, једине разлике су у томе што сада тражимо коментаре са „цоммент_типе“ под „пингбацк“ / „трацкбацк“, а шаблон је такође мало другачији. Резултат:

Листа недавних пингбацк-ова и повратних веза

Ево код за Топ Цомментерс:

Топ Цомментерс

    <?пхп
    $ скл = "СЕЛЕЦТ цоммент_аутхор, цоммент_аутхор_урл, цоммент_аутхор_емаил, рачунај (цоммент_ИД) као цоммент_цоунт ОД $ впдб->коментари ГДЕ цоммент_аппровед = ‘1’ АНД цоммент_типе нот ин (‘трацкбацк’, ‘пингбацк’) ГРУПА БИ цоммент_аутхор, цоммент_аутхор_урл, цоммент_аутхор_емаил НАРУЧИТЕ ПО цоммент_цоунт ДЕСЦ ЛИМИТ $ мак";
    $ ресултс = $ впдб->гет_ресултс ($ скл);

    $ темплате = ‘% г% ан (% ц коментара) ‘;

    $ ецхоед = 0;
    фореацх ($ резултати као $ ров) {
    $ тагс = низ (‘% г’, ‘% ау’, ‘% ан’, ‘% ц’);
    $ субститутионс = низ (гет_аватар ($ ров)->цоммент_аутхор_емаил, ’32 ‘), $ ров->цоммент_аутхор_урл, $ ров->цоммент_аутхор, $ ров->цоммент_цоунт);
    одјек ‘

  • ‘. стр_реплаце ($ тагови, $ замјене, $ предложак). ‘
  • ‘;
    $ ецхоед = 1;
    }
    иф ($ ецхоед == 0)
    одјек ‘

  • Није пронађен ниједан коментатор.
  • ‘;
    ?>

Ништа превише не смета. Примијетите цоол гет_аватар () функција, која ће вам дати Граватар за свакога чију адресу е-поште наведете. У овом случају, слику аватар-а добијамо помоћу е-маил адресе коментатора. Овакав резултат је ЦСС сличан ономе који имамо за недавне коментаре:

# цц-топ-коментари ли {
ширина: 100%;
плута: лево;
лист-стиле-типе: ноне;
}

# цц-топ-цомментерс ли имг {
плута: лево;
маргин-топ: -5пк;
}

Списак најбољих коментатора

Последња је Већина коментарисаних постова:

Већина коментарисаних постова

    $ скл = "СЕЛЕЦТ п. *, Ц.цоммент_цоунт ОД $ впдб->постс п ИННЕР ЈОИН (СЕЛЕЦТ цоммент_пост_ид, цоунт (цоммент_ИД) ас цоммент_цоунт фром $ впдб->коментари ГДЕ цоммент_аппровед = ‘1’ ГРУПА БИ цоммент_пост_ид) ц ОН (ц.цоммент_пост_ид = п.ИД) НАРУЏБА ПО ц.цоммент_цоунт ДЕСЦ ЛИМИТ $ мак";
    $ ресултс = $ впдб->гет_ресултс ($ скл);

    $ темплате = ‘% пт (% ц коментара) ‘;

    $ ецхоед = 0;
    фореацх ($ резултати као $ ров) {
    $ тагс = низ (‘% пд’, ‘% пт’, ‘% пу’, ‘% ц’);
    $ субститутионс = низ ($ ров)->пост_дате, $ ров->пост_титле, гет_пермалинк ($ ров->ИД), $ ред->цоммент_цоунт);
    одјек ‘

  • ‘. стр_реплаце ($ тагови, $ замјене, $ предложак). ‘
  • ‘;
    $ ецхоед = 1;
    }
    иф ($ ецхоед == 0)
    одјек ‘

  • Није пронађен ниједан коментатор.
  • ‘;
    ?>

Листа најкоментиранијих порука

И то је то. Затим ћемо додати додатну хладноћу додавањем неких ствари које може видети само администратор.

Информације само за администрацију

Да бисмо приказали ствари само за администраторе, можемо да користимо овај исечак кода од ВПЦанди:

<?пхп
глобални $ усер_ИД;
ако ($ усер_ИД):
ако (тренутни_усер_цан (‘ниво_10’)):
// овде су доступни само администратори.
ендиф;
ендиф; ?>

Сада на надзорној табли добијамо брз преглед укупног, одобреног сајта, на чекању за преглед и нежељене коментаре. Да поновимо ово на наш предложак странице ради лакшег приступа само администратору:

<?пхп
$ нум_цомм = вп_цоунт_цомментс ();
?>
Укупно коментара: /вп-админ/едит-цомментс.пхп? “><?пхп ецхо $ нум_цомм->тотал_цомментс; ?>
Одобрено: /вп-админ/едит-цомментс.пхп?цоммент_статус=аппровед “><?пхп ецхо $ нум_цомм->одобрено; ?>
Модерирано: /вп-админ/едит-цомментс.пхп?цоммент_статус=модератед “><?пхп ецхо $ нум_цомм->модерирано; ?>
Спам: /вп-админ/едит-цомментс.пхп?цоммент_статус=спам “><?пхп ецхо $ нум_цомм->Спам; ?>

Админ

вп_цоунт_цомментс () је уредна функција која враћа низ различитих бројева стат броја. Такође додајемо везе до одговарајућег подручја администрације коментара.

Додавање варница

На крају, реците да сте пронашли цоол додатке који се односе на коментаре које желите да укључите у овај предложак странице. Уместо додавања још кода, додајмо подршку за то. За овај пример, поћи ћу са тим Активности искре додатак, који може „приказати графикон стила„ сјај “на вашој бочној траци, назначити активност поста и / или коментара. ”Звучи ми одлично.

Обично ће вас датотека реадме.ткт додатка научити како да је додате у датотеке са темама. У нашем случају код може бити овако:

<?пхп
иф (фунцтион_екистс (‘ацтивитиспаркс’)) {
Ацтивитиспаркс (низ (‘скуп података’ =)>’легенда’, ‘хеигхт_пк’ =>100, ‘видтх_пк’ =>600, ‘период’ =>30, ‘крпељи’ =>24));
}
?>

АцтивитиСпаркс додатак

фунцтион_екистс () проверава да ли је одређена функција доступна; у нашем случају функција спаркс, која ће бити доступна ако се додатак учита и активира. Ако је ту, показаћемо граф. Ако не, онда наш Шаблон странице неће показати ништа (али и даље ће радити сасвим у реду, нема грешака).

Резултат и пример

Пример ове предлошке странице је доступно овде. Користи кодове које видите овде са неколико модификација, углавном ради одржавања ХТМЛ структуре у складу са остатком веб локације. Цео код за овај предложак странице је доступан на Пастебин-у.

Заслуге и додатна читања

Like this post? Please share to your friends:
Adblock
detector
map