Как давно я не программировал

Май 21, 2009 - Без категории, Программирование, 6 комментариев



Ух как давно я не программировал. Дело в том, что последнее время я практически не занимаюсь этим вот вашим веб-программированием. Максимум, что могу позволить себе это сверстать что-нибудь попроще (на дивах или таблицах, но что бы только мозг себе не выносить). Стараюсь отдавать эту работу по веб-программированию тем, кто на этом действительно собаку съел.

А тут вот сегодня взял сегодня и целых 5 строк кода написал. И каким же трудом они мне дались, скажу я вам.


$ids = array (1 => 50, 2 => 51, 3 => 55, 4 => 59);
$ind = mt_rand(1,4);
$txt = $modx->getDocument($ids[$ind]);
print_r($txt);die;

Сейчас я расскажу, что они делают. Значит в переменную $ids заводится небольшой такой "массивчик". Он состоит из номеров документов. Это номера документов в дереве из которых будут дергаться "названия слоганов". В переменную $ind попадает произвольный индекс. Он берется от 1 до 4. То есть может быть и 3, а может и 2, но 5 и 0 не может. Зачем это нужно?

Это нужно, что бы потом используя функцию MODx API getDocument ($modx->getDocument($ids[$ind])) дернуть динамически документ в дереве произвольного индекса и взять с него поле [pagetitle].

Отработкой API функции является ассоциативный массив такого вида

Array ( [id] => 50
[type] => document
[contentType] => text/html
[pagetitle] => В бизнесе есть только один план – никакого плана
[longtitle] =>
[description] =>
[alias] =>
[link_attributes] =>
[published] => 1
[pub_date] => 0
[unpub_date] => 0
[parent] => 49
[isfolder] => 0
[introtext] =>
[content] =>
[richtext] => 1
[template] => 5
[menuindex] => 0
[searchable] => 1
[cacheable] => 1
[createdby] => 1
[createdon] => 1241692728 [editedby] => 1
[editedon] => 1241692728
[deleted] => 0
[deletedon] => 0
[deletedby] => 0 [publishedon] => 1241692728
[publishedby] => 1
[menutitle] =>
[donthit] => 0
[haskeywords] => 0
[hasmetatags] => 0
[privateweb] => 0
[privatemgr] => 0
[content_dispo] => 0
[hidemenu] => 0 )

Как уже ранее говорилось нас интересует только поле [pagetitle]. Вся эта бодяга потом вставляется в сниппет [[slogan]] а он в свою очередь вызывается из шаблона и мы имеем генератор случайных слоганов для сайта.

Вуаля!


Похожие записи:

Комментарии

  • Алексей

    А когда понадобится добавить слоган, придется лезть добавлять циферку?

    Я бы сделал через Дитто с &randomize=`1`.

  • Алексей

    Или через getChildIds.

    Но, конечно, зависит от деталей задачи.

  • http://serg-smirnoff.com serg-smirnoff

    Возможно вы правы, массив $ids логичнее было бы получать как-то иначе. В моем случае это скорее всего именно getChildIds().

    Но я вот так вот решил, топорно конечно.

  • Алексей

    getDocumentChildren — самое то ;)

  • http://serg-smirnoff.com/jexr/aHR0cDovL2luZm9wcm9nLnRr asfaf

    Спасибо, интересно! Будем читать дальше.
    http://infoprog.tk – программирование для начинающих и программирование для чайников

  • http://serg-smirnoff.com/jexr/aHR0cDovL3Byb2dhbGVna28ucnU= Программирование для начинающих, программирование для чайников.

    Было интересно узнать о языках программирования. Программирование для начинающих, программирование для чайников. http://progalegko.ru


Rambler's Top100



Читать в Яндекс.Подписках


QR Code