Вы не зашли.
Ну хорошо. Покажи как ты допишешь .php в список.
0. Первое правило этого форума - попытаться решить проблему самому и/или попытаться найти решение.
1. Стараться использовать относительно новые версии CMS/плагинов.
Ночные сборки: http://ngcms.ru/files/SVN/
Сливать с github'a: https://github.com/vponomarev/ngcms-core https://github.com/vponomarev/ngcms-plugins/
2. При крупных обновлениях чистить кеш: engine/cache и выставлять правильные chmod'ы на директории.
3. 1 и 2 вопросы - это в чистом виде - http://ngcms.ru/forum/viewtopic.php?id=29 Решение рабочее, если у вас что-то не получается, это значит что вы делаете что-то не так.
4. 3 вопрос - скорее нет, чем да. Есть костыльное старое решение - http://ngcms.ru/forum/viewtopic.php?id=2369
1) В новых версиях NG уже давно стоит запрет на "дописывание" .php в настройках, а также на двойные расширения.
2) Не удивлюсь, если использовался какой-нибудь легкий словарный пароль из 6 букв, который легко брутится.
3) Логи использования shell'a ничем не помогут. Желательно найти так сказать "точку взлома", т.е. откуда все пошло... При наличии логов, это реальная задача.
1. Вы похерили важную инфу:
http://ngcms.ru/forum/viewtopic.php?pid=30259#p30259
2. Самое простое решение:
1) Найти https://github.com/vponomarev/ngcms-plu … #L130-L139
Заменить на:
$xc = xf_configLoad();
$xfData = xf_decode($nrec['xfields']);
$xfTData = unserialize($rec['xfields']);
// Get price
if (pluginGetVariable('basket', 'ntable_price') && isset($xfTData[pluginGetVariable('basket', 'ntable_price')])) {
$price = $xfTData[pluginGetVariable('basket', 'ntable_price')];
} else {
$price = 0;
}
2) В news.full.tpl добавить вывод:
{% for xdata in p.xfields._table.data %}
<tr>
<td> ID:{{ xdata.id }}</td>
<td> Цвет: {{ xdata.field_color }}</td>
<td> цена: {{ xdata.field_prais }}</td>
<td><a href="#" class="add_item_to_basket" data-tblid="{{ xdata.id }}">В корзину</a></td>
</tr>
{% endfor %}
3) В news.full.tpl добавить обработчик:
$(".add_item_to_basket").click(function () {
var count = $("input[name*='count']").val();
var tblid = 0;
tblid = $(this).attr("data-tblid");
rpcBasketRequest('plugin.basket.manage', {'action': 'add', 'ds':51,'id':tblid,'count':count}); return false;
});
Если нужно с каруселями, то брать какой-нибудь jq.carousel и вешать события на prev/next нажатия с обновлением текущей позиции.
в архиве
Во всех темах от вас одно и тоже - "Как сделать?"
А вы не задумывались, что на этот вопрос есть один единственный ответ - "написать код".
Используемая версия: 0.9.3 Release [SVN880]
Версия PHP: 5.2.17если я использую {{plugin_news_feedback}}, то у меня выводятся только {}
http://s017.radikal.ru/i428/1506/a5/2ce39b6c1d28.jpg
если использовать {plugin_news_feedback}, то не выводится ничегоps - файлы шаблона плагина скопировал в основную папку шаблона сайта
Плагин под ночную версию.
Подключать через {{plugin_news_feedback}}
infinity237, после внедрения в модельное окно, плагин не присылает сообщения.
Я не правильно описать суть проблемы ... когда нажимаю "заказать звонок"
окно должно же закрываться ? или хотя бы кнопка пропадать ?
miktor, http://provod.biz.ua/kpp/provod-pvs-3h2_5-ekonom.html "купить в 1 клик"
и переменная {{plugin_news_feedback}} а у тебя {plugin_news_feedback}
Я не знаю, что ты там делаешь и как. Плагин предоставляется "как есть", любые модификации на вашей ответственности.
1. Плагин будет работать только под php < 5.3, под новые версии нужно переписывать. Конкретно session_register удалена из php 5.4, отсюда и ошибка.
2. news_feedback и news_feedback_main - отличаются только тем, что один выводит форму в news.full.tpl, а второй выводит форму в main.tpl
3. Вывод через {{plugin_news_feedback}}
1) EXPLAIN означает, что нужно выполнить EXPLAIN для запросов, которые предположительно вызывают нагрузку, с целью определить действительно ли это так.
2) Без характеристик сервера бесполезно что-либо обсуждать.
Тем более вы втираете какую-то дичь: "постоянно выбивает сервер", что это вообще? Где ошибки? Где логи? На чем основываетесь при выводах?
3) Смена шаблона, не может давать ощутимых различий в нагрузке на сервер, т.к. ядро и плагины грузятся на страницы вне зависимости есть вызовы в шаблонах или нет.
4) news.embed не делает никаких дополнительных запросов к БД. Там всего лишь одно регулярное выражение и парсер ссылок, не думаю, что это имеет какое-либо отношение к делу.
5) Тот запрос что вы привели выполняется в плагине similar.
1. EXPLAIN
2. Характеристики сервера?
3. Число записей в БД в таблицах для тегов?
чё? там рассылка письма при добавлении, только при проставлении галочки. логика такая какая есть.
1) Нужны не access логи, а error.
2) Судя по логам, ты все-таки открываешь страницы и они нормально грузятся.
В логах что?
Поиском научитесь пользоваться...
Уже давно есть:
http://ngcms.ru/forum/viewtopic.php?id=3183
Соберите что ли в одной мессаге то что нужно фиксить...
[0.5][2015-05-25]
+ Добавлен Twitch
1. Фильтр регистронезависимый, поэтому не нужно повторять слова. Чекаются только textarea.
2. Решение под последние версии feedback. В старых версиях много нету, в том числе "plugin_feedback_showScreen", которая выводит сообщения об ошибках.
3. Для 0.0.5 вроде можно так:
$stopArray = file(dirname(__FILE__).'/stop.txt', FILE_IGNORE_NEW_LINES);
if($fInfo['type'] == 'textarea') {
if (check_stop_contains($_REQUEST[$fName], $stopArray) > 0) {
$tpl->template('site.infoblock', $tpath['site.infoblock']);
$tpl->vars('site.infoblock', array( 'vars' => array( 'title' => 'В тексте используются запрещенные слова', 'ptpl_url' => $ptpl_url, 'entries' => 'В тексте используются запрещенные слова')));
$template['vars']['mainblock'] = $tpl->show('site.infoblock');
return 1;
}
}
Пример стопслов и сообщения
1. Создать в корне плагина /engine/plugins/feedback/ файл stop.txt - в нем хранить стопслова по 1 в строке.
2. В feedback.php добавить:
function check_stop_contains($string, array $array) {
$count = 0;
foreach($array as $value) {
if (false !== stripos($string,$value)) {
++$count;
};
}
return $count;
}
3. В feedback.php найти в plugin_feedback_post():
foreach ($fData as $fName => $fInfo) {
Ниже добавить:
$stopArray = file(dirname(__FILE__).'/stop.txt', FILE_IGNORE_NEW_LINES);
if($fInfo['type'] == 'textarea') {
if (check_stop_contains($_REQUEST['fld_'.$fName], $stopArray) > 0) {
// Wrong check stop words (!!!)
plugin_feedback_showScreen(1, "В тексте используются запрещенные слова");
return;
}
}
[0.4][2015-05-16]
+ Добавлен Steam и Twitter
+ Исправлены мелкие баги
Поддержка только TWIG версии.
Нет там твига нигде.
infinity237 пишет:Ну что потомки! Как вы там?
Что так радостно-то? Откуда столько злорадства?-)
Никакого злорадства нет, просто интересуюсь.
infinity237 пишет:не будет в итоге популярнее NG?
Это да, куда уж тут популярнее...
А причем тут другие CMS? Если форк делается из определенной CMS, то и сравнивать популярность форка стоит хотя бы в пределах форков этой CMS.
torg, спасибо за первое конструктивное мнение.
Ага, очень конструктивно... Особенно в тот момент, когда все прогрессивное человечество использует полностью кастомные ЧПУ в роутерах во всех современных CMF.