Доброго времени суток уважаемые форумчане!
Имеется около 2000 статей на сайте, которым нужно изменить дату публикации. По одной статье изменять - это очень долго.Если какой-нибудь автоматический способ.Заранее благодарен
Как массово именить дату публикации постов Wordpress
(Ответов: 11, Просмотров: 6184)
- 02.09.2012 14:36Дипломник


- Регистрация: 09.04.2011
- Сообщений: 122
- Репутация: 12
- 02.09.2012 17:46
Готовое решение вряд ли есть, можно написать php скрипт и запрос на обновление базы данных.
- 02.09.2012 17:49Гуру

- Регистрация: 24.04.2011
- Сообщений: 801
- Репутация: 126
А даты как надо изменить? Все одинаково?
Если да, то можно через БДСпасибо сказали:
Dudemancool(04.09.2012), - 04.09.2012 00:00Дипломник


- Регистрация: 09.04.2011
- Сообщений: 122
- Репутация: 12
xilgiz,можно и одинаково.Как через БД?
- 04.09.2012 00:13
Dudemancool, если разных дат немного, то выгрузить базу в файл, заменить в файле старые даты на новые, загрузить измененную базу обратно.
в phpMyAdmin экспорт, а потом измененное импортировать обратноПоследний раз редактировалось Vasko; 04.09.2012 в 00:17.
Спасибо сказали:
Dudemancool(04.09.2012), - 04.09.2012 00:51Дипломник

- Регистрация: 13.02.2012
- Сообщений: 113
- Репутация: 13
sql запросик сделать разве нельзя? Чтобы СУБД изменение сделало?
- 08.09.2012 00:12
Вроде бы даже плагин специальный есть. К сожалению, забыл как он называется, но на официальном сайте ВП можно найти.
- 03.12.2015 18:27
Блин щас таже проблема, кто нибудь подскажет плагин? или решение?
P.S: да да да я некротопикфил, но проблема есть и она не решена!
- 06.12.2015 00:07
NukeKuper,
Внимание выполнять на свой страх и риск, я ответственности не несу за последствия. Лучше сделать бекап перед выполнение этого SQL скрипта
PHP код:wp_posts - название таблицы. Если вы указывали префикс иной от wp то имя этой таблицы будет другое. Измените время поста на свое в соблюдая формат.UPDATE `wp_posts` SET `post_date` = '2015-12-05 21:00:00', `post_date_gmt` = '2015-12-05 21:00:00', `post_modified` = '2015-12-05 21:00:00', `post_modified_gmt` = '2015-12-05 21:00:00' WHERE `post_type` = 'post';
- 06.12.2015 09:56
Пользуюсь таким способом. создаём файл php, перед этим правим всего два числа, закидываем в корень сайта и обращаемся к нему через браузер. Даты постов изменены. Ни разу не запорол этим способом БД, единственное что посты раскидает в том же порядке что и идут и изменять по количеству/дням нельзя.
PHP код:<?php
require_once(dirname(__FILE__).'/wp-load.php');
set_time_limit(300);
$wpdb->show_errors();
// диапазон раскидывания постов:
// от (текущая_дата - $days_minus дней)
// до (текущая дата + $days_plus дней)
$days_minus = 30;
$days_plus = 90;
// дальше магия
$sql = 'SELECT `ID` FROM `'.$wpdb->prefix.'posts`
WHERE
`post_type`="post"
AND
(`post_status`="future" OR `post_status`="publish")
';
if ( $posts = $wpdb->get_results($sql) )
{
// Меняем дату у постов
foreach ($posts as $post)
{
$sql = 'UPDATE `'.$wpdb->prefix.'posts` SET
`post_date`= DATE_ADD(
FROM_DAYS( FLOOR( TO_DAYS(NOW())
+ (RAND()*'.$days_plus.')
- (RAND()*'.$days_minus.')
)
),
INTERVAL (FLOOR(RAND()*86400)) SECOND
),
`post_date_gmt`=`post_date`,
`post_modified`=`post_date`,
`post_modified_gmt`=`post_date`
WHERE
`id`=%d
LIMIT 1
';
$psql = $wpdb->prepare($sql, $post->ID);
$wpdb->query($psql);
}
// Обновляем статусы постов
$sql = 'UPDATE `'.$wpdb->prefix.'posts` SET
`post_status`="future"
WHERE
`post_date`>NOW()
AND
`post_type`="post"
AND
(`post_status`="future" OR `post_status`="publish")
';
$wpdb->query($sql);
$sql = 'UPDATE `'.$wpdb->prefix.'posts` SET
`post_status`="publish"
WHERE
`post_date`<=NOW()
AND
`post_type`="post"
AND
(`post_status`="future" OR `post_status`="publish")
';
$wpdb->query($sql);
}
die('Complete');
Второй способ который юзаю - софтина TextKit, там всё проще, можно менять всё как душе угодно и есть бесплатная версия, которой в вашем случае более чем хватит.Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 1 сообщение(ий)):У вас нет прав чтобы видеть скрытый текст, содержащийся здесь.Спасибо сказали:
ESET(19.03.2016),
Похожие темы
| Темы | Раздел | Ответов | Последний пост |
|---|---|---|---|
Каким образом можно массово установить wordpress | WordPress | 5 | 22.04.2012 17:04 |
Нужно мнение СЕО на счет постов и категорий в wordpress | Софт, скрипты, сервисы | 3 | 14.02.2012 20:49 |
Блок популярных постов для WordPress. | Софт, скрипты, сервисы | 2 | 26.09.2011 01:22 |
Вывод новостей на ненаступившую дату. DLE | Web программирование | 8 | 13.09.2011 12:57 |
Слайдер постов WordPress | Блоги | 25 | 16.09.2009 22:40 |





