Владимир

Владимир

С нами с 28 декабря 2012; Место в рейтинге пользователей: #83
01 июня 2015, 16:55
0
О! Класс. Спасибо, обратил внимание на работу с изображениями в MinifyX.
В документации docs.modx.pro/components/minifyx/snippet нет пока этих параметров.
31 мая 2015, 01:05
0
Василий, отправил тебе СПАСИБО!
PdoTools плюс Fenom — это круто!
Чего лично мне не хватало в pdoTools, так это для какой то конкретной, выводимой в ленте сайта статьи, использовать свое оформление не злоупотребляя модификаторами в чанках, т.е. понятно, что четные, нечетные и NN-е чанки-шаблоны многое решали, но теперь можно легко менять оформление комбинируя с различными условиями.
Шикарно)
28 мая 2015, 17:45
+2
Теперь, если вы хотите внести какие-то потенциально опасные изменения в рабочий сайт и боитесь его сломать, то можно сделать его копию на том же тарифе и экспериментировать сколько угодно.
очень, очень, очень здорово!
23 мая 2015, 14:54
0
извини, но их реализация какая то навязчивая), очень, навязчивая.
23 мая 2015, 14:06
0
Да, miniShop2 роднее, полюбому)
22 мая 2015, 23:28
0
А вот жесть, MODXSimpleCart, в плане сравнения цен с miniShop2
Еще платное расширение для рассылок GoodNews a premium MODX Revo GroupMailer Add-On
К сожалению, японский репозитарий не нашел, а он есть.
Может кто еще нароет площадки…
22 мая 2015, 23:05
0
Кстати, конечно по количеству расширений modstore.pro уже очень крут. Но modmore.com есть чем заинтересовать. Использую ContentBlocks от www.modmore.com/extras/ — очень достойное расширение, полностью оправдывает свою стоимость (79 евро/Single License ), ни каких аналогов ему нет. Кардинально меняет работу контент менеджера! Собираюсь купить Unlimited License.
22 мая 2015, 20:53
0
modx.com/extras/package/siteatoz
Что то такое ты ищешь, я так понимаю.
22 мая 2015, 20:49
+1
Галереи и М2серчи люблю :) Спасибо за праздничный дисконт!
20 мая 2015, 22:38
+1
Василий! Спасибо тебе за твои идеи, дополнения и новые фишки!
После чтения «критики», в данной ветке особенно, хочется тебя поблагодарить и поддержать.
20 мая 2015, 00:53
0
А если два фильтра на странице, как у одного mFilter2 пагинацию просто запретить?
UPD ну, вот так получается &paginator=`nopaginator`, nopaginator — пустой снипет-заглушка
14 мая 2015, 19:11
0
Шаблон пустой выбран для документа? Должен быть пустой, все работает.
05 мая 2015, 11:31
0
В соц сети очень полезно добавлять хэш тэги, типа #тэг1 и т.п.
Само собой, напрашивается: tagLinks урезаем, делаем HashtagLinks
[[!HashtagLinks? &tags=`[[*tags]]`]]
<?php
$tags = $modx->getOption('tags', $scriptProperties);
if(!$get){
	if(!$tags) {return '';}
	$tags = explode(',',$tags);
	foreach($tags as $value) {
		$output[] = "#{$value}"; 
	} 

	return implode(' ',$output);
}
Одно досадно, предзаполнять поле комментариев по ogp.me/ не предусмотрено, а в <meta property=«og:description» content="[[!HashtagLinks? &tags=`[[*tags]]`]] добавлять бессмысленно, что сводит все на нет, т.е. постинг хэш-тегов в комментарии вручную.
Может у кого есть мысли как реализовать автопостинг и хэштэгов тоже?
05 мая 2015, 09:36
0
Спасибо. Очень нужный компонент!
04 мая 2015, 18:49
0
Снипет randomImage
отсюда modx.com/extras/package/revoutilities
<?php
/**
 * 
 * A utilities snippet for MODX Revolution
 * 
 * This snippet will return a random image path from a given folder/directory 
 * 
 * @package RevoUtilities
 * 
 * useage
 * [[!randomImage? &folder=`assets/content/images/`]]
 * 
 */

 /**
 * display a random image for a selected directory
 */
$image_path = '';

/**
 * 1. get all of the image files in the directory
 * 2. randomly pick one and send the path back
 */
$base_url = $modx->getOption('folder', $scriptProperties, 'assets/content/backgrounds/');

//$site_path = str_replace('core/', '', $modx->getOption('core_path'));
$current_dir = MODX_BASE_PATH.$base_url;// this is the base 

$allowed_types = array('gif', 'jpeg', 'jpg', 'png');

$file_type_array = array(
        # documents
        'doc' =>'application/msword',
        'docx' =>'application/msword',
        //'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
        'rtf' => 'application/rtf',
        'txt' => 'text/plain',
        'pdf' => 'application/pdf',
        # powerpoint
        'pot' => 'application/mspowerpoint',
        'pps' => 'application/mspowerpoint',
        'ppt' => 'application/mspowerpoint',
        'ppz' => 'application/mspowerpoint',
        # excel
        'csv' => 'application/x-msdownload',
        'xlc' => 'application/vnd.ms-excel',
        'xls' => 'application/vnd.ms-excel',
        # web images
        'gif' => 'image/gif',
        'jpeg' => 'image/jpeg',
        'jpg' => 'image/jpeg',
        'png' => 'image/png', 
        'tif' => 'image/tiff',
        'tiff' => 'image/tiff',
        # web files
        'css' => 'text/css',
        'htm' => 'text/html',
        'html' => 'text/html',
        'xml' => 'text/xml',
        'js' => 'application/x-javascript',
        # video
        'avi' => 'video/x-msvideo',
        'dl' => 'video/dl',
        'fli' => 'video/fli',
        'fli' => 'video/x-fli',
        'flv' => 'video/flv',
        'gl' => 'video/gl',
        'mp2' => 'video/mpeg',
        'mpe' => 'video/mpeg',
        'mpeg' => 'video/mpeg',
        'mpg' => 'video/mpeg',
        'mov' => 'video/quicktime',
        'qt' => 'video/quicktime',
        'viv' => 'video/vnd.vivo', 
        'vivo' => 'video/vnd.vivo', 
        'wmv' => 'video/x-ms-wmv',
        'wmx' => 'video/x-ms-wmx',
        'wvx' => 'video/x-ms-wvx',
        'asf' => 'video/x-ms-asf',
        'asx' => 'video/x-ms-asx',
        'movie' => 'video/x-sgi-movie'
    );


// Array that will hold the dir/folders names.
$dir_array = array();
//$dir_info_array = array();
$file_array = array();
$file_info_array = array();

$open_dir = opendir( $current_dir ) ;

while ( $tmp_file = readdir( $open_dir ) ) {
    if ( $tmp_file != '.' && $tmp_file != '..' ) {
        # dir
        if ( is_dir( $current_dir.$tmp_file ) ) {
            $dir_array[] = $tmp_file;
        # files
        } elseif ( is_file($current_dir.$tmp_file) ) {
            $file_size = @filesize( $current_dir.$tmp_file ) ;
            if ( !$file_size ) {
                $file_size = 0 ;
            }
            if ( $file_size < 1024*1024) {
                $file_size = round( $file_size / 1024 ).'kb';
                if ( $file_size < 1 ) {
                    $file_size = '1kb';
                }
            } else {
                $file_size = round( $file_size/(1024*1024) ).'mb';
            }
            
            # get the type of file
            $file_ext = substr($tmp_file, strripos($tmp_file, '.')+1 );
            
            if ( in_array($file_ext, $allowed_types) ){
                $file_array[] = $tmp_file;
                $file_info_array[$tmp_file] = array(
                    'type' => '', // jpg, html, php, ect.
                    'content_type' => $file_type_array[$file_ext],
                    'size' => $file_size,
                    'date' => date("M/j/Y g:ia",filemtime($current_dir.$tmp_file)) );
            } else {
                continue;
            }
        }
    }
}
closedir($open_dir);

$image_path = $base_url.( $file_array[array_rand($file_array)] );

return $image_path;
04 мая 2015, 15:22
+1
Маркетинг рассчитан на обывателя (причем всегда), и, конечно, среди обывателей есть адекватные и состоятельные. Но то что Фабрика отлавливает людей несведущих доверчивых, вы, скорее всего согласитесь. Потом, после фабрики, они идут, в т.ч. к вам)), с багажом опыта, так сказать.
04 мая 2015, 15:01
0
Клиенты у них соответствующие, сами ни чего не могут установить, и не мыслят даже.
Нескольких их клиентов знавал- упаси бог с такими иметь дело. Так, что в определенном смысле «Фабрика сайтов» даже в чем то «санитары», перетягивают на себя «особо одаренных» заказчиков)))))
04 мая 2015, 14:07
0
Перекрасили, выдали за свой продукт, затерли все данные о системе и авторах и ничего не нарушили? Интересно, как они хотят доказать что «никакого нарушения GPL» не было?
Желаю вам победы. Такое наглое хамство должно быть наказано.