Движки

Нестандартные типы постов в WordPress

21.09.2019

Мне в руки попал лендинг от другого разработчика. Посмотрел как там реализовано редактирование контента - никакого Gutenberg, никакого инлайн-редактора и даже HTML код страницы пустой. Просто создан файл с шаблоном страницы, в который напихана куча постов а-ля "закос под виджеты". В админке эти посты-виджеты рассортированы по группам таким образом:

Плагин, который за это отвечает - Custom Post Type UI. Реализация конечно такая себе, но плагин интересный, надо запомнить, может пригодится для чего-то ещё.

Переопределить jQuery в WordPress

20.09.2019

Concrete5 + Carbon + PHP 7

07.11.2018

Наткнулся на ещё один косяк в Concrete5.

Ошибка

Исправляется так. Идём в:
concrete/vendor/nesbot/carbon/src/Carbon/Carbon.php

Ищим строчку:

Заменяем на:

Concrete5 возвращает пустую страницу

05.11.2017

Постоянно сталкиваюсь с ситуацией, когда после загрузки сайта на Concrete5 на хостинг, сайт перестаёт работать. Он просто возвращает пустую страницу, а попытки включить error_reporting в скриптах CMS ни к чему не приводят. Решение оказалось сначала не очень очевидным, но очень простым - удалить всё из папки: \application\files\cache.

Как обновить Concrete5 вручную

30.07.2017

Concrete5 нельзя обновить с 5 версии на 8 в автоматическом режиме. Но это можно сделать вручную.

  1. Выставляем английский язык на сайте.
  2. Качаем свежую версию отсюда.
  3. В папке \updates создаём папку с номером версии из архива, например: concrete5-8.2.0_remote_updater
  4. Закидываем туда папку concrete из архива с новой версией.
  5. Идём в Dashboard > System and Settings > Update Concrete5 и обновляемся.

CKEditor в Concrete5

25.12.2016

Вышла долгожданная 8 версия Concrete5. Теперь она использует CKEditor, вместо устаревшего Redactor. Задался вопросом - как отключить форматирование текста при вставке, чтобы избежать таких неловких моментов:
 
0e30cd5ed8
 
Опции CKEditor находятся здесь, на 69-й строке:
\concrete\src\Editor\CkeditorEditor.php
Сюда нужно добавить:
'forcePasteAsPlainText' => true,
А также стоит закомментировать строчку:
'uploadUrl' => (string)URL::to('/ccm/system/file/upload'),
Эта строка отвечает за загрузку изображений при вставке из буфера обмена.
 
Документация по CKEditor

Автоматическое определение адреса сайта в WordPress

07.09.2016

Вас не задалбывает, что при разработке какого-то проекта на WordPress, приходится постоянно подкручивать адрес сайта в базе, если нужно перенести сайт с локалки на хостинг и обратно? Есть способ заставить WordPress определять адрес сайта автоматически, для этого нужно добавить следующий код в wp-config.php:

Также это будет полезно, если вам нужно сделать зеркало сайта.

Не ходит почта с Concrete5

03.08.2016

Столкнулся с недоработкой системы, а точнее, одного из стандартных блоков. Если создать блок-форму, и выставить в настройках отправку почты на какой-то ящик, почта не будет приходить. Хотя, при тестовой отправке через админку всё нормально. Дело в том, что форма берёт за ящик отправки E-mail первого админа в системе. Стоит выставить ему ящик отправки в качестве E-mail и всё заработает. Ну, или идём в /concrete/blocks/form/controller.php и задаём переменную $formFormEmailAddress вручную.

Next-Gen форумы

23.05.2016

Давно жду форум своей мечты, перепробовал кучу. Мои критерии "некст-дженистости" это простота юзабилити, обновление контента в рил тайме, отсутствие постраничной навигации. В этом посте я попытаюсь собрать наиболее интересные варианты.
 

  1. Discourse. Форум приятный, для крупных корпораций он стал уже мейнстримом, особенно он удобен для форумов тех-поддержки. Из минусов - очень много жрёт, максимальная вложенность категорий только 2 уровня. Но главный его минус для меня в том, что он написан на Puby on Rails и Ember.js. За отсутствием знаний, я никак не могу этот форум тюнинговать. Устанавливается он только из под Docker, и настраивать его в мульти-конфигурации задолбаешься. Разработчики с этим не охотно помогают, потому как им выгоднее пропихивать собственные услуги по настройке и размещению сайтов на их софте. Также, этот форум завязан на Mandrill.
  2. NodeBB. NodeJS не владею, на чём написан front-end не интересовался. Форум довольно приятный, но в момент когда я его пробовал, в нём было слишком много мелких багулин и недочётов.
  3. Flarum. На этот форум я сейчас молюсь. Ребята фактически переписывают функционал Discourse на PHP, добавляя своих фишек. Очень многообещающий проект, особенно после выхода PHP 7.

Не вышедшие. Под большим вопросом:

  1. MyBB 2.0
  2. XenForo 2.0

Забракованные:

  1. Vanilla - все хвалят этот форум, но что в нём некст-дженистого по сути? Одностраничности нет, юзабилити перегружено, обновления в рил-тайме нет. Я отнёс этот форум к числу дедушкиных. С таким же успехом можно Reddit назвать некст-дженом.
  2. XenForo - форум с отвратительно продуманным юзабилити, с совершенно убогим шаблонизатором, и глючным устаревшим редактором. На мой взгляд, даже phpBB использовать приятней.

Не загружаются аватары в XenForo

13.09.2015

Столкнулся с ошибкой:

Произошла ошибка:
Изображение не может быть обработано сервером. Пожалуйста, выберите другое изображение или свяжитесь с владельцем сайта.

В логах Apache и Nginx было пусто, в логах админки тоже. Права на запись к папке с аватарами стояли. Стал гуглить требования XenForo к серверу, вот что нашёл:

  • PHP: 5.2.4+
  • MySQL: 5.0+
  • PHP extensions: MySQLi, GD, PCRE, SPL, SimpleXML, DOM, JSON, iconv
  • PHP safe_mode off

Как оказалось, XenForo нужен GD или ImageMagic для работы с аватарами. По-умолчанию GD. Так что, помогло: