MODX

Как установить PHP 7.2 на Ubuntu 16.04

18 ноября 2018, 18:18

Мануал по быстрой и безболезненной установки PHP 7.2 на Ubuntu 16.04. PHP (Hypertext Preprocessor) – это язык сценариев на стороне сервера с открытым исходным кодом, предназначенный в основном для создания динамических интерактивных веб-сайтов. PHP является одним из самых популярных языков и свободно доступен для перераспределения и модификаций. PHP можно запускать практически на любом веб-сервере (например, Nginx, Apache) и на каждой платформе ОС (Linux, Mac OS, Windows). PHP 7.2 был официально выпущен в прошлом году. В последней версии PHP 7.2 есть новые и улучшенные функции и функции, которые позволят разработчикам лучше писать код.
Требования:
Для целей данного руководства мы будем использовать Ubuntu VPS. Наш Ubuntu 16.04 VPS уже поставляется с предустановленным рабочим стеком LAMP. Тем не менее, мы все равно проведем все необходимые шаги и покажем вам, как устанавливать и настраивать стек LAMP самостоятельно, если вы делаете это на чистом сервере. Также необходим полный доступ к SSH-корню или пользователь с привилегиями sudo.

Читать дальше
Андрей Копп
0    327    0
0

Оптимизация загрузки сайта. Количество запросов.

12 ноября 2018, 13:04

Часто возникает необходимость посмотреть какое количество запросов идёт к сайту, для его последующей оптимизации для загрузки страниц. Вот такой код нужно вставить в ваш шаблон или чанк и вы сможете посмотреть все необходимые параметры:

Выводит время потраченное на запросы к базе данных - [^qt^]
Выводит количество запросов к базе данных - [^q^]
Выводит время потраченное на работу PHP скриптов - [^p^]
Выводит общее время потраченное на генерацию страницы - [^t^]
Выводит источник содержимого (база данных или кэш) - [^s^]
Тег [^s^] выведите на странице — будет видно, откуда берется страница, из кеша или генерируется.
Читать дальше
Андрей Копп
0    269    0
0

Обзор компонента SEO Pro

03 октября 2018, 11:55



Недавно совершенно случайно наткнулся на компонент SEO Pro от компании sterc (которая разрабатывает MODX3). Компонент будет незаменим для SEO специалистов, т.к. он добавляет к полям подсказки (сколько символов в title или в meta тэге description), а также добавляет пример отображения вашего содержимового в сниппете Google. В шаблоне же, вы можете использовать такие конструкции для вывода ваших заголовков:

Читать дальше
Андрей Копп
0    416    0
+2

Настройка MySQL 5.7 для работы pdoTools

02 октября 2018, 11:18

Существует проблема с выводом данных через компонент pdoTools, а связано это с настройками sql-mode в MySQL 5.7

Чтобы пофиксить эту проблему нужно изменить параметр sql-mode и перезапустить сервер MySQL.

Вот что должно получиться:

sql-mode
NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

Читать дальше
Андрей Копп
1    334    0
+1

ComboBox с данными из другой таблицы modExtra

27 сентября 2018, 21:09



При написании своего компонента на заготовке modExtra не редко встаёт задача сделать в какой-то таблицы возможность добавления данными через select из другой таблицы. На выходе у нас должно получиться что-то типа этого:

Читать дальше
Андрей Копп
1    405    1
+4

mFilter2 и фильтрация через select по (Популярным товарам и их Ценам)

28 марта 2018, 20:05



Вывод сниппета mFilter2 выглядит у нас следующим образом:

                {$_modx->runSnippet('!mFilter2', [
                    'parents' => $_modx->resource.id,
                    'limit' => 12,
                    'class' => 'msProduct',
                    'element' => 'msProducts',
                    'tpl' => 'tpl.Site.msFilter2.productTpl',
                    'tplOuter' => 'tpl.Site.mFilter2.outerTpl',
                    'tplPageWrapper' => '@INLINE [[+pages]]',
                    'tplPage' => '@INLINE <a href="[[+href]]">[[+pageNo]]</a>',
                    'tplPageActive' => '@INLINE <a class="selected" href="[[+href]]">[[+pageNo]]</a>',
                    'where' => '{"class_key":"msProduct"}',
                    'suggestions' => 'true',
                    'filters' => '
                        ms|width:select,
                        ms|height:select,
                        ms|length:select,
                        ms|made_in:checkbox,
                        ms|vendor:vendors,
                    ',
                    'sort' => '
                        ms|price:desc
                    ',
                    'tplFilter.outer.ms|vendor' => 'tpl.Site.mFilter2.filter.outer',
                    'tplFilter.row.ms|vendor' => 'tpl.Site.mFilter2.filter.checkbox',
                    'tplFilter.outer.ms|made_in' => 'tpl.Site.mFilter2.filter.outer',
                    'tplFilter.row.ms|made_in' => 'tpl.Site.mFilter2.filter.checkbox',
                    'tplFilter.outer.ms|width' => 'tpl.Site.mFilter2.filter.outer.whl',
                    'tplFilter.outer.ms|height' => 'tpl.Site.mFilter2.filter.outer.whl',
                    'tplFilter.outer.ms|length' => 'tpl.Site.mFilter2.filter.outer.whl',
                    'tplFilter.row.ms|width' => 'tpl.Site.mFilter2.filter.select.whl',
                    'tplFilter.row.ms|height' => 'tpl.Site.mFilter2.filter.select.whl',
                    'tplFilter.row.ms|length' => 'tpl.Site.mFilter2.filter.select.whl',
                    'tplFilter.outer.ms|popular' => 'tpl.Site.mFilter2.filter.outer.whl',
                    'tplFilter.row.ms|popular' => 'tpl.Site.mFilter2.filter.select.whl',
                ])}

Читать дальше
SEQUEL.ONE
1    757    0
+1

Дополнительные поля профиля User (не extended)

28 марта 2018, 19:39



Потребовалось на одном проекте в форму профиля добавить для пользователей дополнительные поля. Отдельно Имя, Фамилия, Отчество и поля для добавления ссылок на социальные группы.

Читать дальше
SEQUEL.ONE
1    675    0
+1

Проблемы с провайдерами VK и Facebook в HybridAuth

28 марта 2018, 18:27

Недавно заметил что авторизация через VK и Facebook перестали работать, после долгих поисков решения оно было найдено. Сейчас подробно опишу действия которые нужно сделать для того чтобы всё у вас заработало. Начнём с провайдера Vkontakte.

Читать дальше
SEQUEL.ONE
1    651    0
+1

Замена текста в больших файлах через SSH

25 марта 2018, 20:21

Шпаргалка о том, как заменить текст в файле на сервере, который не загружается в текстовый редактор из-за большого размера.

Столкнулся с описанной выше проблемой, нашел несколько вариантов решения, делюсь ими.

Массовая замена текста через SSH в нескольких файлах

find /folder/ -name '*.html' -exec sed -i 's/старый_текст/новый_текст/g' '{}' \;

Разбираемся:

  • find ищет файлы в обозначенной папке /folder/, имена -name которых совпадают с шаблоном *.html;
  • -exec для каждого файла из списка найденных и выполняет команду sed, которая осуществляет замену текста.

если вы хотите, чтобы, допустим, после замены текста у вас осталась резервная копия исходного файла, тогда вместе c -i можно приписать "_old" или "_bak", чтобы получилось что-то наподобие -i_bak, тогда вместе с заменяемым файлом создастся еще один — «имя_файла.расширение_old».
Читать дальше
Андрей Копп
2    342    0
+1

Топики


Комментарии

Юрий 08 января 2019, 22:45
Всевозможная очистка кэша в Laravel 5 2
Андрей Копп 02 октября 2018, 09:04
ComboBox с данными из другой таблицы modExtra 1