Вы не зашли.
Добрый день коллеги. Перевожу сайт на HTTPS. В тексте статьи и в блоке доп. полей плагина xfields есть абсолютные ссылки на файлы картинок, казалось бы, ничего сложного, скачиваем базу, с помощью Notepad++ делаем замену http://www на https://, заливаем обратно и все норм, но, возникла проблема в изменой базе у статей пропадают все доп. поля. Их нет ни в админке ни на страницах сайта, это не ошибка они просто не выводятся, их нет в коде страницы.
Делал разные варианты, выяснил следующее, проблема возникает только при замене в доп. полях, дело точно не в кодировке, так как если заменить только в тексте то все норм.
Доп. поля это: это текстовый блок, в котором содержится ссылки (картика+текст) на похожие статьи. Идентификатор поля: article в едином хранилище. Есть " Поддержка HTML/JavaScript в поле" и " Отключить автоформатирование (переводы строк)".
Что делал: в Notepad++ делал замену http://www на https://, через "Заменить все" – это все, больше ничего. В итоге, заметил, что после замены изменяется запись в столбце xfields (Таблица: ng_news) в phpMyAdmin было так:
SER|a:5:{s:3:"alt";s:45:"Разновидности ухода за стопами и пальцами ног";s:3:"img";s:18:"vidy_pedikyura.jpg";s:7:"article";s:5678:"<div class="sep_new"> здесь блок …
Стало так:
SER|a:5:{s:3:"img";s:18:"vidy_pedikyura.jpg";s:3:"alt";s:45:"Разновидности ухода за стопами и пальцами ног";s:7:"article";s:5670:"<div class="sep_new"> здесь блок …
Я не знаю, влияет ли это на исчезновение доп. полей, но никаких других изменений я не увидел.
Пробовал сделать "Персональное поле в БД" это не помогло.
Пожалуйста, если кто-то знает, в чем дело помогите решить проблему.
Не в сети
В чем проблема. У меня сайт на https
Я в htaccess прописал правило редиректа с http на https и все работает.
# Редиректы ссылок на https
RewriteCond %{HTTPS} =off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Если нужна помощь обращайтесь поможем вместе с сыном. Он у меня студент программист. В этом деле шарит на все 100. У меня ngcms - последняя версия на UTF-8 и много чего в ней переделано и доработано. И все работает на отлично.
Не в сети
В чем проблема. У меня сайт на https
Я в htaccess прописал правило редиректа с http на https и все работает.
# Редиректы ссылок на https
RewriteCond %{HTTPS} =off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [QSA,L]
Если нужна помощь обращайтесь поможем вместе с сыном. Он у меня студент программист. В этом деле шарит на все 100. У меня ngcms - последняя версия на UTF-8 и много чего в ней переделано и доработано. И все работает на отлично.
Я достаточно подробно описал проблему, редирект здесь не причем, даже слова такого у меня нет. Пропадают доп. поля xfields при замене в БД.
Версия моего движка 0.9.5 Release + GIT 20170301 про это забыл написать.
Изменено Klim (2018-07-09 02:05:46)
Не в сети
А непосредственно в PhpMyAdmin не пробывали выполнить запрос?
UPDATE `ng_news` SET xfields = REPLACE (xfields, 'http://site.ru', 'https://site.ru') WHERE 1
Не пробовал, честно говоря опасаюсь прямо в базе делать замену. Но, спасибо, это дельный совет, все-таки придется попробовать если других вариантов не будет.
Не в сети
А если полностью в таблице `ng_news` такую замену сделать, то как должен выглядеть запрос?
Или надо два запроса сделать в графе content и xfields? Я поэтому и опасаюсь, что не знаю как с этим работать.
Изменено Klim (2018-07-09 12:52:07)
Не в сети
Ссылки только на картинки
SER|a:5:{s:3:"img";s:18:"vidy_pedikyura.jpg";s:3:"alt";s:45:"Разновидности ухода за стопами и пальцами ног";s:7:"article";s:5670:"<div class="sep_new">
<div class="img_new"><a href="/kak-snyat-razdrazhenie-na-nogah-posle-britya.html"><img src="http://www.сайт.ru/uploads/images/default/thumb/razdrazhenie_posle.jpg" alt="" /></a></div>
<div class="info_new"><a href="/kak-snyat-razdrazhenie-na-nogah-posle.html">Название статьи</a>
<div class="desc_new"><p class="paragraph">краткое описание стаьи</p></div>
</div>
Изменено Klim (2018-07-09 13:07:19)
Не в сети
Ну это уже измененное значение в поле, потому что неожиданно обрывается на </div>, а должно закрываться }, либо вы не полностью его скопировали из ячейки.
Бэкап сделайте и выполняйте два запроса через phpMyAdmin в таблице ng_news по content и xfields
Изменено rusiq (2018-07-09 13:13:14)
Не в сети
Да, это не полный, там блоки повторяются, вот конец:
<div class="c_b"></div>
</div>";s:8:"seotitle";s:50:"Виды педикюра: какой выбрать, особенности, отличия";s:8:"contents";s:322:;}
Не в сети
Без разницы, вот так можно одним
UPDATE `ng_news` SET content = REPLACE (content, 'http://site.ru', 'https://site.ru');
UPDATE `ng_news` SET xfields = REPLACE (xfields, 'http://site.ru', 'https://site.ru');
Изменено rusiq (2018-07-09 13:17:33)
Не в сети
Ну да плагин есть, но там только по content замена https://github.com/vponomarev/ngcms-plugins/tree/master/ireplace
Да, спасибо, я знаю этот плагин, но помню, Виталий писал что пользоваться им очень осторожно.
Не в сети
Сделал замену в графе xfields этим запросом:
UPDATE `ng_news` SET xfields = REPLACE (xfields, 'http://site.ru', 'https://site.ru') WHERE 1
Доп. поля после замены опять пропали в админ панели и в статьях. В статьях где нет блока с ссылками поля присутствуют и в панели и в статьях, при добавлении новой статьи доп. поля в админ панели есть.
Замена произошла, с этим все нормально, но заметил разницу до замены блоки имели перевод строки:
SER|a:5:{s:3:"img";s:18:"vidy_pedikyura.jpg";s:3:"alt";s:45:"Разновидности ухода за стопами и пальцами ног";s:7:"article";s:5670:"<div class="sep_new">
<div class="img_new"><a href="/kak-snyat-razdrazhenie-na-nogah-posle-britya.html"><img src="http://www.сайт.ru/uploads/images/default/thumb/razdrazhenie_posle.jpg" alt="" /></a></div>
<div class="info_new"><a href="/kak-snyat-razdrazhenie-na-nogah-posle.html">Название статьи</a>
<div class="desc_new"><p class="paragraph">краткое описание стаьи</p></div>
</div>……..
После замены, блоки стали в одну строчку:
SER|a:5:{s:3:"img";s:18:"vidy_pedikyura.jpg";s:3:"alt";s:45:"Разновидности ухода за стопами и пальцами ног";s:7:"article";s:5670:"<div class="sep_new"><div class="img_new"><a href="/kak-snyat-razdrazhenie-na-nogah-posle-britya.html"><img src="https://www.сайт.ru/uploads/images/default/thumb/razdrazhenie_posle.jpg" alt="" /></a></div><div class="info_new"><a href="/kak-snyat-razdrazhenie-na-nogah-posle.html">Название статьи</a><div class="desc_new"><p class="paragraph">краткое описание стаьи</p></div></div>……..
Возможно, в этом проблема, что скажите коллеги? Как все это решить?
Изменено Klim (2018-07-09 17:38:41)
Не в сети
Специально систему установил, стало интересно. Создал доп.поле как вы указали, выполнил запрос типа у меня папки поменялись с thumb на small, результат
Затронута 1 строка. (Запрос занял 0,0000 сек.)
UPDATE `ng_news` SET xfields = REPLACE (xfields, 'http://localhost/ng/uploads/images/default/thumb/', 'http://localhost/ng/uploads/images/default/small/') WHERE 1
Вывод дополнительного поля [xfield_article][xvalue_article][/xfield_article].
При этом после запроса не в одну строку значения. А вот, если вручную в поле ковырять, то да, переносы строк исчезают и это поле отовсюду пропадает (ни при выводе, ни при редактировании новости его нет).
Изменено rusiq (2018-07-09 21:44:13)
Не в сети
Версия моего движка 0.9.5 Release + GIT 20170301
Плагин xfields стандартный версия 0.26
Я сейчас вывел отладочную информацию через {{ debugContext(0) }} в шаблон news.full, там поля выводятся. Думаю, это Твиг не обрабатывает поля
Изменено Klim (2018-07-09 22:13:22)
Не в сети