Вы не зашли.
кавычки тут лишние, т.к. нам нужен возврат функции
Да ладно?
rusiq, написано что? Что изящнее отключить автоформатирование, чем закомментировать описанный выше код? Согласен.
Но это всё похоже на троллинг, от чего у меня должно уже было знатно подгореть. Но этого не случится, так как я из этого уже вырос.
И на всякий случай, таки повторю заголовок этой темы: "Что это: return "phphighlight('" . $match[0] . "')"; ?"
Кстати. А почему в том топике, в котором всё написано, вдруг $match[1] ?
rusiq, отключение автоформатирования, даёт лишь возможность призму, правильно пронумеровать строки на странице новости. Кстати спасибо за этот совет, а то скриптом маркировалась только первая строка, и это всё из-за <br />. Отключил автоформатирование в настройках вообще. Но ответ на вопрос из первого топика, я так и не получил
irbees2008, конечно, этот ckeditor довольно крут. Я попробовал, посмотрел. Но я не буду искать лёгких путей, и попробую уж закончить начатое. Да и в принципах тончайшей настройки ckeditor, мне так сходу не разобраться. Новый TinyMCE довольно неплох, по сравнению с его третьей версией, которая добавляла к каждому параграфу стили
style="margin: 0px; padding: 0px; color: #000000; font-family: Verdana; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 18.46666717529297px; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"
Особенно забавно, выглядит line-height: 18.46666717529297px;, я просто валяюсь. Новая версия из коробки, таких приколов не имеет.
Не по теме, но как я буду добавлять изображения без платного Image Manager - пока неизвестно. Если вы знаете где достать аналог - подскажите, я просто ещё не дошёл до этого момента, застряв на Code Sample Plugin
И кстати,
попробуйhttps://ngcmshak.ru/nastroika-plaginov- … vkami.html там плагин с визуальными редакторами, тебе нужен ckeditor, у меня с ним проблем не было
Нет подсветки кода - нет проблем?
Это нерабочий вариант. Потому-что мне нужно передать классы для визуализатора Prism.
Плюс, нужно включать поддержку bb-кодов в TinyMCE внутри Code sample plugin. Всё это не представляется возможным. Суть я понял, но в общем, ваш вариант - здесь не работает.
Задача заключается в том, чтобы блок с кодом 100% одинаково отображался и на сайте, и при редактировании новости в визуальном редакторе TinyMCE в админке.
CMS заменит bb-код, можно даже передачу класса в тег pre и code (для Prism нужен code внутри pre, либо с помощью плагинов для него, можно использовать <script type="text/plain"></script>, но это пока у меня не получилось сделать, да и смысла не вижу, как и не вижу смысла в том, чтобы использовать в тексте новости bb-код code, который преобразуется в <script ...>, который преобразуется призмом в <pre class="..."><code><code></pre>уже на JS) организовать, но как заставить Prism в админке, подсвечивать, например, такой код (пробел в bb-теге поставил, чтобы движок форума не ругался):
[code class="line-numbers language-css"]body {... color:#666; ...}[/code ]
И как заставить TinyMCE в админке, не оборачивать вышеприведённый пример кода в bb-коде, в параграф <p>?
И вот зачем это всё?
Короче, визуализатору в админке надо так, и на сайте должно быть так:
<pre class="line-numbers language-css"><code>body {
background-color: #fff;
margin: 0;
padding: 0;
height: auto !important;
min-height: 100%;
font: normal 11px/14px Tahoma, sans-serif;
color: #666;
}
</code></pre>
Здравствуйте. С новым годом всех!
Решил посмотреть, как можно подключить TinyMCE 5 так, чтобы он ещё и работал. И меня сходу озадачило то, что CMS в новостях, оборачивает содержимое тегов <pre> в phphighlight('<code></code>'), и это так и отправляется в браузер. Версия движка последняя - 0.9.5.
В файле engine/includes/classes/parse.class.php, строка 479.
Для чего нужна эта строка?
Что вообще сделать с блоком
$content = preg_replace_callback(
"/<code>(.*?)<\/code>/s",
function ($match) {
return "phphighlight('" . $match[0] . "')";
},
$content
);
чтобы не создать угрозу безопасности? Я его пока закомментировал.
UPD. Точнее не оборачивает, а заменяет тег <code> внутри тега <pre>. Нужно разобраться, зачем он там вообще нужен. Но тем не менее, replace довольно загадочный.
Это понятно. Конечно, плагин нужно переписать вручную заново, и тема антиспама - всегда актуальна и очень важна. Если открытые комментарии, и сайт попал в какую-то базу - каждый день сюрпризов жди, очень много спама, на разных языках даже.
Текущий вариант плагина, не просто не изящен, вообще удивительно - как он вообще заработал в таком виде
Просто удивился, что никто ничего не писал про это. Не работает - и забросили.
Сильно не вникал в API Akismet но, видимо, функции submitSpam() и submitHam(), нужны для обмена с сервером Akismet, для обновления логики фильтрации спама, и статистики. Т.е. в админке сайта, должен быть функционал модерации комментариев. Иначе, я просто паразитирую, используя опыт других участников этой системы, и не отправляя своих данных о спаме и не спаме, и рискуя потерять некоторых посетителей, которые не смогли отправить комментарий, или наоборот - запостили в комментарии к новости какой-то шлак. Во втором случае - помогает плагин Filter.
Но это так, просто рассуждения
Странно, что за несколько лет, так никто ничего сюда не написал. Будто у меня у одного всё спамом заваливают
Во-первых, ключ Akismet, на данный момент - бесплатный.
Во-вторых, изначально, у меня этот плагин был нерабочим. Всегда получал Akismet key is invalid!
Стал разбираться - дошёл до antispam.php. Так вот, там в pluginGetVariable(), первым параметром идет "comments_antispam", а плагин называется - "comments_akismet".
Либо папку переименовать(и все пути к ней), либо просто в antispam.php на строке 10, 11 и 23 - поменять comments_antispam на comments_akismet, и плагин заработает.
Другой вопрос, в Akismet.class.php, функции submitSpam() и submitHam() - вообще вызываются откуда-нибудь?
И зачем в этом же файле, в функции isCommentSpam(), вот эти строки:
if($response[1] == 'invalid' && !$this->isKeyValid()) {
throw new exception('The Wordpress API key passed to the Akismet constructor is invalid. Please obtain a valid one from http://wordpress.com/api-keys/');
}
Я их закомментировал. Ведь валидность ключа проверяется при вызове самой isCommentSpam(), так зачем еще раз это делать? Да и вот в этих throw-конструкциях - я вообще не шарю.
Может, я еще чего-то не понимаю?
Однако, антиспам теперь работает, ключ получил бесплатно, доволен.
Есть и бесплатные хостинги с курлом и сокетами, но зато у меня домен в зоне .ru входит в стоимость и оформлен на меня
Тут выход один - доплатить еще ~800 рублей, и всё будет, и места под сайты в 3 раза больше станет. Или сменить хостера... А пока я просто отключил плагин, и подредактировал usermenu и profile.
До лучших времен, оно пока не так нужно, но не помешало бы, удобно ведь)
З.Ы. шаблон auth_loginza: "запиши пароль на бумажке и съешь ее" - убило
Был крайне огорчен, когда после тестирования под денвером и переноса скриптов на сервер, плагин при попытках привязать любой аккаунт, выдавал что мол он уже привязан. А при попытке авторизоваться/зарегистрироваться через любой сервис, даже не привязанный, всё время авторизовывал меня в учетной записи администратора, что ненормально как-то...
Открыл код плагина - понял что для его работы нежен CURL или поддержка file_get_contents().
Хостинг - prosto.1gb.ru.
А жаль, хотелось бы прикрутить этот плагин, но и на хостинге за 780 рублей в год мне как-то нормально сидится, и до этого момента мне его хватало с головой
И где теперь достать плагин advlinkexternal?)
Все ссылки битые!
Ничего не могу понять.. Нажимаю кнопку "Удалить", под формой редактирования статической страницы, появляется алерт с подтверждением, всё как положено.. Но после нажатия кнопки "Ok", я получаю "Ошибка: Некорректный ключ безопасности. Данный ключ динамически генерируется для всех страниц и обязателен для проведения любых операций. Возможно, у вас повреждены файлы шаблонов."
Из SVN обновлялся до 1050, правда еще вносил кучу мелких изменений в код под свои нужды, и вот теперь не пойму в чем может быть причина...
Эх, беда... В комментариях к новостям уже начинаются посты типа "ответь пожалуйста в личку на таком-то сайте"!
Надо бы как-то дать возможность юзеру (даже незарегистрированному) подписаться на новые комментарии.. Уже очень надо
И все-таки лучше на e-mail, так юзабильнее. Просто некоторые пользователи даже не знают что такое RSS, а мыло есть практически у всех.
Виталий, спасибо что принял меры!
А то я уже чуть было не высказался по поводу всего сказанного в мой адрес... Еще за карму обидно - я буду "гореть в аду"!
Этот неадекватный товарищ походу имел ввиду "WebSin Синонимайзер для сайтов на движке DLE", это не скрипт а программа, и стоит она около 1000 рублей.
Ну грех мне было не вмешаться в вашу жаркую дискуссию!
websin-profi, я тебя прошу - не страдай ерундой, просто навсегда забудь адрес этого форума, и не пользуйся NGCMS - раз тебе что-то не нравится!
Ну сколько можно троллить? Дам конвертор - ты его не получишь, дам конвертор - ты его не получишь, дам конвертор - ты его не получишь, достал ты уже! Да запомни уже наконец: тут [font=verdana]НИКОМУ[/font] твой "конвертор" [font=verdana]НЕ НУЖЕН[/font]!
Насчет индексации, у меня лично никаких проблем нет - сайт на NGCMS индексируется нормально, яша с гуглем проходят по сайту регулярно, с ПС трафик идет как положено. Так что - тут ты опять-же не прав. И не доказывай мне обратное!
З.Ы. Бан уже отменили?
Knopik, я тоже так думаю. Но сам я сделать не смогу. Поэтому, прошу - подшаманьте кто-нибудь плагин RSS экспорт, пожалуйста!
Чтобы можно было забирать через RSS, последние X комментариев к определенной новости (например по ссылке site.ru/категория/новость.xml).
UP?
И мне кажется что все-таки лучше и проще через RSS. Так ИМХО, будет меньше проблем с отправкой писем (ограничением количества отправленных писем в сутки на некоторых хостингах, случайного попадания писем в папку "Спам" и т.д.).
Вот мне, например, так делать удобно. Допустим я искал что-то в сети, и нашел какую-нибудь статью в каком-нибудь блоге, и запостил автору этой статьи комментарий с вопросом касающимся его статьи, и мне каким-то образом надо периодически проверять - не ответил ли мне кто-нибудь.
А как это сделать без подписки? Периодически заходить на сайт?
Не стал создавать новую тему, лучше напишу сюда...
А на данный момент, не существует такого функционала - подписка на новые комментарии к определенной новости по e-mail, или хотя бы RSS?
Ну это да
Просто legenda говорит, что включение выполнения PHP в шаблонах, путем правки index.php - это не страшно, в плане безопасности.
Да ну... Никому не советую так делать, лучше засунуть PHP-код в блок плагина ADS manager pro и вставлять этот блок там где это нужно, вот я так сделал - и всё работает!
Иначе какой-нибудь юзер зарегается, добавит новость с PHP-кодом, сольет БД со всей инфой, и еще блок сапы разместит в новости
Вот я тоже разрешил выполнение PHP в шаблонах, появилась у меня такая необходимость...
Но ради глума я создал новость, и в ее текст добавил:
<?php echo "PHP выполняется - делай с сайтом что хочешь! =)"; ?>
и увидел этот текст в новости... А PHP и в новостях выполняется?!
Мне то без разницы, никто кроме меня новости на сайт добавить не сможет - регистрация отключена, но всё равно мне такие шняги не нравятся.
Проще заюзать ads_pro..
Да, вот так работает, кодировка правильная и HTML отображается.
А настройки "Имя с которого сайт будет отправлять письма" и "E-mail адрес с которого сайт будет отправлять письма" я так и не могу найти в админке...
Теперь за отправку email'ов отвечает отдельная библиотека.
Окей, заменил файлы на работающем двиге из SVN 961 (и в т.ч. c 881 по 964, за исключением некоторых ненужных плагинов, и выполнил запрос в БД из 938 SVN'а). Вроде всё работает.
Но вот вопрос.. Где в админке находятся настройки e-mail (не могу найти), и почему все письма приходят в текстовом формате (не HTML)?
Vitaly, проверь пожалуйста! Может я где накосячил при обновлении файлов?
Кстати, сохранял без BOM, (Notepad++)...
Ну да ладно. Спасибо ROZARD, следующий раз учту.
Я хотел вынести BB-коды из bbcodes.tpl в подключаемый JS файл, для ускорения загрузки страницы.
Но у меня появилась мысль, создать не *.js, а PHP-файл, для выполнения некоторых шняг на стороне сервера. Попробовал, подключил - JavaScript в браузере не выполняется.
И вот мне интересно, почему даже пустой PHP-файл, находящийся в папке /templates/default/js/, выдает в браузер текст: п»ї ?
Что это?
UPD. Реализовал то что было нужно без PHP, в JS-файле.
И загадочные три символа пропали. Мистика какая-то...
Извиняюсь, если эта тема уже обсуждалась, или я что-то опять не так нашаманил..
Плагин feedback 0.13 на NGCMS 0.9.3, некорректно отправлял уведомления о новом сообщении в форму.
Заголовок subject отображался иероглифами, в koi8-r, а надо Windows-1251. (Хостинг - prosto.1gb.ru)
Я залез в functions.inc.php, и перед:
@mail($to, $subject, $message, $headers);
Добавил:
$subject = '=?Windows-1251?B?'.base64_encode($subject).'?=';
И теперь всё корректно отображается (Почтовый клиент - Opera).
Старая заброшенная ветка форума... А вопрос решен?
Я так и не пойму, зачем в новостях и уж тем более в комментариях, нужны относительные ссылки?
Если ввести [ url ]yandex.ru[ /url ], то в итоге получается ссылка - http://domain.ru/category/yandex.ru, а мне это совершенно не нужно.
Как запретить относительные ссылки в новостях и комментариях?