Сайт дня (как попасть): Техцентр Тойота Лексус - оригинальные запчасти и ремонт.
Дорогие друзья, в эфире восьмой выпуск рубрики ответов на вопросы по WordPress. Вы можете почитать другие материалы рубрики WordPress на Shakin.ru, например, Лучшие плагины WordPress - 103 плагина или цикл из трех статей про Безопасность WordPress.
Краткое содержание сегодняшней серии 🙂 :
- Как отключить HTML теги в комментариях?
- Как вывести чашку кофе и три баннера после первого поста, как на shakin.ru?
- Как вывести текст только на главной странице?
- Как вывести что-либо только в посте, когда нет файла single.php?
- Как в категориях вывести анонсы постов с картинками?
- Как корректно вставить кнопку retweet на главной странице и в постах?
Все чаще обнаруживаю, что в тексте комментариев на моем блоге WordPress спамеры ставят ссылки со смайликов или с пробелов. Как это исправить?
Есть два решения этого вопроса. Можно воспользоваться функцией от Dimox'а - он подробно описал все моменты в статье Невидимый спам в комментариях - ссылки на пробелах.
Можно пойти другим путем - просто отключить HTML теги в комментариях. После этого при попытках вставить ссылки со смайликов или пробелов сразу будут видны коды ссылок, а также любые HTML теги.
Для того, чтобы отключить HTML теги в комментариях на блоге WordPress, откройте в папке с темой вашего блога (wp-content/themes/ваша_тема) файл functions.php и в конце него перед ?> вставляем такой код:
// // // Отключение HTML тегов в комментариях - начало // // // function plc_comment_post( $incoming_comment ) { $incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']); $incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] ); return( $incoming_comment ); } function plc_comment_display( $comment_to_display ) { $comment_to_display = str_replace( ''', "'", $comment_to_display ); return $comment_to_display; } add_filter('preprocess_comment', 'plc_comment_post', '', 1); add_filter('comment_text', 'plc_comment_display', '', 1); add_filter('comment_text_rss', 'plc_comment_display', '', 1); add_filter('comment_excerpt', 'plc_comment_display', '', 1); // // // Отключение HTML тегов в комментариях - конец // // //
Скажите, как реализовать, чтобы после каждого анонса поста на главной странице блога WordPress выводилась чашка кофе, как на shakin.ru, а после первых постов - три баннера?
🔥 Кстати! Я провожу платный курс по продвижению англоязычных сайтов SEO Шаолинь seoshaolin.com. Для читателей блога я делаю хорошую скидку по промокоду "blog". Тариф Про стоит не 41, а 35 тыс. рублей. Тариф Лайт не 21, а 17 тыс. рублей. Тариф Команда не 58, а 50 тыс. рублей. Для получения скидки пишите мне на globatorseo@gmail.com с темой "Курс" или в Telegram @mikeshakin.Для того, чтобы выводить какое-либо изображение после каждого анонса поста, сначала можете найти красивую иконку по своему вкусу. Для этого советую огромное хранилище иконок на сайте iconarchive.com. Загружаем понравившуюся иконку в папку с картинками images в папке с темой вашего блога.
После этого приступаем к выводу картинки. Для этого все в той же папке с темой вашего блога находим в файле index.php такой код:
<?php the_content(''); ?>
И после него вставляем такой (сразу привожу общий код чашки кофе и трех баннеров):
<?php if(is_single()){ ?> <?php } ?> <!--Код чашки с кофе--> <div align="center"><img src="<?php bloginfo('template_url'); ?>/images/cup.jpg" width="32" height="28" title="Пора попить кофе!" alt="Пора попить кофе!"></div> <?php if(!$ad_counttwo){ ?> <!--Три баннера после первого поста--> <table align="center" border="0" width="460"> <tr> <td> Код первого баннера </td> <td> Код второго баннера </td> <td> Код третьего баннера </td> </tr> </table> <?php $ad_counttwo = 1; } ?> <?php endwhile; ?><br />
Картинка с чашкой кофе у меня называется cup.jpg. Для того, чтобы при наведении курсора на вашу картинку всплывал какой-либо текст, прописываем атрибут title для картинки (в дополнение к alt): title="Пора попить кофе!"
Вывод баннеров после первого поста - хороший момент, который позволяет продавать дополнительные рекламные площади на вашем блоге.
Из этого кода органично получается ответ на следующий вопрос 🙂 .
Как сделать, чтобы текст или код выводился только на главной странице блога WordPress? Мне нужно вывести текст в боковой колонке.
Вывести текст или код только на главной странице вашего блога WordPress можно следующим образом. В папке с темой вашего блога открываем файл sidebar.php, который отвечает за вывод боковой колонки, и в нужном месте используем такой код:
<?php /* Выводим текст или код только на главной странице */ if ($_SERVER["REQUEST_URI"] == '/') { ?> Нужный текст или код <?php } else {?> <?php } ?>
Для желающих - небольшое домашнее задание 🙂 . Попробуйте вывести нужный текст или код только на главной странице с помощью функции is_home(). В поисковиках вы найдете всю необходимую информацию.
В шаблоне моего блога WordPress нет файла, отвечающего за вывод отдельного поста - single.php. Я хочу поместить кнопки добавления в социальные сервисы в конце каждого поста, пробую это сделать через файл index.php, но они выводятся и на главной странице. Как их вывести только в постах?
Действительно, у некоторых тем WordPress нет файла single.php. Я сталкивался с такой проблемой. Сейчас попытаюсь вспомнить, как я это сделал 🙂 . М-м-м. Вспомнил!
Для того, чтобы вывести что-либо в отдельном посте, когда у темы нет файла single.php, делаем следующее. Открываем в папке с темой блога файл index.php и в нужном месте (например, после <?php the_content(''); ?>) добавляем такой код:
<!--Выводим что-либо только в отдельном посте--> <?php if (is_single()) { ?> Нужный текст или код <?php } ?>
Если кликнуть на категории, у меня идут не полные анонсы постов, а краткие без картинок. Как это исправить?
Откройте файл archive.php в папке с вашей темой WordPress, найдите код the_excerpt и замените его на the_content.
Подскажите как Вы добавили кнопку retweet, что у Вас везде считает ретвиты и корректно выводит их количество в посте и на главной?
В файле index.php в папке с темой WordPress код кнопки retweet у меня такой:
<div style="float: right; margin-left: 10px; margin-top: 10px;"><script type="text/javascript"> tweetmeme_source = 'shakinru'; tweetmeme_service = 'bit.ly'; tweetmeme_url = '<?php the_permalink(); ?>'; </script> <script type="text/javascript" src="https://tweetmeme.com/i/scripts/button.js"></script><br> </div>
В файле single.php - такой:
<div style="float: right; margin-left: 10px;"><script type="text/javascript"> tweetmeme_source = 'shakinru'; tweetmeme_service = 'bit.ly'; </script> <script type="text/javascript" src="https://tweetmeme.com/i/scripts/button.js"></script><br> </div>
Естественно, поменяйте shakinru на свой ник в твиттере.
Желаю вам хорошего дня!
Постовой (как попасть): Педикюр - ногтевой сервис от Екатерины - мастера O.P.I.
Йоркширские терьеры из питомника Lux Mea, продажа йоркширских терьеров.
Magphoto.ru - профессиональные фотографы Москвы и их работы.
Десерт на сегодня - посмотрите, какой классный игрушечный реактивный самолет собрали отец с сыном:
Подпишитесь на рассылку блога с полезными материалами по SEO