Интересно почитать… Блог в котором есть много интересной информации…

2 февраля 2012

Ставим Joomla 2.5

Категория: программирование — Метки: — dmitriano @ 1:15

Решил поставить Joomla 2.5, скачал дистрибутив, запускаю инсталлятор. На этапе проверки системных требований мне Joomla показывает вот такую штуку (увеличить можно кликом):

image

выключить Output Buffering, вроде можно через .htaccess, добавив туда вот это:

(далее…)

5 января 2012

Изучаем PHP DOMDocument

Категория: программирование — dmitriano @ 23:40

DOMDocument вполне юзабильная вещь, но, как всегда, нужно учитывать кое-какие особенности связанные с кодировкой, например если просто загрузить кусок HTML а потом его сохранить, то получится вот такая штука:

html-parser1

(далее…)

4 января 2012

Текстовый Watermark на PHP

Категория: программирование — dmitriano @ 17:48

flower-watermark-processedОказывается, что реализовать watermark на PHP, в виде полупрозрачного текста достаточно просто, нужно только вспомнить школьную геометрию и немного разобраться с GD2.

Чтобы нарисовать прозрачный текст под углом можно использовать функцию imagettftext, которая получает в качестве y-координаты некий baseline, координаты которого можно рассчитать с помощью функции imagettfbbox.

В отличии от PHP Watermark реализованного через наложение полупрозрачного изображения, текстовый watermark работает только с форматом png, для непрозрачных форматов (jpg, gif и т д), текст получается непрозрачным, поэтому с ними нужно работать через наложение полупрозрачного изображения с помощью функции imagecopy.

(далее…)

16 декабря 2011

Настройка Windows Live Writer для работы с WordPress 3.3 Multisite

Категория: программирование — dmitriano @ 3:20

Как я писал ранее, Windows Live Writer очень легко настроить для работы с WordPress, однако с WordPress Multisite он, просто на просто, не работает, точнее работает, но только с главным сайтом. При попытке создания учетной записи для неглавного сайта Windows Live Writer выдает сообщение об ошибке.

Итак, как всегда создаем учетную запись WordPress:

wlw-wordpress-step1

(далее…)

Строим отчеты для Joomla 1.23 + VirtueMart 1.19

Категория: программирование — dmitriano @ 2:51

Общая сумма всех отправленных заказов:

SELECT SUM(`order_total`) FROM `jos_vm_orders` WHERE `order_status`='S'

Сумма всех заказов сгруппированная по годам месяцам:

SELECT SUM(`order_total`) total, YEAR(FROM_UNIXTIME(cdate)) y, MONTH(FROM_UNIXTIME(mdate)) m 
    FROM `jos_vm_orders` WHERE `order_status`='S' 
    GROUP BY y, m

28 ноября 2011

HTTP прокси на PHP

Категория: программирование — dmitriano @ 22:15

Понятное дело, что одним из вариантов реализации HTTP прокси было бы использование Apache mod_proxy, но, возможно, не все хостинги его поддерживают, и, было бы проще, загружать на хостинг какой-то готовый PHP скрипт, который бы превращал его в HTTP прокси. Хотя это вопрос пока открытый.

Судя по всему, самым подходящим вариантом скрипта для реализации HTTP прокси на PHP является Nanoweb с модулем mod_proxy. Осталось только разобраться со следующими вопросами:

(далее…)

22 ноября 2011

Как сделать Watermark на PHP

Категория: программирование — dmitriano @ 13:43

imageСтандартным методом защиты изображений на веб-сайтах является так называемый watermark. Он бывает статический и динамический. Статический это когда картинка хранится на сервере с уже добавленным watermark, динамический это когда watermark добавляется при скачивании картинки с сервера. Статический вариант рассматривать не будем, так как он обладает рядом очевидных недостатков.

(далее…)

20 ноября 2011

WordPress Jetpack конфликтует с плагином SyntaxHighlighter Evolved

Категория: программирование — dmitriano @ 2:23

После установки всех обновлений, WordPress начал мне выдавать вот такую штуку:

WordPress-Jetpack

но после установки этой штуки SyntaxHighlighter Evolved перестаёт работать.

19 октября 2011

Как вытащить изображения из HTML

Категория: программирование — Метки: — dmitriano @ 14:56

Для вытаскивания img тэга из HTML можно использовать очень простой код на PHP:

$html = $value['introtext'];

preg_match('/<img[^>]+>/i', $html, $matches);

if (count($matches) > 0)
{
    $value['image'] = $matches[0];
    
    //print $value['image'];
}

тут у нас ‘introtext’ это поле в таблице jos_content, таком образом этот код можно использовать, чтобы вытащить первую картинку из материала в Joomla.

(далее…)

17 октября 2011

Как получить уникальную категорию товара в VirtueMart 1.9

Категория: программирование — Метки: , — dmitriano @ 13:00

Список категорий с парентами:

SELECT c.category_id, c.category_url, cref.category_parent_id
FROM jos_vm_category AS c, jos_vm_category_xref AS cref
WHERE c.category_id = cref.category_child_id
ORDER BY c.category_id

Список товаров с категориями:

SELECT p.product_id, p.product_url, p.product_sku, c.category_id
FROM jos_vm_product AS p, jos_vm_product_category_xref AS c
WHERE IF( p.product_parent_id >0, p.product_parent_id, p.product_id ) = c.product_id
ORDER BY p.product_id

(далее…)

12 октября 2011

Ставим Mono на Ubuntu Linux

Категория: linux,программирование — Метки: — dmitriano @ 21:03

Ну вроде, если выполнить вот такую команду:

#apt-get install mono-gac mono-gmcs mono-xsp mono-utils monodevelop monodoc-browser monodevelop-nunit monodevelop
#apt-get update --fix-missing
#apt-get install mono-gac mono-gmcs mono-xsp mono-utils monodevelop monodoc-browser monodevelop-nunit monodevelop

то оно поставится, хотя и выдаст какие-то непонятные сообщения вроде Problem to…

Чтобы проверить результаты установки, можно выполнить такую команду:

#aptitude search mono | grep ^i

она нам выдаст длинный список установленных библиотек.

Оказывается даже можно запускать ASP.NET приложения под Apache, а потратив неделю на настройку, можно даже запустить DotNetNuke на Ubuntu.

20 сентября 2011

Добавляем комментарии ВКонтакте для Joomla 1.5.23

Категория: программирование — dmitriano @ 17:09

Генерируем код

Открываем страницу Виджет для комментариев в контакте и генерируем код для виджета. В этом коде API_ID ваш id в контакте. Затем смотрим Документацию о виджете комментариев и добавляем в код дополнительные параметры, из которых page_id может быть полезен для более правильной идентификации материала в Joomla. Использовать page_id можно так:

$id = JRequest::getInt('id');

и добавляем этот page_id в код виджета:

VK.Widgets.Comments("vk_comments", {limit: 20, width: "450", attach: "*"},'.$id.');

(далее…)

11 сентября 2011

Изучаем Joomla XMLRPC MovableType plugin

Категория: программирование — Метки: — dmitriano @ 14:37

Плагин MovableType является улучшенной версией плагина MetawebLog. Кроме всего прочего, он добавляет такие полезные методы, как mt.getPostCategories и mt.setPostCategories. Эти методы полезны тем, что позволяют передавать категории через ID, в то время как, MetawebLog передает заголовки категорий, затем, их распарсивает и находит в базе:

function newPost($blogid, $username, $password, $content, $publish)
{
    ...

    $db =& JFactory::getDBO();
    $db->setQuery("SET NAMES 'utf8'");

    $category = substr($content['categories'][0], 0, strpos($content['categories'][0],' ('));
    $query = 'SELECT id,section FROM #__categories WHERE title='.$db->Quote($category);

    if(!$category){
        $category = $params->get('catid');
        $query = 'SELECT id,section FROM #__categories WHERE id='.$db->Quote($category);
    }

    $db->setQuery($query);
    $cat = $db->loadObjectList();
    
    ...
}

(далее…)

8 сентября 2011

Настройка платежных систем для VirtueMart

Категория: программирование — Метки: , — dmitriano @ 22:42

Что есть на данный момент

Сейчас у меня на сайте в VirtueMart есть следующие Shipper-ы:

image

(далее…)

30 августа 2011

Кто такой PHP RunKit и как его инсталлировать под Ubuntu Linux

Категория: программирование — dmitriano @ 20:46

Для чего нужен PHP RunKit

PHP RunKit нужен для того, чтобы делать вот такие штуки:

// небольшой хак
runkit_constant_redefine('JPATH_COMPONENT', JPATH_BASE.DS.'components'.DS.'com_content');

...

// возвращаем все на место
runkit_constant_redefine('JPATH_COMPONENT', $old_jpath_component);

(далее…)

8 августа 2011

Как вызывать C++ из C#

Категория: программирование — dmitriano @ 21:16

Предположим у нас есть некий код на C++, который надо вызвать из C#. Пусть это будет функция под названием CppFunc:

int WINAPI CppFunc(LPSTR szSrc, LPSTR szDst)
{
  return lstrlenA(szSrc);
}

Если мы действительно хотим вызвать её из C#, то для начала, надо создать под Visual Studio 2010 проект “Win32 Project”:

(далее…)

1 августа 2011

WordPress Multisite

Категория: программирование — dmitriano @ 18:59

На WordPress 3.0 выше можно создать не один сайт, а сеть сайтов, для этого надо выбрать соответствующую опцию при инсталляции. Для более ранних версий использовался плагин WordPress MU, который теперь встроен в WordPress. Для сети сайтов появляется пользователь под названием Network Admin.

(далее…)

Настройка плагина WP Super Cache

Категория: программирование — Метки: — dmitriano @ 17:41

Для активации плагина нужно единовременно разрешить запись в каталог wp-content:

chmod g+w wp-content/

и добавить в файл wp-config.php вот такую строку строку:

define('WP_CACHE', true);

(далее…)

30 июля 2011

Изучаем Joomla! XML-RPC Test Client

Категория: программирование — Метки: — dmitriano @ 16:41

Чтобы XML-RPC Test Client заработал, надо в админке Joomla включить две галочки:

joomla-xmlrpc-test-client-settings

(далее…)

27 июля 2011

Как запретить поисковикам индексировать сайты через HTTPS

Категория: программирование — Метки: — dmitriano @ 2:03

Просматривая результаты поисковой выдачи Яндекса, я с удивлением обнаружил, Яндекс выдаёт ссылки на мой сайт через HTTPS:

Яндекс https

Также приходилось сталкиваться с тем, что Яндекс умудряется проиндексировать тестовый сайт вместо боевого, хотя тестовый сайт работал через порт 2080.

Чтобы избежать индексирования поисковиками через HTTPS надо создать отдельный файл robots.https.txt с полным запретом индексирования:

User-agent: *
Disallow: /

(далее…)

« Newer PostsOlder Posts »

SlogPost.ru