13
Янв
Apostrophe CMS: Получить значение глобального слота
Запостил Jeka, в раздел Новости
Пример:
$page = aPageTable::retrieveBySlugWithSlots('global');
$slot = $page->getSlot('phone',1);
echo $slot->value;
17
Ноя
Apostrope CMS: Ошибка при добавление русских названий страниц.
Запостил Jeka, в раздел Новости
UPDATED: В версии 1.5 данный баг будет пофикшен, заметка касается только версии 1.4
Ошибка возникает когда пытаешься установить название страницы русскими символами (больше 12 символов).
После попытки сохранения, сайт будет выплёвывать нечто подобное:
SQLSTATE[HY000]: General error: 1366 Incorrect string value: '\xD0</str...' for column 'diff' at row 1
Багрепорт по этой проблеме я в свое время уже выкладывал в trac апостофа и его возможно скоро удастся решить, но на всякий случай выкладываю пару шагов по исправлению ошибки, не прибегая к ковырянию исходников самой CMS.
Решение:
1. копируем файл aString.class.php из плагина апострофа в директорию lib нашего проекта.
cp plugins/apostrophePlugin/lib/toolkit/aString.class.php lib/aString.class.php
2. Открываем в редакторе это файл и заменяем метод limitCharacters(), на представленный ниже:
//aString.class.php:
public static function limitCharacters($s, $length, $options = array())
{
$ellipsis = "";
if (isset($options['append_ellipsis']) && $options['append_ellipsis'])
{
$ellipsis = "...";
}
if ($length < 12)
{
// Not designed to be elegant below this length
return mb_substr($s, 0, $length);
}
if (mb_strlen($s) > $length)
{
$s = mb_substr($s, 0, $length - mb_strlen($ellipsis));
$slength = mb_strlen($s);
for ($i = 1; ($i <= 10); $i++)
{
$c = mb_substr($s, $slength - $i, 1);
if (($c === ' ') || ($c === '\t') || ($c === '\r') || ($c === '\n'))
{
return mb_substr($s, 0, $slength) . $ellipsis;
}
}
return $s . $ellipsis;
}
return $s;
}
Все, удачного использования!
PS Не забывайте, что теперь при обновлении плагина апострофа, в нем может поменяться файл aString.class.php, но он не будет подцепляться так как у нас в директории lib проекта лежит аналогичный файл, так что это придется отслеживать.
28
Авг
Apostrophe CMS – изменение стандартной слугофикации (slugify)
Запостил Jeka, в раздел Новости
В Apostrophe CMS при сохранении страницы или других элементов автоматически преобразует их названия к виду пригодному для отображения в url, но к сожалению для кириллических строк оно работает не так как хочется. Мне например, необходимо чтобы кириллические символы транслировались в аналоги латинского алфавита.
К счастью такое поведение CMS легко исправить без ковыряния в исходниках Apostrophe, для этого надо:
- Скопировать файл "/plugins/apostrophePlugin/lib/aTools.class.php" куда-нибудь в каталог "/lib" например "/lib/aTools.class.php". В этом случае будет использовать наш класс, а не класс из построфа.
- Переопределить статический метод slugify()
Пример:
<?php
// /lib/aTools.class.php
class aTools extends BaseaTools
{
public static function slugify($path, $allowSlashes = false)
{
$path = hsTextUtils::translit($path);
return parent::slugify($path, $allowSlashes);
}
}
В данном примере hsTextUtils::translit() – это мой метод с помощью которого я делаю трансляцию кириллических символов в латинские, вам следует здесь использовать свой.
1
Июл
Apostrophe — CMS на Symfony с визуальным представлением
Запостил Jeka, в раздел Новости
Apostrophe — CMS написанная на PHP, Symfony.
В данной CMS нет отдельной страницы для администрирования, все данные редактируются непосредственно в том месте где текст размещается.
Для пробы сделали пару сайтов на Apostrophe. Сама CMS все еще довольно сыроватая, но если ее обработать напильником, получается довольно интересный продукт.
Идеально подходит для небольших сайтов, сайтов визиток.
Последние записи:
- 03 Ноя Что я использую в работе...
- 09 Сен Анонс: Конференция Symfony Camp ...
- 24 Авг Особенности whereIn в Doctrine...
- 16 Авг PHP, получение контекста в $this...
- 30 Июн Поездочка в Казань, Чистополь и ...
- 10 мая Вакансия: Разыскиваются талантли...
- 20 Апр WideImage – манипуляция из...
- 08 Апр prettyPhoto – отличная зам...
- 06 Апр Предпринимательство в России...
- 13 Янв Apostrophe CMS: Получить значени...
Разделы:
- Администрирование (2)
- Новости (45)
- Программирование (29)
- Управление проектами (1)
Архивы:
- Ноябрь 2011
- Сентябрь 2011
- Август 2011
- Июнь 2011
- Май 2011
- Апрель 2011
- Январь 2011
- Ноябрь 2010
- Октябрь 2010
- Сентябрь 2010
- Август 2010
- Июль 2010
- Май 2010
- Апрель 2010
- Март 2010
- Февраль 2010
- Январь 2010
- Декабрь 2009
- Ноябрь 2009
- Сентябрь 2009
- Август 2009
- Июль 2009
- Июнь 2009
- Май 2009
- Апрель 2009
- Март 2009
- Февраль 2009
- Январь 2009
- Ноябрь 2008
- Октябрь 2008
- Сентябрь 2008
- Август 2008