Форум » БЕСЕДКА » WORDPRESS » Ответить

WORDPRESS

Василиса: Как обновить WordPress Наверное каждый из пользователей WordPress'a рано или поздно сталкивался с необходимостью обновить версию WordPress'a на более новую, для этого может быть несколько причин: устранение уязвимостей, новый интерфейс админки, не работоспособность некоторых плагинов на старых версиях WordPress и т.д. Сегодня я расскажу Вам как обновить версию WordPress на новую, без потери данных. 1. Резервная копия Первое с чего мы должны начать это сделать бэкап данных (резервную копию всех файлов и базы данных). Это необходимо для возможности вернуть все назад, если вдруг в процессе обновления что-то пойдет не так. 1.1. Резервная копия базы данных Для того чтобы сделать резервную копию базы данных скачиваем и устанавливаем плагин - WP-DB-Backup, http://wordpress.org/extend/plugins/wp-db-backup/ после этого переходим в панель «Инструменты - Резервное копирование» и скачиваем дамп базы данных. Также рекомендую пользоваться этим плагином и в будущем, настроив его так чтобы он создавал резервную копию базы каждую неделю и отправлял к Вам на ящик. Можно завести специальный ящик для бэкапов. например на gmail и "забыть" о нем, а в случае необходимости в нем можно будет найти любую Вашу резервную копию базы данных. 1.2. Резервная копия файлов Заходим на FTP и сохраняем все файлы из папки Вашего блога.

Ответов - 86, стр: 1 2 3 All

Василиса: ак же расшифровать закодированные шаблоны wordpress? 1. Для этого существуют онлайн - php декодеры base64 http://www.3dmobility.com/decrypt2.php http://www.motobit.com/util/base64-decoder-encoder.asp Скопируете подозрительный кусок из footer.php темы или из другого файла и вставте в соответственное окно сервиса. Нажмите на кнопку decode и проанализируете полученный php скрипт. 2. Затем откроем footer.php в текстовом редакторе Notepad++. Там перед кодом добавляем <!– begin –>, а после кода — <!– end –>. Сохраним сделанные изменения, зайдем на свой блог и посмотрим исходный код в своем браузере (CTRL+U). Находим там свои <!– begin –> и <!– end –>.Теперь всё, что находится между ними — копируем и добавляем в себе в footer заместо зашифрованного кода. И также удаляем все ненужные внешние ссылки с footer Вашей темы.

Василиса: Недавно потребовалось мне импортировать дамп базы данных в базу данных сайта на Денвере. Операция, которая легко проходила на сервере хостера, на Денвере оказалась невозможной по очень смешной причине – я не нашла кнопки «Импорт» в phpMyAdmin. Расследование показало, что дело вовсе не в моей бестолковости – ее там никогда и не было, потому как с Денвером поставляется устаревший версия phpMyAdmin. Поискав немного по форумах, я разобралась, как с этим бороться: Итак: 1. Загрузить последний phpMyAdmin 2. Заменить файлы в директории \home\localhost\www\Tools\phpmyadmin\ на файлы из дистрибутива и в панели управления phpmyadmin появится кнопка Import. 3. Рекомендую, также, изменить (в сторону увеличения) в файле /usr/local/php5/php.ini значения: upload_max_filesize (максимальный размер файла для загрузки), post_max_size (максимальный размер почтовых данных), max_execution_time (макс. время исполнения каждого скрипта, в сек.), max_input_time (макс. количество времени каждого сценария) и memory_limit (макс. объем памяти). Это нужно, чтобы ваша база данных импортировалась без проблем (в случае, если она большого размера). 4. Перезапустить Апач. 5. Зайти в phpMyAdmin, и нажать кнопку ИМПОРТ. Если же дамп вашей базы уж очень большой и через PhpMyAdmin загрузить его не удается, то можно использовать вот такой способ: * Создать в MySQL новую БД (например, Wordpress) и нового пользователя. * В папке usr/local/mysql/data/… появится папка c именем вашей базы данных, т.е. Wordpress, в которой MySQL будет хранить файлы вашей новой БД - в нее нужно скопировать все файлы старой БД. * Перезапустить Денвер. Все должно заработать.

Admin: Кнопка там есть!!! Кликаем по кнопке sql, которая находиться возле домика, и жмём на импорт файлов. Всё просто, надо только поискать )))

павел: category-page-icons как в этом плагене сделать чтобы только админ мог менять иконки ????

1234:

1234:

1234:

Admin: Была проблема с навигацией в меню шаблона. Для того, чтобы работали "красивые ссылки" Настройки —> ЧПУ (постоянные ссылки) В тот момент, когда вы задаете ЧПУ, WordPress сам создает файл .htaccess. В зависимости от настроек конкретного хостинга иногда вордпресс не может создать самостоятельно этот файл. тогда нужно создать самому файл .htaccess и положить в корень вордпресса. Для WP в корне сайта .htaccess содержит следющий код Код: # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress Если у вас блог Вордпресс установлен в папку домена, например: site.ru/blog/, то .htaccess будет таким: Код: # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /blog/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress Вот правила mod_rewrite, которые должны быть в файле .htaccess. Кликните на поле и нажмите CTRL + a, чтобы выделить весь текст. <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> .htaccess иммется файл, туда закинул данный текст, поставил права 777 для теста и все равно не работает Полный образец htaccess файла на все случаи жизни вот такой : # # Apache/PHP/Application settings: # # Protect files and directories from prying eyes. <FilesMatch "\.(engine|inc|info|install|module|profile|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(code-style\.pl|Entries.*|Repository|Root|Tag|Template)$"> Order allow,deny </FilesMatch> # Don't show directory listings for URLs which map to a directory. Options -Indexes # Follow symbolic links in this directory. Options +FollowSymLinks # Make Application handle any 404 errors. ErrorDocument 404 /index.php # Force simple error message for requests for non-existent favicon.ico. <Files favicon.ico> ErrorDocument 404 "The requested file favicon.ico was not found. </Files> # Set the default handler. DirectoryIndex index.php # Override PHP settings. More in sites/default/settings.php # but the following cannot be changed at runtime. # PHP 4, Apache 1. <IfModule mod_php4.c> php_value magic_quotes_gpc 0 php_value register_globals 0 php_value session.auto_start 0 php_value mbstring.http_input pass php_value mbstring.http_output pass php_value mbstring.encoding_translation 0 </IfModule> # PHP 4, Apache 2. <IfModule sapi_apache2.c> php_value magic_quotes_gpc 0 php_value register_globals 0 php_value session.auto_start 0 php_value mbstring.http_input pass php_value mbstring.http_output pass php_value mbstring.encoding_translation 0 </IfModule> # PHP 5, Apache 1 and 2. <IfModule mod_php5.c> php_value magic_quotes_gpc 0 php_value register_globals 0 php_value session.auto_start 0 php_value mbstring.http_input pass php_value mbstring.http_output pass php_value mbstring.encoding_translation 0 </IfModule> # Requires mod_expires to be enabled. <IfModule mod_expires.c> # Enable expirations. ExpiresActive On # Cache all files for 2 weeks after access (A). ExpiresDefault A1209600 # Do not cache dynamically generated pages. ExpiresByType text/html A1 </IfModule> # Various rewrite rules. <IfModule mod_rewrite.c> RewriteEngine on # If your site can be accessed both with and without the 'www.' prefix, you # can use one of the following settings to redirect users to your preferred # URL, either WITH or WITHOUT the 'www.' prefix. Choose ONLY one option: # # To redirect all users to access the site WITH the 'www.' prefix, # (http://example.com/... will be redirected to http://www.example.com/...) # adapt and uncomment the following: # RewriteCond %{HTTP_HOST} ^example\.com$ [NC] # RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301] # # To redirect all users to access the site WITHOUT the 'www.' prefix, # (http://www.example.com/... will be redirected to http://example.com/...) # uncomment and adapt the following: # RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] # RewriteRule ^(.*)$ http://example.com/$1 [L,R=301] # Modify the RewriteBase if you are using Application in a subdirectory or in a # VirtualDocumentRoot and the rewrite rules are not working properly. # For example if your site is at http://example.com/application uncomment and # modify the following line: # RewriteBase /application # # If your site is running in a VirtualDocumentRoot at http://example.com/, # uncomment the following line: # RewriteBase / # Rewrite URLs of the form 'x' to the form 'index.php?q=x'. RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !=/favicon.ico RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] </IfModule> # $Id: .htaccess,v 1.90.2.1 2008/07/08 09:33:14 goba Exp $

Василиса: Нашла рекомендации по ускорению WP и защите от хотлинков <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wordpress/ (уважно до попереднього прикладу) RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yandex\.ru/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?undsoft\.com/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yandex\.net/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?feedburner\.com/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?mail\.ru/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?poisk\.ru/.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(.+\.)?yourdomain\.ru/.*$ [NC] RewriteCond %{HTTP_REFERER} !^$ [NC] RewriteRule .*\.(jpe?g|gif|bmp|png)$ stophotlinking.gif [L] </IfModule>

Василина: В базе ссылки не хранятся. В базе хранится slug (слаг, ярлык, короткая ссылка). И хранятся настройки ЧПУ. Ссылки формируются и разбираются на лету. Если не хотите разбираться с синтаксисом mod_rewrite (имеете право), ставьте плагин, например http://wordpress.org/extend/plugins/page-links-to/

1234: Системой CPCH (CPCH – это новейшая инновационная система, совмещающая в себе технологию Интернет-защиты и рекламы) разработан плагин “Flash captcha” для WordPress. Данная капча выполняет не только функцию защиты от ботов/спама, но и приносит доход владельцу блога от показа рекламы. Посетители различных Интернет-ресурсов при осуществлении определенных активных действий (регистрация аккаунта, скачивание файлов, отправка сообщения в форумах и проч.) регулярно должны вводить определенный набор символов-”ключей” (случайное сочетание букв и цифр) в специальное поле. Эта технология называется captcha и она предназначена для защиты от автоматических отправок сообщений, регистрации, массовых рассылок и т. п. программами-роботами. Постоянный рост угроз проникновения роботов вынуждает владельцев сайтов применять captcha для защиты своих ресурсов и пользовательской информации. CPCH разработала уникальное программное решения, которые позволяют использовать модуль captcha не только как средство безопасности, но и как нестандартный рекламный носитель. Вместо ничего не значащих символов или цифр, которые используются в обычных captcha, в системе CPCH пользователь вводит в качестве «ключа» адрес Вашего web-site, название бренда и т.д.. Его внимание принудительно фокусируется на Вашей рекламной информации, так как адрес Вашего ресурса или другое рекламное сообщение необходимо ввести «вручную». Кроме того, система CPCH помимо графической рекламы (баннера) позволяет использовать контекстную рекламу (рекламный слоган или информирование о специальных предложениях в «теле» CPCH). Таким образом, данная система является адресным инструментом продвижения сайта, бренда и т.д., на который пользователь обязательно обратит внимание – в отличие от традиционных рекламных блоков, баннеров или иных видов привычной рекламы в Интернете, которые он может просто проигнорировать. Установка: Авторизуйте свой блог по адресу http://cpch.ru/register/ Пройдите модерацию, скачайте дистрибутив плагина (cpch_wp.rar), распакуйте содержимое архива на своем компьютере и далее закачайте папку cpch_wp в (/wp-content/plugins/). Зайдите в административную панель, выберите в меню Плагины -> Установленные плагины, найдите плагин CPCH CAPTCHA и нажмите «активировать». Для заинтересовавшихся плагином, озвучу тарифы по состоянию на 01.04.2010г.: Показательный – (стоимость составляет – 0.09 руб. за показ) Обычный режим показа рекламной информации: контекстного объявления или графического баннера. На мой взгляд, подходит всем. Вопросительный – (стоимость составляет – 0.20 руб. за показ) Показ рекламной информации, в т.ч. и баннера, с предложением перейти на сайт, который Вы рекламируете после ввода пользователем слова-”ключа”. Ну этот явно для уверенных в себе. Принудительный – (стоимость составляет – 2.00 руб. за показ) Переход на рекламируемый Вами сайт происходит принудительно после ввода пользователем слова-”ключа” (сайт будет открыт в новом окне). Совсем для «больного блогера»

1234: http://wordpress.org/extend/plugins/comment-rating/ omment Rating добавляет в ваш блог очередную модную фишку в виде рейтинга комментариев. Причем не просто модную, а во многих случаях еще и весьма полезную, если судить по опыту блогов, где уже используется этот плагин или аналогичные ему. Да в общем-то в качестве примера можно привести всем известный портал YouTube, где реализована подобная схема оценки комментариев. Плагин не просто позволяет оценивать комментарии, он также умеет выделять комментарии с хорошим рейтингом и скрывать комментарии с плохим рейтингом. И это выгодно отличает Comment Rating от других плагинов оценки комментариев, где рейтинг комментария абсолютно ничего не значит и ни на что не влияет. Скачиваем плагин с его домашней страницы и устанавливаем его: 1. Распаковываем архив. 2. Копируем папку comment-rating в /wp-content/plugins/. 3. Заходим в админку блога на вкладку "Плагины" и активируем плагин. Настройки плагина вы найдете в "Параметрах\Comment Rating", тут вы можете указать: 1. Turn on Auto-insert into comments: включение данной опции позволяет плагину самому вставлять рейтинг в комментариях. 2. Position the images above or below comments: указывает, где выводить рейтинг – до или после текста комментария. я проверял работу автовставки рейтинга на дефолтном шаблоне, работает отлично. но если в вашем шаблоне автовставка получается кривой и рейтинг выводится не там, где вы хотите, то вы можете вывести его вручную, добавив в нужное место в файле comments.php код: <?php if(function_exists('ckratingdisplaykarma')) { ckratingdisplay_karma(); } ?> 3. Words before the rating images: текст, который выводится перед иконками голосования. 4. Highly-rated comments have (Likes - Dislikes) >= число, при котором комментарий будет считаться высоко-рейтинговым. вычисляется по формуле "число положительных голосов минус число отрицательных голосов". ничего не значит, если вы не будете использовать следующий пункт в настройках. 5. Style highly-rated comment with: выделение через css высоко-рейтинговых комментариев. по умолчанию задано выделение таких комментариев желтым цветом: 6. Turn on Auto-hide poorly-rated comments: включение скрытия комментариев с плохим рейтингом. на самом деле весь комментарий не скрывается, скрывается только его тест, который можно посмотреть, если кликнуть на предлагаемой ссылке: Перевести этот английский текст вы можете в файле comment-rating.php на строчках: 186 187 $text = '<p>Hidden due to low <a title="Rated by other readers" href="http://wealthynetizen.com/wordpress-plugin-comment-rating/">comment rating</a>.' . " <a title="\" href="\"javascript:crSwitchDisplay('ckhide-$ck_comment_ID');\"" comment\? see to Click?>Click here to see</a>.</p>" . 7. Poorly-rated comments have (Dislikes - Likes) >= число, при котором комментарий будет считаться низко-рейтинговым. вычисляется по формуле "число отрицательных голосов минус число положительных голосов". 8. When showing the hidden comments, use this style: выделение через css низко-рейтинговых комментариев. по умолчанию задано выделение полу-прозрачностью, как на скриншоте выше. 9. Turn off rating for comments by admin and the author: включение данной опции запрещает голосовать на комментариях админа блога или автора статьи. 10. Display two separated votes or one combined value: отображение отдельных чисел для положительных и отрицательных голосов или отображение одного числа общего рейтинга комментария (число положительных голосов минус число отрицательных голосов). С настройками на этом все, можно пользоваться плагином. Хотелось бы еще заметить, что если ваш шаблон не использует вывод комментариев через wp_list_comments() (в WordPress 2.7 и выше), то выделение комментариев может работать криво. Как это поправить описано в этой статье.

1234: отношу этот плагин к категории "SEO", но формально он к SEO отношение имеет довольно отдаленное. Что он делает? Он изменяет шаблон ссылок у страниц. То есть если вы можете поменять шаблон ссылок записей в "Параметрах\Постоянных ссылках", то возможности изменить шаблон ссылок именно у страниц у вас нет. И поэтому они создаются с излишней вложенностью вроде: http://localhost/blog/about/, проблемы в этом нет и для поисковиков совершенно не важно, как выглядит ваша ссылка. Это скорее важно для бирж ссылок, на которых лишняя вложенность вашей ссылки удешевляет ее цену. Я же пользуюсь этим плагином потому, что при использовании шаблона ссылок у записей вида: /%category%/%postname%.html все одиночные записи у меня имеют окончание .html, а заканчиваются слешем только рубрики. Но страницы это не рубрики и мне не нравится, что ссылка на страницу выглядит, как ссылка на рубрику. Плагин был найден на форуме, поэтому персональной страницы, где вы могли бы его скачать у него нет, так что скачиваем его по ссылке внизу этого поста. Установка такая: 1. Распаковываем архив. 2. Копируем файл page_htm.php в папку /wp-content/plugins/. 3. Заходим в админку блога на вкладку "Плагины" и активируем плагин. Все, плагин активирован и работает. Собственных настроек у плагина в админке блога нет. Теперь ссылка вида: http://localhost/blog/about/ в нашем блоге стала такой: http://localhost/blog/about.html Но как быть в том случае, если надо изменить .html на .htm или вообще на .php? Все очень просто, открываем файл page_htm.php и редактируем в нем строчки, отвечающие за формат ссылок, то есть: 13 $wp_rewrite->page_structure='%pagename%.html'; и 18 $wp_rewrite->page_structure='%pagename%.html'; После этого зайдите в админке блога в "Параметры\Постоянные ссылки" и нажмите на кнопку "Сохранить изменения". Все, плагин настроен и работает. http://www.wordpressplugins.ru/download/page_htm.zip

1234: Очень часто блогеры встраивают в свои записи видео-ролики с различных популярных видео-сайтов, вроде YouTube или RuTube. Однако люди, ведущие блоги на WordPress зачастую сталкиваются с ситуацией, когда визуальный редактор режет часть кода ролика и он не воспроизводится в записи. Чтобы этого избежать надо всегда пользоваться HTML-режимом редактора, а такой вариант подходит не каждому: ведь, чтобы код ролика "не поехал" эту запись редактировать в визуальном редакторе больше нельзя. Поэтому появилось немалое количество плагинов для WordPress, которые встраивают ролики в запись посредством специальных тегов. И хотя я зарекался делать переводы плагинов на русский язык в этот раз я сделал исключение, так как несмотря на огромное количество поддерживаемых плагином Video Embedder видео-сайтов русских среди них не было и мне пришлось доработать плагин на предмет включения в него поддержки наших видео-сайтов Smotri.com и RuTube.ru. Установка проста, скачиваем русскую версию плагина по ссылке внизу этого поста или оригинальный плагин со страницы автора: 1. Распаковываем архив. 2. Копируем папку video-embedder в /wp-content/plugins/. 3. Заходим в админку блога на вкладку "Плагины" и активируем плагин. Собственно вот и все, плагин уже работает. Для справки по использованию плагина и для переопределения тегов вы должны зайти в "Параметры\Video Embedder", но не думаю, что вам нужно что-либо там менять. Использование плагина очень простое, заключите ID видео-ролика в записи в специальные теги. Как пример: [rutube]ffb7efa65e46f1188dc7b141029a2fb8[/rutube] или [youtube]0SKKzSmwSxo[/youtube] На всякий случай в админке блога на вкладке плагина приведены примеры того, как правильно из ссылки на ролик вырезать ID. Русских видео-сайтов я добавил в плагин только два самых популярных, если у кого-нибудь возникнет нужда еще в каком-нибудь русском видео-сайте, то напишите мне и я его встрою в плагин. Если вы все сделали правильно, то увидите в своей записи нужные вам ролики: или Автор плагина: Kristoffer Forsgren Страница плагина: (http://wordpress.org/extend/plugins/video-embedder/ Скачать русский плагин: video-embedder.zip Рассматриваемая версия: 1.7.1 от 12.01.2009 Совместимость с версией WordPress: 2.3 и выше.

1234: Плагин для создания резервных копий MySQL базы вашего блога. Понятно, что сделать бэкап файлов блога достаточно легко, ведь необходимо всего лишь скопировать по ftp всю папку с блогом и только то. C MySQL базой дело немного труднее, ведь это требует от пользователя хотя бы минимальных знаний phpMyAdmin. Да и настроить автоматический бэкап базы данных через phpMyAdmin задача не сказать, чтобы тривиальная. Я вот, например, не знаю как это сделать. Так что плагин "WordPress Database Backup" это самый оптимальный вариант для ручного и автоматического создания копии базы данных блога. Скачиваем последнюю версию плагина с его домашней страницы и устанавливаем: 1. Распаковываем архив. 2. Копируем папку wp-db-backup в /wp-content/plugins/. 3. Заходим в админку блога на вкладку "Плагины" и активируем плагин. Теперь заходим в "Управление\Резервное копирование", тут вы можете либо сделать копию базы данных сразу или настроить автоматический бэкап базы. В обоих случаях выделяйте все таблицы для копирования, по умолчанию плагин копирует только таблицы самого движка, игнорируя остальное. Вручную у вас есть 3 варианта на выбор: сохранить базу в папке на сервере, скачать базу на компьютер или отправить базу на email. При автоматическом резервном копировании выбор один - отправить базу на email. Начиная с версии 2.2 плагин имеет возможность не сохранять спам-комментарии и ревизии записей. Конечно, эта опция доступна лишь для блогов с WordPress версии 2.6 и выше. В случае проблем с неотсылкой бэкапа базы на имейл рекомендую прочитать статью "Отложенная публикация и wp-cron.php". Автор плагина: Austin Matzko Страница плагина: http://wordpress.org/extend/plugins/wp-db-backup/ Рассматриваемая версия: 2.2.2 от 10.12.2008 Совместимость с версией WordPress: 2.0.3 и выше.

1234: Создаем страницу _http://moi.site/test, имеющую индивидуальный шаблон. 1. В папке Темы делаем копию файла index.php (page.php, 404.php) и называем эту копию test.php 2. В самом начале test.php добавляем Код: <?php /* Template Name: Test template */ ?> 3. Удаляем из полученного шаблона вывод основного цикла Loop (если он есть и если он не понадобится). Обычно Loop начинается Код: <?php while (have_posts()) : the_post(); ?> и заканчивается Код: <?php endwhile; endif; ?> 4. Вставляем на освободившееся место то, что нам нужно. 5. В админке создаем страницу "Тестовая страница", выбрав в качестве шаблона "Test template". (Если всё сделано правильно, в правой колонке появится выбор шаблона.) Слаг (ярлык, короткую сслыку) страницы делаем "test". Заработало? Теперь можно раскрашивать. :) Названия шаблона и слаг страницы могут быть любые, а не только test. Кто этого до сих пор не понял, тот должен срочно отнести обратно в магазин свой компьютер. :D Что этот маневр нам дает? Во-первых, мы можем вывести обычный контент, набранный в редакторе, необычным способом. В таком случае, понятное дело, Loop удалять не нужно. Во-вторых, мы можем вывести в обычном дизайне оригинальный контент, который невозможно загнать в рамки обычной страницы. Это может быть скрипт какой-то, в том числе и партнерской, программы, это может быть wrapper какой-то чужой страницы, это может быть [почти] что угодно, что мы в состоянии написать на html/php. Если на такой странице будете ставить формочку, имейте в виду, что имена параметров не должны совпадать с используемыми движком WP (p, s и т.д.). UPDATE Начиная с версии 2.5 выбор шаблона не справа, а внизу. UPDATE В 2.7 опять справа. UPDATE В новых версиях WP бывает так, что правильно сделанный шаблон не появляется в списке доступных. В этом случае можно активировать любую другую Тему, а затем вернуться обратно к той, с которой работаете. Покажите код шаблона страницы. <?php /* Template Name: forum template */ ?> <?php get_header(); ?> <?php include ('http://www.XXXXXXX.com/forum'); ?> </div> </body> </html>

1234: Иногда, чтобы стимулировать случайного посетителя еще побродить по блогу, стоит показать ему, что у вас еще есть на заинтересовавшую его тему. Если поместить следующий незамысловатый код в шаблон single.php, он выведет десяток постов из той же категории, к которой относится просматриваемый пост: <?php $mycat=get_the_category(); $mycat=$mycat[0]; $posts = get_posts('numberposts=10&category='.$mycat->cat_ID); foreach($posts as $post) :?> <li><a href="<?php the_permalink(); ?>"><?php the_title();?></a></li> <?php the_excerpt(); endforeach; ?>

1234: Во-первых, чтобы вывести рядом с названием постинга имя автора, можно воспользоваться функцией the_author();, но гораздо лучше the_author_posts_link();чтобы имя автора сразу стало ссылкой на все его записи. Во-вторых, все записи автора будут отображаться в том случае, если в используемой теме есть файл author.php. Если ничего такого нет, рекомендую самостоятельно создать файл author.php, скопировав в него содержимое index.php (лучше этот код почистить, если разбираетесь). Затем сразу под get_header(); написать следующий хак: if(isset($_GET['author_name'])) : $curauth = get_userdatabylogin($author_name); else : $curauth = get_userdata(intval($author)); endif; В-третьих, на странице, где выводятся все записи автора, может еще понадобиться информация об этом самом авторе. Для этого существует целый набор различных темплэйтов, которые, в отличие от функций типа the_author_description работают вне цикла.

Василина: С тех пор как я только начала изучать WordPress меня интересовала эта проблема: как показать профиль/профайл автора, у которого нет ни одной записи. Дело в том, что Вордпресс в этом случае почему-то перенаправляет нас на ошибку 404. И вот, спустя два года, у меня наконец дошли руки до этой проблемы. Во-первых, в теме должен находиться файл author.php. Во-вторых, там же должен быть файл 404.php (он обычно есть в стандартных темах). В-третьих, в этом самом 404.php сразу же как только начинается php-код, то есть после <?php (или <?), перед get_header(); надо написать: if(isset($_GET['author_name'])) { $curauth = get_userdatabylogin($author_name); include (TEMPLATEPATH.'/author.php'); } elseif ($curauth = get_userdata(intval($author))) { include (TEMPLATEPATH.'/author.php'); } else { Ну и в конце файла, после get_footer(); и перед ?> надо поставить закрывающую фигурную скобку }.

1234: http://www.deanlee.cn/wordpress/fckeditor-for-wordpress-plugin/ Заменяем встроенный в Wordpress WYSIWYG редактор на CKEditor Приветствую Вас, дорогие читатели. Давно не писал новостей, т.к. был очень занят, и теперь попытаюсь исправиться. Дабы восстановить это упущение, хочу довести до Вас несколько интересных вещей, которые я обнаружил у китайского камрада Dean Lee. Начнем с плагина для нашего Wordpress блога, который поможет заменить встроенный WYSIWYG редактор, он же TinyMCE, на не менее удобный и более функциональный CKEditor, ранее известный как FCKEditor. Внешне это будет выглядеть так … Плагин подменяет встроенный редактор на CKEditor, так же Вам дается возможность самим настроить панель с кнопками. В плагин встроен файловый менеджер и наша любимая кнопка “read more”. Как бонус, есть возможность подключить облегченную версию редактора к полю добавления комментариев, выглядит это таким образом … Скачать этот плагин Вы можете на сайте автора и на официальном сайте Wordpress. Так что, все фанаты FCKEditor’а, настал и Ваш звездный час.

1234: http://blairwilliams.com/mingle-wordpress-plugin/ http://wordpress.org/extend/plugins/mingle/ Wordpress как небольшая социальная сеть Ну что же, дождались наконец. Хочу обрадовать тебя, дорогой читатель, теперь ты сможешь добавить в свой Wordpress блог некоторые вкусности социальной сети. Так, вот Вам картиночка в тему :) А теперь самое интересное… Увидел свет новый плагин, который делает доступным: Полноценные профили пользователей. Дружбу между пользователями. Микроблог пользователя и его друзей с возможностью комментирования в стиле Twitter. Список всех пользователей. Уведомления на емэйл, если Вам предложили дружбу или оставили комментарий на вашу запись в микроблоге. Нужно создать новые страницы, чтобы потом, в настройках плагина, привязать к этим страницам вышеперечисленные функции. После активации плагина, станут доступны два виджета: “Профиль юзера и ссылки на страницы описанные выше” и “Список самых популярных пользователей”. Теперь минусы: Русского языка нет, но есть языковые файлы, которые Вы можете перевести (и не забудьте поделиться с остальными читателями этого блога). Придется поработать с файлом стилей, чтобы стилизовать под свой блог. У меня заработал только с последней версией Wordpress 2.8.6. Ну а теперь, долгожданная ссылка на плагин Mingle в репозиторий Wordpress и на офсайт самого плагина.

1234: http://wp-skins.info Полезный сайт

1234: http://wordpress.org/extend/plugins/wp-hive/ Установка нескольких блогов на одном Вордпрессе Documentation Installation Instructions: Setup your first site according to WP standard instructions. Upload the wp-hive folder to the /wp-content/plugins/ directory. Activate the WP Hive plugin through the Plugins menu in WordPress To add a new site, go to WP Admin > WP Hive > Add new and add any site you want. Run the WP Install for the new site by clicking “Install Site”. If you are adding a new domain or subdomain, you must also point it (using DNS and webserver) to the directory that contains index.php. Subdirectory sites can be added at will, without making changes to the webserver. If you need a good webserver, we suggest you check out the web hosting options at WHS. Write Permissions The /wp-content/ directory must be writable during the installation process. Special Files The files sitemap.xml, sitemap.xml.gz, robots.txt, and favicon.ico are treated specially. They are normally stored in the root directory, but since each blog shares the same root directory, they must be moved and properly handled. Ensure these files DO NOT exist in the root directory. For each domain that uses one or more of these files, save them in the directory: /wp-content/wp-hive/domainname.com/ (eg: /wp-content/wp-hive/domainname.com/robots.txt). The plugin ensures any external entity will access these file using the normal method (eg: http://www.yourdomain.com/robots.txt). Note: If you use the ‘Google XML Sitemaps’ plugin, you can manually set the location of the sitemap file in the plugin configuration. Deactivation Deactivate the WP Hive plugin through the Plugins menu in WordPress. Removal To completely remove the plugin, deactivate as above, then manually remove the wphive-config and wphive-hosts tables from the database.

1234: Используя плагин really static, Вы можете сделать полную статичную копию своего WordPress блога на хостинге типа narod.ru и подобных, когда сам WordPress может быть установлен локально на Вашем компьютере или на другом хостинге . Как вариант, устанавливаете WordPress в подпапку сайта, а на самом сайте будет его статичная копия. После изменения или добавления поста или страницы, плагин автоматически перезаписывает или добавляет нужный статичный хтмл по FTP. http://wordpress.org/extend/plugins/really-static/

1234: Вы хотите разместить прайс-лист на своем WordPress блоге? Но прайс лист есть у Вас в xls файле, а вбивать руками его заново никак не хочется? Хотите чтобы таблица с прайсом выглядела красиво, в ней работала сортировка по цене? А так же хотите, чтобы можно было просто добавлять позиции, изменять и удалять ? http://tobias.baethge.com/wordpress-plugins/wp-table-reloaded-english/ Есть решение, всё это умеет плагин WP-Table Reloaded. Плагин имеет удобный интерфейс, который позволит Вам создавать и редактировать таблицы, так же возможен импорт из CSV, HTML и XML файлов, а так же экспорт в эти форматы. Плагин позволяет использовать сортировку в Ваших таблицах (опубликованных на страницах), для этого используется Tablesorter-jQuery-Plugin. Вы сможете использовать оригинальные стили для всех или каждой таблицы в отдельности. Таблицы можно вставлять в новости, страницы или текстовые виджеты используя короткий код: [table id=ID_таблицы /]. перевод этого плагина, файлы русского языка качаем здесь и вставляем в подпапку “languages” самого плагина. http://wp-skins.info/wp-content/uploads/2009/05/wp-table-reloaded-12_rus.zip

1234: Немного о странице профиля пользователя wordpress блога Автор: AlexPTS | Раздел: Полезное Тэги: Код Решил немного расписать подробнее вывод данных профиля на странице wordpress блога. Для страниц пользователя лучше использовать отдельный шаблон author.php, чтобы оформить его на свой вкус и не лепить все в кучу. Если у вас в теме нет шаблона author.php, то просто создайте его. Скопируйте содержимое шаблона index.php и удалите из кода цикл, получится неплохая основа для шаблона профиля. Перед выводом каких-либо данных, мы должны получить данные wordpress пользователе. Делается это с помощью функции get_userdata(): <?php $curauth = get_userdata($author); ?> Переменная $curauth содержит объект с пользовательскими данными пользователя wordpress. Но выводить в шаблон нам нужно не все данные пользователя, служебные данные нет смысла показывать посетителю wordpress блога. Вот список основных данных, которые можно вывести на странице пользователя wordpress блога: $curauth->aim; (AIM) $curauth->description; (Биография) $curauth->display_name; (Отображать как) $curauth->first_name; (Имя) $curauth->ID; (Id) $curauth->jabber; (Jabber / Google Talk) $curauth->last_name; (Фамилия) $curauth->nickname; (Ник) $curauth->user_email; (E-mail) $curauth->user_login; (Логин) $curauth->user_url; (Сайт) $curauth->yim; (Yahoo IM) Выводить данные имя пользователя можно так: <?php echo $curauth->first_name; ?> Неплохо бы было перед выводом проверить, указал ли пользователь wordpress свое имя или нет, прежде чем выводить его имя на странице профиля пользователя wordpress: <?php if(isset($curauth->first_name)) { echo "Имя: " . $curauth->first_name; } ?> http://my-wordpress.ru/poleznoe/profile-wordpress.php

1234: После установки плагина WordPress Database Backup мне при входе в админку выдало, что я не имею прав для входа на данную страницу. Все решилось, когда я через ftp удалил папку с плагином :(( Решение: WP-DB-Backup работает, если заполнить ключи в wp-config.php. Проблема После активации некоторых плагинов (в частности, WP-DB-Backup и BuddyPress) на локализованных версиях WordPress выдаётся ошибка «У вас недостаточно полномочий для доступа к этой странице». Решение Необходимо присвоить любые значения (произвольный набор символов) «секретным» константам AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY и NONCE_KEY в wp-config.php. Они используются для шифрования cookies и предназначены для заполнения авторами сайтов самостоятельно, поскольку должны быть уникальными для каждого сайта. Как вариант, можно открыть страницу https://api.wordpress.org/secret-key/1.1/salt/, скопировать весь код и заменить соответствующий блок в wp-config.php. Подробности Вскоре после выхода WordPress 2.9.1 Andrew Nacin заметил, что переменная $wp_default_secret_key, в которой должен содержаться текст по умолчанию для «секретных» констант, не совпадает с переведёнными строками в локализованных дистрибутивах. В результате строка «впишите сюда уникальную фразу» считалась уникальной, и это негативно влияло на безопасность. В качестве решения появилось требование к переводчикам переопределять $wp_default_secret_key в языковых файлах, что и было сделано в WordPress 2.9.2. В альтернативных русских сборках из-за отсутствия переменной $wp_default_secret_key в ru_RU.php нет ошибки с активацией плагинов, однако имеется вышеупомянутая проблема с безопасностью. Проблема После активации некоторых плагинов (в частности, WP-DB-Backup и BuddyPress) на локализованных версиях WordPress выдаётся ошибка «У вас недостаточно полномочий для доступа к этой странице». Решение Необходимо присвоить любые значения (произвольный набор символов) «секретным» константам AUTH_KEY, SECURE_AUTH_KEY, LOGGED_IN_KEY и NONCE_KEY в wp-config.php. Они используются для шифрования cookies и предназначены для заполнения авторами сайтов самостоятельно, поскольку должны быть уникальными для каждого сайта. Как вариант, можно открыть страницу https://api.wordpress.org/secret-key/1.1/salt/, скопировать весь код и заменить соответствующий блок в wp-config.php. Подробности Вскоре после выхода WordPress 2.9.1 Andrew Nacin заметил, что переменная $wp_default_secret_key, в которой должен содержаться текст по умолчанию для «секретных» констант, не совпадает с переведёнными строками в локализованных дистрибутивах. В результате строка «впишите сюда уникальную фразу» считалась уникальной, и это негативно влияло на безопасность. В качестве решения появилось требование к переводчикам переопределять $wp_default_secret_key в языковых файлах, что и было сделано в WordPress 2.9.2. В альтернативных русских сборках из-за отсутствия переменной $wp_default_secret_key в ru_RU.php нет ошибки с активацией плагинов, однако имеется вышеупомянутая проблема с безопасностью.

1234: define('AUTH_KEY', 'OJWO4(.!K7%~` 3B<LQ }D|-!TnXV$FpE~i#%p<<TBqfyGNa@&N!WclSZ$-0p/@U'); define('SECURE_AUTH_KEY', '`KSSXSEsKh!H{eRQ1Lt2cJ`5w?/((}wy/Z<L&p}29;L{1T6_k=hGnYT|<#7WEis2'); define('LOGGED_IN_KEY', 'f*SC^Qec)(+SM?||mX6wrt`1,:W@-vFo2U4RxFdF;3qhL8v;H9vAeHLx1|[@y*:9'); define('NONCE_KEY', '(kSx$-T6iXqR]p9+ds;;:]|NC~U|L-l ;trt2|kqc,mK*c*>|->Z[n20Q5hoO`y]'); define('AUTH_SALT', 'PDHdteVZ_6~2{# KgSPf~ig[7)c_tfgUyCQ9B~M?bEDizMvml#;z</Am+:|3PW9g'); define('SECURE_AUTH_SALT', '!`)%3i+)`=o (PQb>-{RK9#:*<g<y4u3PfG/.jVGQ]gb0JErm-sfbf]#(M:BpgPk'); define('LOGGED_IN_SALT', 'eY -Q+M&WAem>X6xjF7_&@s b-^n/<faol@o*+F-pFOR^nieL^LfNm3o|Xl9gPci'); define('NONCE_SALT', 'CbI4)bd{w/*I8m~jYRkUeALSpeHJYZ+-_~~b+A{+#]AN]h.Nh**WVM4{H$C|}fV2');

Василиса: роцедуры переноса WordPress блога на новый хостинг. Поэтому я решил более подробно описать этот процесс в отдельном посте. Итак приступим: Скачайте все файлы WordPress блога, который вы собрались переносить. Убедитесь в том, что среди файлов есть .htaccess wp-config.php и конечно же папка wp-content. Сделайте экспорт базы данных блога. Если у вас были установлены плагины, которые создают собственные таблицы, для работы. Убедитесь в том, что эти таблицы также окажутся в резервной копии базы данных. Для экспорта можно воспользоваться плагином WP-DB-Backup или же утилитой типа PHPMyAdmin в панели управления хостингом. Переведите старый сайт, в режим обслуживания, для того чтобы посетители не писали новых комментариев, потому что базу данных вы уже скопировали, и после этого все новые комментарии не будут перенесены. Для этого можно воспользоваться плагином Maintenance Mode. Откройте файл wp-config.php. Измените параметры подключения к базе данных MySQL в соответствии параметрами на новом хостинге, возможно нужно будет поменять пароль, имя базы данных и имя пользователя. Также необходимо в этом файле прописать новый URL вашего блога, для этого добавьте две строчки: define ('WP_SITEURL', 'http://mysite.com); define ('WP_HOME', 'http://mysite.com'); Загрузите файлы блога на новый сервер, в том числе и измененный в предыдущем шаге файл wp-config.php. Импортируйте резервную копию базы данных, которую вы сделали во втором пункте используя инструменты контрольной панели хостинга (PHPMyAdmin) Авторизуйтесь в панели администрирования нового блога. Если в ваших записях были прописаны какие-то статичные ссылки на старый блог, вы можете изменить их, используя плагин Search Regex http://blogproblog.com/search_replace_in_wordpress_database/

Василина: В последнее время, с развитием твиттера, стало популярным отображать сообщения из твиттера, для этого чаще всего используются плагины. Но иногда бывает нужно оформить сообщения под стиль блога или выводить их в нестандартном месте блога. В этом случае для вывода твитов, больше подходит сегодняшний способ. <ul> <?php $feedURL = "http://twitter.com/statuses/user_timeline/9108312.rss"; // измените на адрес RSS из twitter-а $doc = new DOMDocument(); $doc->load($feedURL); $arrFeeds = array(); foreach ($doc->getElementsByTagName('item') as $node) { $itemRSS = array ( 'title' => $node->getElementsByTagName('title')->item(0)->nodeValue, ); array_push($arrFeeds, $itemRSS); } $limit = 5; // количество сообщений для вывода. for($x=0;$x<$limit;$x++) { $title = str_replace('donchenko: ', '', $arrFeeds[$x]['title']); // замените donchenko на ваш логин в твиттере. $str = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]","<a href=\"\\0\">\\0</a>", $title); $pattern = '/[#|@][^\s]*/'; preg_match_all($pattern, $str, $matches); foreach($matches[0] as $keyword) { $keyword = str_replace(")","",$keyword); $link = str_replace("#","%23",$keyword); $link = str_replace("@","",$keyword); if(strstr($keyword,"@")) { $search = "<a href=\"http://twitter.com/$link\">$keyword</a>"; } else { $link = urlencode($link); $search = "<a href=\"http://twitter.com/#search?q=$link\" class=\"grey\">$keyword</a>"; } $str = str_replace($keyword, $search, $str); } echo '<li>'.$str.'</li>'; } ?> </ul> Вставьте этот код в место на вашем блоге, где нужно выводить сообщения твиттера и наслаждайтесь.

Василина: Этот пост больше предназначен для тех, кто любит самостоятельно ковырять шаблоны для WordPress блога. Функция the_excerpt () отвечает за вывод сокращенной версии поста, например сокращенный вывод постов, чаще всего настраивают на страницах архивов, категорий или тегов. Изначально эта функция показывает первые 55 слов из записи, после чего пишет [...] для дальнейшего прочтения записи, Вам необходимо щелкнуть на заголовке записи. Довольно часто, возникает необходимость увеличить количество слов или уменьшить, а также убрать троеточие или кавычки, сделать это в принципе не сложно и сегодня я расскажу как именно это можно сделать. Практически в любом случае, нужно просто добавить кусочек кода в файл functions.php в папке с шаблоном блога. Регулируем количество слов: <?php function new_excerpt_length($length) { return 20; } add_filter('excerpt_length', 'new_excerpt_length'); ?> В данном случае цифрой 20 задается количество слов, которое будет выводить функция the_excerpt (). Играем с троеточием: Для блогов которые работают на WordPress > 2.9 код выглядит вот так: <?php function new_excerpt_more($more) { return '[.....]'; } add_filter('excerpt_more', 'new_excerpt_more'); ?> Попробуйте изменить [.....] Для блогов на WordPress < 2.8 этот же код будет выглядеть вот так: <?php function new_excerpt_more($excerpt) { return str_replace('[...]', '...', $excerpt); } add_filter('wp_trim_excerpt', 'new_excerpt_more'); ?> В данном случае функцией str_replace меняется [...] на ... собственно вместо обычного троеточия, можно поставить что угодно. Как нам известно, функция эта выводит краткую версию поста, но не выводит ссылку типа «Продолжить чтение», для этого воспользуемся следующим хаком: <?php function new_excerpt_more($more) { return '<a href="'. get_permalink($post->ID) . '">' . ' читать далее ..' . '</a>'; } add_filter('excerpt_more', 'new_excerpt_more'); ?> Не забываем, что этот код добавляется в файл functions.php в папке шаблона WordPress блога, если такого файла не существует, создайте его самостоятельно. Все это можно прочитать на английском языке, в документации WordPress.

Василиса: Файл ".htaccess" предназначен для так называемого децентрализованного управления веб сервером Apache. Дело в том, что в 99 процентах случаев ваш проект будет размещен на хостинге под управлением сервера Apache. Возможности этого сервера всеми хорошо изучены и к тому же этот сервер бесплатен. Так вот, для того, чтобы вебмастер (вы), не имеющий доступа к рычагам управления сервера Apache своего хостинга, тем не менее имел возможность управлять некоторыми аспектами работы сервера и был придуман файл ".htaccess". Все директивы (команды) прописываемые в файле ".htaccess будут применены только к содержимому той директории (папки), в которой находится данный файл ".htaccess". Следовательно, если вы создадите в корневой папке своего сайта файл ".htaccess", то сможете давать команды серверу Apache, которые будут применены ко всему вашему сайту. Файл ".htaccess" можно будет создать так же и в любых папках вашего сайта и, например, запоролить через него доступ к этим папках. Не многие знают все директивы (команды) и правила их написания в файле ".htaccess", но этого и не требуется. Зачастую вам нужно будет только скопировать уже готовый код из какого-либо примера и заменить в нем данные на те, что подходят вам. Я уже писал про способ использования файла ".htaccess" для склеивания зеркал сайтов в статье - Редирект 301: с WWW на без WWW и наоборот, где вам нужно было лишь скопировать представленный мною код и заменить доменное имя моего сайта на свое доменное имя. Кстати, если вы еще не озадачивались вопросом склейки зеркал вашего сайта с WWW на без WWW (на примере моего блога это: http://www.ktonanovenkogo.ru/ и http://ktonanovenkogo.ru/), то обязательно это сделайте, ибо можете очень существенно потерять в плане поискового продвижения сайта, из-за того, что часть ссылок проставленных на ваш сайт может потеряться. http://ktonanovenkogo.ru/vokrug-da-okolo/hosting/domeny-s-www-i-bez-www-istoriya-poyavleniya-ispolzovanie-301-redirekta-dlya-ix-skleivaniya.html#redirekt

Василина: Для того, чтобы заставить плагин DCaptcha корректно работать на WordPress 2.92, как оказалось, много не надо. Просто подключитесь по FTP с серверу хостинга, где у вас размещены файлы вашего блога и откройте на редактирование файл: 1 /wp-content/plugins/dimoning.ru-captcha/dimoning.ru-captcha.php Найдите в нем строку: 1 wp_set_comment_status ($id, 'delete'); и замените в ней "delete" на "trash", чтобы в результате получилось так: 1 wp_set_comment_status ($id, 'trash'); Что же мы получим в результате проведения этих изменений в коде плагина DCaptcha? Ну, во-первых, плагин начнет работать с WordPress 2.92 и выше. Это уже хорошо, но давайте посмотрим повнимательней, а что же мы, собственно, сделали и куда теперь будут попадать комментарии WordPress, которые спаморезка DCaptcha пометит как спамные? Начнем, пожалуй, со второй части вопроса. Порезанные плагином DCaptcha комментарии WordPress, при тех настойках, что мы задали чуть выше, попадут либо в разряд "Спам" (в случае замены "delete" на "spam"), либо в разряд "Корзина" (в случае замены "delete" на "trash"). Т.е. получается, что порезанные спам-комментарии все равно будут записываться в базу данных WordPress, но просто с пометкой корзина или спам. Легче ли нам станет от этого или нет? С одной стороны, конечно же, легче, ведь мы теперь смело сможем, зайдя в админку WordPress, очистить все содержимое корзины или спама, не боясь удалить комментарии читателей блога. Но спам-комментарии по прежнему будут писаться в базу данных WordPress, а это плохо, ибо спам будет создавать дополнительную и ненужную нагрузку на сервер хостинга. Даже если вы отключите корзину в WordPress (о том, как это сделать можно прочитать в конце статьи), то все равно спам-комментарии будут писаться в корзину WordPress (которой как бы и нет). Это легко будет проверить, включив корзину в WordPress (вы увидите в корзине кучу спама порезанного плагином DCaptcha). Для того, чтобы спам-комментарии WordPress, порезанные плагином DCaptcha, удалялись сразу же, минуя базу данных, вам нужно будет внести в код плагина DCaptcha несколько иные изменения, чем были описаны выше. Но если вам наплевать на нагрузку на сервер хостинга создаваемую спамом, то описанный выше вариант вам вполне подойдет. Для удаления порезанных плагином DCaptcha спам-комментариев нам явно нужно буде использовать другую функцию, которая описана на этой странице кодекса WordPress. Это функция WP_DELETE_COMMENT, позволяющая сразу удалять комментарии в WordPress, если в нем отключена корзина (о том, как отключить корзину WordPress я напишу в конце статьи). Итак, если вы хотите, чтобы спам-комментарии отфильтрованные плагином DCaptcha, удалялись минуя корзину и не записывались в базу данных WordPress, то в файле: 1 /wp-content/plugins/dimoning.ru-captcha/dimoning.ru-captcha.php замените строку: 1 wp_set_comment_status ($id, 'delete'); на строку 1 wp_delete_comment ($id); Сохраните произведенные изменения и протестируйте плагин DCaptcha на работоспособность. Теперь плагин DCaptcha должен будет исправно отсекать спам-комментарии и пропускать только комментарии посетителей вашего блога, поставивших галочку в поле "Это не спам". Причем, если вы не отключите корзину в WordPress, то удаленные плагином DCaptcha спам-комментарии будут попадать именно в нее (по логике работы новых версий WordPress все удаления теперь проходят через корзину, если она специально не отключена). У меня плагин DCaptcha заработал на ура, но правда,спам-комментарии все равно продолжали писаться в базу данных. Во всем виновата оказалась корзина WordPress, которая появилась в версии 2.9. Все спам-комментарии, отсекаемые плагином DCaptcha, все равно продолжали исправно заноситься в базу данных WordPress и сохраняться в корзину:

Василина: Мне это показалось не приемлемым, ибо главной задачей использования споморезки DCaptcha являлось не только избавление от спама, но и снижение нагрузки WordPress на сервер хостинга, которая создавалась потоком спама. Поэтому я решил вообще нафиг отключить корзину в WordPress, ибо ее функции мною все равно были не востребованы. Из админки WordPress отключить корзину не получится, для этого потребуется внести изменения в конфигурационный файл WordPress под названием WP-CONFIG.PHP. Это самый главный конфигурационный файл WordPress, который вы сможете найти в корневой папке блога, подключившись к северу вашего хостинга по FTP. Откройте файл WP-CONFIG.PHP на редактирование в FileZilla и добавьте в него строчку кода: 1 define('EMPTY_TRASH_DAYS', 0); В этом случае у нас получится отключить корзину в WordPress совсем и спам-комментарии больше не будут писАться в базу данных. Если вы по каким-либо причинам не захотите отключать корзину в WordPress на совсем, а только захотите уменьшить время хранения в ней записей, то вставьте в WP-CONFIG.PHP следующую строчку кода: 1 define('EMPTY_TRASH_DAYS', 3); где вместо тройки вы можете поставить нужное вам количество дней, которое корзина будет хранить записи до их удаления. Но я все же предпочел вообще отказать от корзины в WordPress, ибо не стоит на мой взгляд захламлять базу данных лишними данными и при этом терпеть увеличившуюся нагрузку на сервер, за счет потока сохраняемых в базу WordPress спам-комментариев.

Василиса: КНОПКИ СОЦИАЛЬНІХ СЕРВИСОВ Тут нам может помочь статья, описывающая устройство тем оформления, используемых в WordPress - Темы оформления для блога на WordPress — установка, из каких файлов (шаблонов) состоят и как работают. Итак, получается, что в WordPress за вывод страниц с содержимым статей отвечает файл под названием SINGLE.PHP. Найти этот файл вы сможете в папке с используемой вами темой оформления по следующему пути: 1 /wp-content/themes/название папки с используемой вами темой оформления WordPress/ Но для этого вам нужно будет подключиться к своему блогу по протоколу FTP, например, с помощью программы FileZilla (Как получить доступ к сайту по FTP с помощью программы FileZilla). Откройте файл SINGLE.PHP на редактирование в удобном для вас редакторе (я пользуюсь Notepad++). Если вы хотите вставить кнопки добавления в социальные сервисы внизу статьи (как у меня на блоге), то вставлять код кнопок нужно будет после содержимого статьи, которое выводится с помощью строчки: 1 <?php the_content('Читать полностью'); ?> Сразу после этой строки вы можете вставлять код нужных вам кнопок добавления в социальные сервисы. Если вы хотите разместить некоторые из этих кнопок еще и в верху статьи, то код этих кнопок нужно будет вставить перед приведенным выше участком кода файла SINGLE.PHP, отвечающим за вывод статьи на страницу. Все довольно просто, осталось только узнать, какой именно код нужно использовать для каждой из кнопок добавления в сервисы Twitter, Vkontakte, Google Buzz, Я.ру, Мой Мир, ЛиРу (Liveinternet), Livejournal, Blogger, Facebook и Friendfeed. Начнем с сервиса микроблогинга Twitter. Последнее время он набирает популярность и на данный момент может являться очень серьезным источником трафика и популяризации вашего сайта. Более подробно о работе в Twitter вы можете почитать в этой статье - Что такое Twitter, регистрация, настройка аккаунта и внешнего вида, поиск друзей и начало общения в Твиттере. Классический вариант кода добавления заголовка и адреса статьи в Twitter выглядит так: 1 <a rel="nofollow" target="_blank" href="http://twitter.com/home/?status=<?php the_title(); ?> <?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/twitter1.gif" alt="Добавить в Twitter" /></a> Атрибут TARGET="_BLANK" я вставил для того, чтобы сайт Твиттера открывалась на другой странице, оставляя страницу вашего сайта открытой. Если вам это не нужно, то просто уберите этот атрибут из кода. Атрибут REL="NOFOLLOW" позволяет закрыть от индексации поисковиками внешнюю ссылку, ведущей с вашего сайта на сайт Твиттера, что поможет избежать утечки Google PageRank (PR) со страниц вашего сайта (Google PageRank (PR) — что это такое и от чего зависит PR, в чем измеряется и как посмотреть PageRank, как PR влияет на положение в поисковой выдаче Google), а так же позволит больше заработать на продаже ссылок с вашего сайта (Заработок на продаже ссылок со своего сайта в постовых и рекламных обзорах). Изображение для этой кнопки добавления в Twitter вам нужно будет загрузить в папку IMAGES, которая находится в папке с используемой вами темой оформления WordPress, которая находится здесь: 1 /wp-content/themes/название папки с используемой вами темой оформления WordPress/images/ Но я, обычно, избавляюсь от лишнего PHP кода, который можно заменить на статичные ссылки, поэтому строку: 1 src="<?php bloginfo('template_url'); ?>/images/twitter1.gif" Я заменяю на реальный путь, где лежит нужная картинка: 1 src="http://ktonanovenkogo.ru/image/twitter1.gif" В моем случае это папка IMAGE, которая находится в корне сайта. Вы можете использовать для хранения изображений кнопок любую папку на вашем сайте, надо будет только прописать путь до нее. Для меня код кнопки добавления в Twitter, приведенный выше, оказался не совсем удачным, в силу того, что в Твиттере существует ограничение на длину сообщения в 140 знаков, а заголовки моих статей в купе с очень длинными ссылками на эти статьи запросто перекрывают этот лимит. Про добавление моей статьи в Твиттер с помощью этой кнопки получается большой перебор по количеству символов: У меня, зачастую, одна только ссылка может быть длиннее, чем 140 символов, и получается, что в этом случае, даже если сократить все сообщение, то ссылка все равно не поместится. Получается, что такой вариант кнопки добавления в Twitter для моего блога никак не подходит. Специально сокращать заголовки статей и длину ЧПУ ссылки (как, кстати, советуют многие спецы) я не намерен, ибо посещаемость моего блога доказывает, что длина заголовков статей и длина адресов этих страниц не ухудшает отношение поисковиков к сайту, а возможно это даже окажется лучшим вариантом. Можно, конечно же, вместо пермалинка, т.е. ссылки, созданной с помощью ЧПУ, отправлять в Твиттер оригинальную ссылку на статью, которую формирует сам WordPress, без активации ЧПУ. Не совсем понятно, что я хотел сказать? Попробуйте тогда почитать об этом в статье Настройка ЧПУ (человеко-понятные урлы) для WordPress. В этом случае код кнопки добавления в Twitter будет выглядеть так: 1 <a title="Затвитить пост!" target="_blank" rel="nofollow" href="http://twitter.com/home/?status=<?php the_title(); ?> <?php bloginfo('url'); ?>/?p=<?php the_ID(); ?>"><img src="<?php bloginfo('template_url'); ?>/image/rtwitter.png"></a> При добавлении статьи в Twitter с помощью такой кнопки, получится такой вид ссылки: Как видите ссылка стала значительно короче, но заголовок статьи вместе с этой ссылкой по прежнему превышает лимит в 140 символов. Увы и ах, да и к тому же, я не совсем уверен в том, как отнесутся поисковики к тому, что на две одинаковых статьи будут иметь разные ссылки. На лицо явное дублирование контента, но возможно, что я и ошибаюсь, но все же лучше будет для сокращения ссылки использовать специальные сервисы для этого предназначенные. А вместо длинного заголовка статьи я решил, что проще будет отправлять просто фразу, вроде "Рекомендую почитать". Может это и не оптимальный вариант, но в моем случае, наверное, наиболее подходящий. Для того, чтобы реализовать описанное в этом абзаце, вам нужно будет использовать такой код для кнопки добавления в Твиттер: 1 <a rel="nofollow" target="_blank" href="http://twitter.com/home/?status=<?php echo urlencode( 'Рекомендую почитать: ' ) . 2 fb_gettinyurl( get_permalink() ); ?>" title="Добавить в Twitter"><img src="<?php bloginfo('template_url'); ?>/images/twitter.gif" alt="Опубликовать в twitter.com" ></a> В Твиттере добавленное с помощью такой кнопки сообщение будет выглядеть так: Как видите ссылка на статью оказалась укороченной с помощью сервиса TINYURL, а само сообщение получилось очень коротким и пользователь, в случае необходимости, сможет добавить еще что-нибудь от себя. В общем, выбирайте наиболее вам подходящий вариант, используйте приведенные мною выше картинки или же рисуйте свои, как говорится - выбор за вами.

Василиса: Не буду долго говорить о каждом из этих сервисов, а просто приведу код для добавления во все эти социальные сервисы: Код кнопки добавления в сервис ВКонтакте: 1 <a href="http://vkontakte.ru/share.php?url=<?php the_permalink(); ?>" target="_blank" rel="nofollow"><img src="<?php bloginfo('template_url'); ?>/images/vkontakte.gif"title="Поделиться ВКонтакте"></a> Код кнопки добавления в сервис Google Buzz: 1 <a href="http://www.google.com/reader/link?url=<?php the_permalink(); ?>&title=<?php the_title(); ?>&srcURL=http://ktonanovenkogo.ru/" rel="nofollow" target="_blank"><img src="<?php bloginfo('template_url'); ?>/images/google-buzz-compact.gif" title="Добавить в Google Buzz"></a> Код кнопки добавления в Я.ру: 1 <a target="_blank" rel="nofollow" href="http://my.ya.ru/posts_add_link.xml?title=<?php the_title(); ?>&URL=<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/yru.gif" title="Поделиться ссылкой на Я.ру" /></a> Код кнопки добавления в сервис Мой Мир (mail.ru): 1 <a target="_blank" rel="nofollow" href="http://connect.mail.ru/share?share_url=<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/moi-mir.gif" title="Добавить в Мой Мир"></a> Код кнопки добавления в блог на блогохостинге LiveInternet: 1 <a href="http://www.liveinternet.ru/journal_post.php?action=l_add&amp;cnurl=<?php the_permalink(); ?>" target="_blank"><img src="<?php bloginfo('template_url'); ?>/images/liru.gif" title="Добавить в свой блог на ЛиРу (Liveinternet)"></a> Код кнопки добавления в блог на блогохостинге Livejournal: 1 <a target="_blank" rel="nofollow" href="http://www.livejournal.com/update.bml?event=<?php the_permalink(); ?>&subject=<?php the_title(); ?>" ><img src="<?php bloginfo('template_url'); ?>/images/livejournal.gif" title="Добавить в свой блог на livejournal.com"></a> Код кнопки добавления в блог на блогохостинге Blogger: 1 <a target="_blank" rel="nofollow" href="http://www.blogger.com/blog_this.pyra?t&amp;u=<?php the_permalink(); ?>&amp;n=<?php the_title(); ?>&amp;a=ADD_SERVICE_FLAG&amp;passive=true&amp;alinsu=0&amp;aplinsu=0&amp;alwf=true&amp;hl=ru&amp;skipvpage=true&amp;rm=false&amp;showra=1&amp;fpui=2&amp;naui=8"><img src="<?php bloginfo('template_url'); ?>/images/blogger.gif" title="Добавить в свой блог на Blogger.com"></a> Код кнопки добавления в сервис Facebook: 1 <a rel="nofollow" target="blank" href="http://www.facebook.com/sharer.php?u=<?php the_permalink(); ?>"><img src="<?php bloginfo('template_url'); ?>/images/facebook.gif" title="Поделиться ссылкой в FaceBook"></a>

Василиса: Так же будет не плохо, если вы для всех кнопок добавления в социальные сервисы, в теге IMG, пропишите размеры картинки этой кнопки. Это можно сделать с помощью атрибутов тега IMG - HEIGHT и WIDTH (Вставляем изображения в текст с помощью тега IMG). Код кнопки добавления в социальные сервисы тогда будет выглядеть, например, так: 1 <noindex><a rel="nofollow" href="http://www.livejournal.com/update.bml?event=<?php the_permalink(); ?>&subject=<?php the_title(); ?>" target="_blank" title="Опубликовать в своем блоге livejournal.com"><img src="<?php bloginfo('template_url'); ?>/image/livejournal.gif" alt="Опубликовать в своем блоге livejournal.com" width="73" height="18"></a></noindex> Код всех тех кнопок, что вы будете добавлять в файл SINGLE.PHP (/wp-content/themes/название папки с используемой вами темой оформления WordPress/) вы можете заключить в контейнер из открывающего и закрывающего тегов DIV, прописав для этого контейнера класс. Затем, можно в файле каскадных таблиц стилей STYLE.CSS (который лежит там же, где и файл SINGLE.PHP) прописать для этого класса ряд свойств, которые, например, помогут выровнять блок с кнопками добавления в социальные сервисы относительно других элементов дизайна. В коде кнопки для Google buzz приведен неверный адрес не http://www.google.com/reader/link а http://www.google.com/buzz/post Юзайте плагин Sociable RE; Sociable. Русская версия. Добавляет кнопки автоматической публикации ссылок на страницы вашего блога в популярных социальных сетях и сервисах закладок. И не парьтесь P/S: Для WordPress

Василиса: http://ktonanovenkogo.ru/seo/wordpress-knopki-socialnye-servisy-twitter-vkontakte-google-buzz-yaru-moj-mir-liveinternet-livejournal-blogger-facebook-friendfeed.html

Василина: После настройки WordPress на локальной машине необходимо перенести его на настоящий домен. Для подготовки к переносу необходимо внести изменения в базу данных MySQL, заменив все ссылки на localhost на новый домен. Создаем резервную копию базы данных: mysqldump -u пользователь -pпароль база-данных > ~/dump.sql Подключаемся к серверу MySQL: mysql -u пользователь -pпароль база-данных В консоли MySQL сервера выполняем следующие запросы: UPDATE wp_options SET option_value = REPLACE(option_value, 'http://localhost', 'http://www.sergeitvorogov.ru') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = REPLACE(guid, 'http://localhost','http://www.sergeitvorogov.ru'); UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://localhost', 'http://www.sergeitvorogov.ru'); Вот и все. Теперь, предварительно все проверив, создаем дамп обновленной базы данных для переноса на сервер.

Василиса: Как сделать так, чтобы посты выводились на главной в виде анонсов. Не ставить же в каждом тег more ... Открываете index.php, меняете the_content() на the_excerpt(), получаете анонс. Но картинки у Вас выводиться не будут.



полная версия страницы