среда, 21 октября 2009 г.

7 WordPress задач и их решение

Большинство блоггеров используют в качестве движка WordPress. Не только потому что этот движок распространен, но и потому что он почти идеален для блоггинга. Работа с WordPress легка и не требует каких-либо навыков, но иногда перед веб-мастером / блоггером встают задачи, которые сложно решить, без дополнительных знаний. В этом посте я написал 7 задач, с которыми я сталкивался и их решение.


Задача 1. Открыть или закрыть комментирование в блоге для всех постов

Я сталкивался с ситуацией, когда на одном моем WordPress сайте было 107 записей. Во всех записях комментирование было закрыто, а я захотел, чтобы посетители оставляли свое мнение о записях, т.е. возникла необходимость открыть комментирование. Чтобы не изменять по отдельности каждую запись и сэкономить время нужно сделать следующие шаги.



Решение:


1) Войти в панель управления хостинга (Direct Admin, CPanel и др.);

2) Далее зайти в PHPMyAdmin, выбрать нужную базу данных и перейти на вкладку “SQL”, где можно выполнять SQL-запросы к базе данных.

3) Ввести в поле один из запросов:


Если нужно массово запретить комментирование во всех постах:


UPDATE wp_posts SET comment_status='close';


Если нужно массово разрешить комментирование во всех постах:


UPDATE wp_posts SET comment_status='open';

Если необходимо разрешить комментирование во всех постах только зарегистрированным посетителям блога:


UPDATE wp_posts SET comment_status='registered_only';


Задача 2. Разрешить или запретить трэкбеки и пинги для всех постов

Решение:

1) Войти в панель управления хостинга (Direct Admin, CPanel и др.);

2) Далее зайти в PHPMyAdmin, выбрать нужную базу данных и перейти на вкладку “SQL”, где можно выполнять SQL-запросы к базе данных.

3) Ввести в поле один из запросов:

Если нужно массово запретить трэкбеки и пинги для всех постов:



UPDATE wp_posts SET ping_status = 'close';

Массово разрешить трэкбеки и пинги для всех постов:


UPDATE wp_posts SET ping_status = 'open';


Задача 3. Массово удалить все посты из блога.

Если вам по каким-то причинам необходимо удалить все записи из блога и записей довольно много, чтобы делать это вручную, то можно вновь обратиться к SQL.


Решение:

1) Войти в панель управления хостинга (Direct Admin, CPanel и др.);

2) Далее зайти в PHPMyAdmin, выбрать нужную базу данных и перейти на вкладку “SQL”, где можно выполнять SQL-запросы к базе данных.

3) Ввести в поле следующий запрос:



DELETE FROM wp_posts WHERE post_type = "post";

Задача 4. Массово удалить все комментарии либо еще не одобренные комментарии.

На одном своем «сайте» я забыл поставить плагин, который борется со спамом. В итоге за неделю спамерами было оставлено около 400 сообщений, которые ожидают одобрения. Естественно, удалять комментарии по одному – это слишком долго и тяжело. Проще вновь воспользоваться SQL – запросом.



Решение:

1) Войти в панель управления хостинга (Direct Admin, CPanel и др.);

2) Далее зайти в PHPMyAdmin, выбрать нужную базу данных и перейти на вкладку “SQL”, где можно выполнять SQL-запросы к базе данных.

3) Ввести в поле один их запросов:

Если необходимо удалить не одобренные комментарии во всех записях:


DELETE from wp_comments WHERE comment_approved = '0';


Если необходимо удалить одобренные комментарии:


DELETE from wp_comments WHERE comment_approved = '1';

Задача 5. Перенести все записи из одной рубрики в другую.


Решение:

Для этой цели уже написан Wordpress плагин Mass Post Manager.

Кроме переноса записей из одной категории в другую (Move all posts to a new category), этот плагин может:

- Удалять все записи из определенной категории (Delete all posts in category)

- Удалять все комментарии во всех записях определенной категории (Remove all comments in all posts from category, where state is)


Задача 6. Перенести или скопировать все записи, рубрики, страницы и комментарии из одного WordPress блога в другой.

Разработчики WordPress позаботились о тех, кому нужно будет перенести все записи или записи любого автора на другой блог.



Решение:

1) Зайти в админку блога, с которого необходимо перенести/скопировать записи (blog.ru/wp-admin)

2) Перейти в «Инструменты» – «Экспорт», выбрать: экспортировать всё или записи только определенного автора и нажать кнопку «Ок». После этого на жесткий диск(в указанное место) будет скопирован файл экспорта.

3) Зайти в админку блога на который необходимо перенести/скопировать записи


4) Перейти в «Инструменты» – «Импорт», далее выбрать:


WordPress Импорт записей, комментариев, произвольных полей, страниц, рубрик и меток из файла экспорта WordPress.


5) Кликнуть “Обзор“, выбрать файл, который был сохранен на пункте 2 и нажать на кнопку «Загрузить и импортировать файл».


Готово.


Задача 7. Перенести WordPress блог на другой домен.

Предположим, нужно изменить имя домена блога. Новый домен уже есть. Теперь нужно перенести все файлы и базу данных блога на новый домен так, чтобы все настройки и данные сохранились.


Решение:

1) Перенести все файлы Wordpress на новый домен.

2) Сделать бэкап(резервное копирование) базы данных блога. Для этого в phpMyAdmin кликнуть на вкладке «Экспорт». Далее поставить галочку напротив «Сохранить как файл» и нажать «Ок». (Если база данных слишком большая желательно упаковать базу в zip, gzip). После этого файл базы данных будет сохранен на диск.


3) Создать новую базу данных MySQL для нового домена. В phpMyAdmin кликнуть на вкладке «Импорт». Выбрать файл, который получили на первом пункте и нажать «Ок». Дальше должна появиться надпись, сообщающая об успешном импорте:


Ваш SQL-запрос был успешно выполнен:

Содержимое файла было импортировано.


4) Изменить файл wp-config.php (изменить имя базы, если требуется – имя пользователя и пароль).

5) Теперь необходимо поменять все старые url в базе данных на новые. Для этого нужно зайти в phpMyAdmin на вкладку SQL и в поле ввода ввести следующие запросы.



*oldsite.com – url старого домена, newsite.com – url нового домена


Заменяется url/адрес блога в настройках:


UPDATE wp_options SET option_value = replace(option_value, 'http://oldsite.com', 'http://newsite.com') WHERE option_name = 'home' OR option_name = 'siteurl';


Заменяется URL (guid) каждого поста:


UPDATE wp_posts SET guid = replace(guid, 'http://oldsite.com','http://newsite.com');


Заменяется url во всех постах:


UPDATE wp_posts SET post_content = replace(post_content, 'http://oldsite.com', 'http://newsite.com');


Готово. Блог перенесен и должен корректно работать на новом домене.


Надеюсь, вам пригодились или пригодятся в будущем данные решения этих задач

Источник http://7bloggers.ru/7-wordpress-zadach-i-ix-reshenie/

Комментариев нет:

Отправить комментарий