Как удалить dle
Как удалить повторяющиеся новости в DLE?
Этот вопрос может интересовать многих. Рассмотрим его более подробно.
Очевидно, что дубли нужно искать по заголовку или по латинскому названию (которое используется для ЧПУ в DLE)
В некоторых случаях это может оказаться довольно непростой задачей, если, скажем у нас порядка 1000 повторяющихся статей — согласитесь, искать их в базе и удалять вручную не совсем удобно, тем более в самой админке движка.
Для того, чтобы это сделать, мы и написали простой скрипт, который последовательным запуском из браузера (запуск автоматизирован, с помощью JavaScript) медленно, но верно удаляет дубли .
PHP сценарий следует закачать в корень сайта, где расположен движок DataLife Engine и запустить из браузера. По окончанию удаления дублей скрипт выдаст магическую фразу «COMPLETE !»
Как удалить все новости в dle, сбросив счетчик id новостей?
Как удалить все новости в dle, сбросив счетчик id новостей? Удалить можно через админку, но мне нужно чтоб при добавлении новых новостей счетчик id начинался с 1. Да и удалять вручную лень, новостей 21460. Догадываюсь что через запрос, подскажите знатоки какой запрос. Нужно удалить новости со всеми данными, такими как доп поля и тэги. Картинки удалю через ftp
Ответил: unik
еще можно так
TRUNCATE TABLE `dle_post`
TRUNCATE TABLE `dle_post_extras`
3 комментария
Похожие вопросы
Счетчик «увеличений» картинок
15.12.2012 Гость Общие вопросы по PHP
Кешировать счетчик просмотров новостей
27.12.2012 DaivZ Общие вопросы по PHP
Удалить стандартные модули из движка
09.01.2013 249893 Шаблоны (TPL), Общие вопросы по PHP, MySQL
Как убрать краткое и полное описание из шаблона редактирования новости?
26.04.2013 valentin Шаблоны (TPL), Общие вопросы по PHP
Автоматическое удаление новостей
02.10.2013 voveolegovich Общие вопросы, Общие вопросы по вёрстке, Общие вопросы по PHP
Удалить определенный КЕШ сайта
29.05.2014 ychelovek33 Общие вопросы по PHP, Модули, Ламерские вопросы
Как удалить слово во всех новостях через phpmyadmin
03.08.2014 Heavy1 Общие вопросы по PHP
Как удалить стандартные поля при добавлении новости?
18.04.2015 Гость Общие вопросы по PHP
Как увеличивать счётчик количества новостей пользователя только при добавлении в определённую категорию (см. часть кода)?
21.07.2015 Lashchevsky Общие вопросы по PHP
Как удалить функцию автоматического переноса строк?
18.09.2015 dim Общие вопросы, Общие вопросы по PHP
Последние события
Sinoid | Как сделать вывод статистики общего коли . 18
Sinoid
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 20:33
-
в каждый
пару ключ+значение массива $resultArray[] ? Если примерно как ниже, то не знаю, будут ли такие пары без ошибок влезать в html:
+
>
?>
3. Напиши пжл весь country.php ещё раз со всеми изменениями и с кэшированием.
rewenas | Как сделать вывод статистики общего коли . 18

rewenas
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 18:01
Сразу хочу сказать я в этом деле самоучка. Так что могу что то не так понимать и реализовывать
rewenas | Как сделать вывод статистики общего коли . 18

rewenas
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 17:59
1 Если тебе нужно вывести из $iso_countries массива только ключи то:
$keys = array_keys($iso_countries);
2 В смысле переопределять? Его никто даже не трогал. Или я тебя просто не понимаю. Я всего лишь думал что инпутом у тебя пользователи выбирают страну :в следствие чего у тебя в столбец land таблицы dle_users заноситься двухбуквенный код стран.
Ещё сделал выбор страны проживания, который заносится скриптом в стандартный DLE-тег
Поэтому этим кодом:
if (isset($iso_countries[$country])) { $country_name = $iso_countries[$country]; $tpl->set('{land>', $country_name); > else { $tpl->set('{land>', 'Код страны не найден'); >
Заменил этот двухбуквенный код на название страны
3 Тогда тебе нужно:
$result = $db->query("SELECT land, COUNT(*) AS user_count FROM " . USERPREFIX . "_users WHERE land != '' GROUP BY land"); $resultArray = array(); while ($row = $result->fetch_assoc()) { $country = $row['land']; $user_count = $row['user_count']; $country_counts[$country] = $user_count; > foreach ($country_counts as $country => $user_count) { $resultArray[] = array( 'Страна' => $country, 'Количество пользователей' => $user_count ); >
Результат запроса сохраняется в переменной $result. Далее создается пустой массив для хранения данных $resultArray = array(); И далее внутри цикла foreach в этот массив записывается каждый элемент массива $country_counts в виде массива с ключами страна и количество пользователей. Наверное это то что тебе как раз надо
Sinoid | Как сделать вывод статистики общего коли . 18

Sinoid
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 16:53
rewenas, Спасибо. Но:
1. $iso_countries будет содержать только коды. Названия стран потом будет выводить скрипт.
2. нельзя переопределять. Он мне нужен сам по себе как доп. поле каждого юзера. Туда заносится выбор страны юзером и оттуда отображается страна и флаг рядом с аватаром юзера в его комментах и в профиле.
3. На выходе из PHP мне нужен только сортированный (или нет) массив ненулевых количеств юзеров по каждой стране. Далее этот массив будет обрабатываться скриптом через библиотеку Chart.js , чтобы выводить диаграмму по всем странам. Bootstrap не использую. Про графическое представление списка на странице статов можешь не думать. Лучше сделай комментарии в коде PHP или здесь, что там происходит хотя бы в основной логике алгоритма.
rewenas | Как сделать вывод статистики общего коли . 18

rewenas
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 16:21
1 Создать в engine/data/ конфигурационный файл country-configuration.php с массивом ключей, представляющими коды стран и их значения.
"Андорра", 'AE' => "Объединенные Арабские Эмираты", 'AF' => "Афганистан", // Здесь надо добавить все оставшиеся 245 стран из нужных 249. Их очень много и добавлять очень долго, я не стал 'ZW' => "Зимбабве", ); ?>
2 Создать через систему плагинов или просто так в engine/modules/ файл с названием country.php
include_once ENGINE_DIR . "/data/country-configuration.php"; $tpl->load_template('users-country.tpl'); $tpl->result['users-country'] = dle_cache( "users-country_", $tpl->result['users-country'], true); if (!$tpl->result['users-country']) { $result = $db->query("SELECT land, COUNT(*) AS user_count FROM " . USERPREFIX . "_users WHERE land != '' GROUP BY land"); $country_counts = array(); while( $row = $db->get_row($result) ) { $country = $row['land']; $user_count = $row['user_count']; if (isset($iso_countries[$country])) { $country_name = $iso_countries[$country]; $tpl->set('{land>', $country_name); > else { $tpl->set('{land>', 'Код страны не найден'); > $tpl->set('{user-count>', $user_count); $tpl->compile('users-country'); > $tpl->clear(); create_cache( "users-country_", $tpl->result['users-country'], true ); > echo $tpl->result['users-country']; ?>
3 В папке вашего шаблона создать новый users-country.tpl файл. ( Стили в нем написаны просто для примера, их необходимо перенести в свой CSS файл вашего шаблона. Можно их изменять или добавлять новые, делая оформление на ваш вкус и цвет.)
4 В шаблоне stats.tpl вставить строку подключения {include file=»/engine/modules/country.php»>
rewenas | Как сделать вывод статистики общего коли . 18

rewenas
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 01:51
Не знаю насколько конечно это правильно, но я вижу это в голове у себе немного по другому. Завтра постараюсь реализовать
Sinoid | Как сделать вывод статистики общего коли . 18

Sinoid
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 01:11
rewenas, Понятно, что в статистику нет смысла выводить страны, которые никто не выбрал. Но ожидаю, что за несколько месяцев работы моего глобального научного сайта наберутся юзеры из около 60-80 стран. Всё равно много переменных выводить нужно. Допустим, внутри PHP считаем и формируем теги только тех стран zz, где > 0, заносим их в массив, сортируем по убыванию, а на страницу статистики выдаём список рейтинга из пар zz: . Как это всё реализовать в PHP?
rewenas | Как сделать вывод статистики общего коли . 18

rewenas
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 00:32
Можно например вывести только те страны что пользователи отметили у себя и посчитать в них суммарное количество пользователей. Причем сделать это отдельно подключаемым шаблоном, который отдельной строкой можно подключить в шаблоне статистики.
rewenas | Как сделать вывод статистики общего коли . 18

rewenas
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
Вчера, 00:30
Sinoid | Как сделать вывод статистики общего коли . 18

Sinoid
Как сделать вывод статистики общего количества пользователей по каждому значению доп. поля?
18-11-2023, 21:30
rewenas, А что делать? Есть какое-то другое решение. Ну и что, это лишь временные переменные в виде тегов.
- Sign In with Apple для DLE 14 2
- Модуль парсер ссылки с донора и з… 0
- Модификация аватарок DLE 16.1 27
- Модуль — Парсер статей и интеграц… 0
- Добавить поддержку для … 4
- Как обрезать название статьи 1
- Скрипт автозаполнения полей 3
- Парсер/граббер или конвертация БД 1
- Добавление дополнительного функци… 1
- Реализовать адекватную загрузку а… 4
- Запоминание открытой вкладки и со… 0
- Авторизация пользователей через Т… 0
- GeoIP — показ информации в зависи… 0
- Push-уведомление через OneSignal.… 0
- Giphy for comments (TinyMCE) 4
- Множественные опросы — модуль Mul… 0
- Расширенные закладки 0
- Расширение возможностей аккаунта … 0
- ChatGPT Driver 2
- Country Filter 0
Как удалить все новости из категории в DLE?
Здравствуйте! Меня интересует один вопросик. У меня есть готовый дамп базы данных MySQL на движке DLE. В данной базе есть много категорий, мне не нужных. Новостей очень много, около 47 000. Хочу как нибудь удалить ненужные категории вместе с новостями. Подскажите, как это сделать. И реально ли это сделать вообще? Метод удаления по 50 новостей — мне не очень подходит. Удалить вручную 40 000 из 47 000 я вряд ли осилю. Спасибо за ответ.
- eTarget 2011:Панельная дискуссия «Стратегия и планирование рекламной кампании в интернете»
- eTarget 2011: Круглый стол «Реклама в онлайн-видео»
- Могут ли «плохие» входящие ссылки привести к ухудшению ранжирования?
28 июня 2011, 14:34
Вы php знаете? В папке engine/inc есть файл massactions.php.
elseif( $action == «do_mass_delete» )
начинается рассказ про массовое удаление новостей. Если немножко подкрутить и отдать массиву $selected_news id всех новостей из заданной категории, то можно все их корректно удалить.
На сайте с 03.02.2009
28 июня 2011, 14:51
amilo-ua:
Хочу как нибудь удалить ненужные категории вместе с новостями.
А если в админпанели полностью удалить не нужную категорию?
На сайте с 12.04.2011
28 июня 2011, 15:26
Freon:
Вы php знаете? В папке engine/inc есть файл massactions.php.
Со строки
elseif( $action == «do_mass_delete» )
начинается рассказ про массовое удаление новостей. Если немножко подкрутить и отдать массиву $selected_news id всех новостей из заданной категории, то можно все их корректно удалить.
Мне надо удалить все категории вместе с новостями кроме одной. Реально ли так?
amilo-ua добавил 28.06.2011 в 19:29
e16r:
А если в админпанели полностью удалить не нужную категорию?
В Админке есть только такой вариант как удалить категорию, и сразу перенести новости в другую категорию. Что-то похожее на перенос новостей из одной категории в другую.
На сайте с 02.04.2009
28 июня 2011, 15:55
DELETE FROM dle_post WHERE условия
находите по каким критериям удалять и вперед
28 июня 2011, 16:03
а) убеждаемся, что есть резервная копия;)
б) делаем удалятор:
//удалятор_начало
$cats = ‘1,2,3’;//список категорий, из которых надо всё удалить
include_once(‘engine/api/api.class.php’);
$news = $dle_api->take_news($cats, ‘id’);
foreach($news as $n) <
$ids[] = $n[‘id’];
>
$selected_news = $ids;
//удалятор_конец
Вставляем его в файл engine/inc/massactions.php после строки
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Удаление новостей
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
elseif( $action == "do_mass_delete" )
foreach ( $selected_news as $id )
У меня это где-то 333-я строка.
После этого идём в админку и посылаем комманду на удаление нескольких любых новостей. Вместо них удалятор должен удалить то, что он достанет из базы. А из базы он достанет новости из категорий:
$cats = '1,2,3';//список категорий, из которых надо всё удалить
Так что позаботьтесь о том, чтобы в этом списке оказались нужные Вам категории. Сами категории потом руками удаляются из админки. И удалятор, разумеется, тоже надо убрать из файла massactions.php, чтобы сделать "как было".
Всё, радуемся пустой базе;)
На сайте с 12.04.2011
29 июня 2011, 11:03
Freon:
Всё реально.:)
Последовательность действий:
а) убеждаемся, что есть резервная копия;)
б) делаем удалятор:
//удалятор_начало
$cats = '1,2,3';//список категорий, из которых надо всё удалить
include_once('engine/api/api.class.php');
$news = $dle_api->take_news($cats, 'id');
foreach($news as $n) <
$ids[] = $n['id'];
>
$selected_news = $ids;
//удалятор_конец
Вставляем его в файл engine/inc/massactions.php после строки
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Удаление новостей
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
elseif( $action == "do_mass_delete" )
foreach ( $selected_news as $id )
У меня это где-то 333-я строка.
После этого идём в админку и посылаем комманду на удаление нескольких любых новостей. Вместо них удалятор должен удалить то, что он достанет из базы. А из базы он достанет новости из категорий:
$cats = '1,2,3';//список категорий, из которых надо всё удалить
Так что позаботьтесь о том, чтобы в этом списке оказались нужные Вам категории. Сами категории потом руками удаляются из админки. И удалятор, разумеется, тоже надо убрать из файла massactions.php, чтобы сделать "как было".
Всё, радуемся пустой базе;)
Сделал все как написано - эффекта почему-то я не увидел. Наверное руки кривые. 🙁
Удаление информации из Google
Правила Google Поиска в отношении контента и использования продуктов применяются по всему миру. Если вы хотите удалить контент, посвященный вам или лицу, которое вы представляете, ознакомьтесь с приведенными ниже правилами в отношении контента личного характера, чтобы узнать, соответствует ли он требованиям к удалению. Вы можете запросить удаление данных, следуя инструкциям, или ответить на вопросы в разделе Справочного центра Сообщить о проблеме. Мы проверим контент, ставший предметом жалобы, и определим, действительно ли он должен быть удален из результатов поиска Google.
- Как удалить из результатов поиска Google фотографии и видео сексуального или интимного характера
- Как удалить из результатов поиска Google поддельную порнографию, созданную без согласия мнимых участников
- Как удалить из результатов поиска Google порнографию, ошибочно связанную со мной или моим именем
- Как удалить из результатов поиска Google информацию, позволяющую идентифицировать личность или раскрытую злонамеренно
- Как удалить из результатов поиска Google материалы о моей личной жизни, которые размещены на сайтах, требующих плату за удаление данных
- Как удалить из результатов поиска Google изображения несовершеннолетних(не материалы для взрослых)
Как пожаловаться на контент с наготой или материалами сексуального характера, в котором присутствуют лица младше 18 лет. Если вы обнаружите такой контент, сайт с ним или ссылку на него, то можете сообщить об этом в государственные органы и компетентные организации по всему миру. Подробнее о том, как пожаловаться на изображение несовершеннолетних в сексуальном контексте…
Если владелец удалил контент с сайта, вскоре эта информация также исчезнет из результатов поиска, поскольку мы регулярно обновляем данные. Однако вы можете отправить запрос на обновление устаревшего контента из Google Поиска.
Если материалы не могут быть удалены согласно перечисленным выше правилам в отношении контента личного характера, воспользуйтесь другими вариантами или посетите Справочный центр по правовым вопросам.
Контент может быть удален по причинам юридического характера, включая, помимо прочего:
- нарушение авторских прав;
- нарушение прав на товарные знаки;
- распоряжение суда.
Если вы фигурируете в контенте для взрослых, распространяемом без вашего разрешения или способами, на которые вы не давали согласия, обратитесь в службу поддержки.
Предыдущая запись
