Предисторията на писането на тази статия е типична: реших да подчертая коментарите си с отделен стил... За щастие, раздробявам style.php вече няколко дни и знам основните правила на CSS синтаксиса. И, разбира се, тази невинна идея се превърна в леко смущение, търсене на решение... В крайна сметка всичко се получи. И сега искам да ви кажа какви магически пропуски използвах, за да украся собствените си коментари.
Целта на всички манипулации, описани по-долу, е да подчертаете вашите коментари и отговори на читателите. Ако не прекалявате със стиловете, ще се получи доста елегантно. Разбира се, това не е жизненоважна необходимост. Всеки, който е решил да види вашите коментари, ще може да го направи чрез псевдоним. Но идеята за красота също е важна за много блогъри.
Освен това, ако обърнем внимание на това как са форматирани отговорите на автора на много големи и добре обмислени сайтове (например smashingmagazine), ще видим отделен стил за тях. Очевидно това ще помогне за подобряване на използваемостта.
Особено важно е да използвате отделен стил за авторски коментари в блогове, където са разрешени дървовидни коментари с доста дълбока степен на вложеност. Просто казано, където потребителят може да отговаря на коментари, да отговаря на отговори и т.н.
Нека да разгледаме стиловете на коментари, които вече се използват
Не се изненадвайте, че предлагам, така да се каже, да започнете от края. Но за потребители, които не се чувстват напълно комфортно да редактират WordPress теми, това е най-визуалният и очевиден начин.
Така че изберете публикация в блога си, която има коментари. Разбира се, имаме нужда и от вашите отговори да бъдат тук. След като отворите такава страница, щракнете с десния бутон върху нея и изберете „Преглед на кода на страницата“ (в браузърите Google Chrome и Firefox определено има такава опция).
Не се плашете, когато видите лист с код. Всъщност тук няма нищо сложно и тайно. Превъртете страницата надолу и ще забележите, че първо се показва общата информация за публикацията, а след това текстът с форматиране. Най-накрая по-долу е кодът, свързан с коментарите. Можете просто да напишете Ctrl+F и да въведете в прозореца, който се показва списък с коментарии натиснете Enter - веднага ще бъдете „хвърлени“ до желания ред, където търсената дума ще бъде ярко осветена.
Сега нека да разгледаме как са маркирани нашите стилове на коментари. За по-голяма яснота кодът е от моята тема. Разбира се, вашият може да изглежда и да е структуриран малко по-различно, но основното значение на отделните части от кода трябва да е ясно:
ТЕКСТ ЗА КОМЕНТАР
- id="li-comment-">
$depth,"max_depth" => $args["max_depth"]))); ?>
- , защото WordPress автоматично ще създаде затварящи етикети въз основа на маркирането на вложени коментари.
Веднъж публикувана, тази функция ще бъде извикана при генериране на коментари и ви позволява да правите необходимите редакции. Номерът е, че направихме всичко необходимо, използвайки стандартните и доста ограничени настройки wp_list_comments()
Сега да се върнем към старите начини - заедно с wp_list_comments ще поставим foreach цикъл
Това използване ще позволи на шаблона да бъде обратно съвместим с по-стари версии на WordPress.
След като вече знаем как да настроим цикъл за коментари, нека го модифицираме, за да отговаря на нашите нужди и да приложим някои страхотни трикове.
Внедряване на коментари страница по страница
Никой не знае предварително, че съдържанието на сайта може да привлече стотици коментари. Това, което имам предвид е, че всички сме суперзвезди и успехът може да дойде неочаквано. Публикация със стотици коментари може да бъде безумно дълга за гледане и превъртане назад. Като цяло със сигурност не се страхуваме от вертикално превъртане (за разлика от хоризонталното), но всичко трябва да има граници. Типична публикация с 60 коментара може да бъде с височина до 20k пиксела!
Чудесен начин да поддържате нещата организирани е да пагинирате емисията си за коментари и да ги показвате страница по страница.
След като активирате странирането, не забравяйте да добавите функции към вашия файл comments.php, за да показвате връзките „Преди“ и „По-късно“.
Тези връзки ще се появят автоматично и ще прекъснат листа с коментари, когато определеният брой коментари на страница бъде надвишен. Ако има по-малко коментари от този брой, връзките няма да се показват.
И тук има една уловка. Възниква добре познатият SEO проблем с дублиране на съдържание с коментари страница по страница. Това се случва, защото едни и същи URL адреси се създават за всяка страница с коментари.
- https://yoursite.com/ghost-dad-rocked/
- https://yoursite.com/ghost-dad-rocked/comments-page-1/
- https://yoursite.com/ghost-dad-rocked/comments-page-2/
- https://yoursite.com/ghost-dad-rocked/comments-page-3/
Ясно е, че само коментарите на тези страници ще бъдат различни. Това, което прави общата картина още по-лоша е, че всеки коментар има своя уникална връзка с времето на публикуване, което също добавя куп дубликати. Следователно ботът за търсене ще намери едно и също съдържание под огромен брой различни връзки.
За да избегнете дублиране, има няколко решения:
- Не използвайте коментари на страницата
- Използвайте мета тагове, за да създадете канонични URL адреси за всяка публикация
- Използвайте плъгин
Ако вашият сайт е супер популярен или ще стане такъв, тогава разбира се е по-добре да използвате канонични URL адреси. Ако не са планирани разгорещени дискусии, тогава е по-лесно да използвате традиционните листове за коментари без пагинация.
SEO for Paged Comments предприема още по-радикален подход – премахва съдържанието на публикацията от страниците с коментари и я заменя с цитат или съкратена версия на публикацията.
Внедряване на вложени коментари
Вложените дървовидни коментари позволяват на посетителите да напишат отговор на избран съществуващ коментар, създавайки богат дискусионен диалог. След като активирате тази функция в настройките, до всеки коментар ще се появи връзка „Отговор“, което ви позволява да говорите по конкретен коментар.
Преди да се появи тази възможност, имаше стил на отговор на избрания автор, използвайки името му и знака @ в текста на коментара, като „@Вася, грешиш!“ С известна трансформация този метод се вкорени в много приложения в Интернет и все още съществува, например в Twitter. И в съвременните версии на WordPress такова споменаване не е необходимо да се използва.
Сега просто трябва да кликнете върху съответната връзка „Отговор“ и да говорите. След като текстът на коментара бъде одобрен, той ще се появи непосредствено под коментара, за който е написан.
Ако вашият шаблон не поддържа този тип коментиране, има лесен начин да го добавите:
- Ние правим резервни копия на файлове, което на теория вече трябва да стане навик
- Активирайте вложените коментари в настройките Опции→Настройки на дискусията→Разрешаване на дървовидни коментари
- Добавете следния код към header.php непосредствено преди wp_head()
- Добавете към comments.php точно преди затварящия таг
- Нека проверим това
- Проверяваме дали формулярът за коментари е приложен с атрибута id="respond".
- Добавете връзка за отказ от коментар точно преди формуляра за коментари
- В comments.php заменяме стария цикъл с актуализирания
Е, това е всичко :) Традиционно има трилион различни начини да го персонализирате и преработите, за да отговаря на вашите нужди, но мисля, че схващате идеята. Всичко, което трябва да направите, е да не забравите да зададете стиловете за вложени коментари
Списък с коментари li.depth-1() .списък с коментари li.depth-2() .списък с коментари li.depth-3()
Ние разделяме коментари, pingbacks и trackbacks
Когато показвате отговорите на вашата публикация, ефективен начин за намаляване на безпорядъка е да показвате отделно коментарите и пинговете. Това не само няма да наруши последователността на дискусиите, но и ще позволи да се съсредоточи повече внимание върху коментарите.
Това е един от най-старите трикове и има много начини да го приложите, ето пример за просто разделяне с помощта на wp_list_comments() параметри:
Коментари
Pingbacks/Trackbacks
Този код обаче има недостатък - заглавките ще се показват дори ако няма коментари или ping. Би било по-добре да използвате леко подобрена версия:
Коментари
Trackbacks/Pingbacks
Когато се показват pingbacks, се показва връзка с част от текста около нея, взет от сайта за свързване. Този фрагмент може да бъде с различни размери и е трудно да се контролира, защото... Не се знае предварително какво ще бъде изложено там. За щастие, можете да изчистите показването на този текст, създавайки просто чист списък от връзки. За да направите това, трябва да добавите към functions.php
Функция cleanPings($comment, $args, $depth) ( $GLOBALS["comment"] = $comment; echo "
- ".comment_author_link()."
";}И след това добавете необходимия параметър за обратно извикване към извикването на функцията за коментар
Унищожаване на pingbacks и trackbacks
Не можете да попречите на хората да се свързват към вашия сайт, но можете да изберете да не показвате обратни връзки и pingbacks на тях. Първоначално, както много други неща в Интернет, pingbacks са измислени за добри цели - информиране, че някой се е свързал с вас. И сега някои хора продължават да ги използват и да ги изтеглят. Но технологията за проследяване напълно се дискредитира поради масивния спам, така че би било по-добре да ги деактивирате.
Деактивирайте показването на ping от админ панела
За да направите това, в настройките на дискусията премахнете отметката от опцията Разрешаване на известия от други блогове. Това напълно деактивира функционалността на pingbacks и trackbacks, но за отделно избран запис можете да активирате тази функция в настройките.
Изключване на ping от коментари
Ние използваме параметъра за функцията wp_list_comments(), позволявайки да се показват само коментари
Изтрийте wp-trackback.php
Това е много прост и ефективен начин - физическо изтриване на файла wp-trackback.phpот основната директория на WordPress. Това е абсолютно безопасен метод, но файлът се възстановява след надграждане на WordPress и ще трябва да бъде изтрит отново.
Деактивирайте използването на добавки
Това може да стане с помощта на плъгин
Самият плъгин е много прост и се състои само от един файл, така че съдържанието му може просто да бъде копирано и поставено във файла functions.php
Клас DisableTrackbacks ( функция DisableTrackbacks() (add_action("pings_open", array(&$this, "pings_open"));) функция pings_open($open) (връщане ("1" == get_query_var("tb"))? FALSE : $open;) ) add_action("plugins_loaded", create_function("", "глобални $DisableTrackbacks; $DisableTrackbacks = нови DisableTrackbacks();"));
Веднъж поставена, функцията DisableTrackbacks унищожава всички проследявания. Но пингбековете остават.
Ние контролираме коментарите директно в базата данни
WordPress предлага няколко начина да контролирате дали дадена публикация е отворена за коментиране или не. В админ панела можете напълно да забраните оставянето на коментари за бъдещи публикации в целия сайт. Освен това в един запис в редактора можете да изберете в блока за дискусии дали коментарите да бъдат отворени за него или не.
Но точно над тези методи има плъгин, който ви позволява да скриете всички стари коментари след определен период и да ги изпратите за модериране. И без никакви добавки можете да активирате и деактивирате коментирането с прости заявки към базата данни.
Глобално разрешаване на ping за всички потребители
АКТУАЛИЗАЦИЯ wp_posts SET ping_status = "open";
Глобално забранете ping за всички потребители
АКТУАЛИЗАЦИЯ wp_posts SET ping_status = "затворено";
Глобална забрана на ping до определена дата на публикуване
АКТУАЛИЗАЦИЯ wp_posts SET ping_status = "closed" WHERE post_date< "2009-09-09" AND post_status = "publish";
Такива искания позволяват периодично почистване. И ето пример за искания за глобално разрешение или забрана за коментари
АКТУАЛИЗИРАНЕ wp_posts SET comment_status = "open", ping_status = "open" WHERE comment_status = "closed" AND post_status = "publish";
Коментарите в PHP са подобни на коментарите, използвани в HTML. В синтаксиса на PHP коментарите винаги започват със специална последователност от знаци и целият текст, който се появява между тези специални знаци, ще бъде игнориран от интерпретатора.
В HTML основната цел на коментара е да служи като бележка за разработчиците, които могат да видят изходния код на вашия сайт. PHP коментарите са различни по това, че няма да се показват на посетителите. Единственият начин да видите PHP коментари е да отворите файла за редактиране. Това прави PHP коментарите полезни само за PHP програмисти.В случай, че сте забравили или не знаете как се правят коментари в HTML, вижте примера по-долу.
Синтаксис на PHP коментар: един ред коментар
Докато html има само един тип коментар, PHP има два вида. Първият тип, който ще обсъдим, е едноредовият коментар. Тоест коментар, който казва на интерпретатора да игнорира всичко, което се случва на този ред вдясно от коментарите. За да използвате този коментар, използвайте знаците "//" или "#" и целият текст вдясно ще бъде игнориран от PHP интерпретатора.
Псст...Не можете да "видите моите PHP коментари!"; // ехо "нищо"; // echo "Казвам се Хъмпърдинкъл!"; # echo "И аз не правя нищо"; ?>
Резултат:
Здравей свят! Псст... Не можете да видите моите PHP коментари!
Забележете, че няколко от нашите ехо команди не бяха обработени, защото ги коментирахме с помощта на специални знаци за коментар. Този тип коментар често се използва за бързо записване на сложен и объркващ код или за временно премахване на ред PHP код (за отстраняване на грешки).
Синтаксис на PHP коментар: многоредов коментар
Подобно на HTML коментарите, многоредовите коментари в PHP могат да се използват за коментиране на големи блокове от код или за писане на коментари на няколко реда. Многоредовите коментари в PHP започват с "/*" и завършват с "*/". Всичко между тези знаци ще бъде игнорирано.
Резултат.
Всъщност трябва само да намерим коментари с вашия псевдоним (например в този блог пиша и отговарям под псевдонима Katyaru). И точно над необходимия ред, който започва така:
Благодаря ви, имате страхотен сайт!