We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 4036
    • 239 Posts
    Всем здравствуйте! smiley
    Понадобился снипет для вывода упрощенного вывода страницы для печати - решила воспользоваться PrintDoc
    Все замечательно http://kiddys.info/catalog/detskie-kolyaski/klassicheskie-kolyaski/kolyaska-klassicheskaya-Sojan-X5.html

    Вот только картинку, которая подгружается через TV-параметр видеть ни за что не хочет sad

    Вот чанк вывода страницы:
    <table border="0" width="100%" align="center">
    <tr>
        <td align="left" style="padding-bottom: 5px" colspan="2"><h1>[+pagetitle+]</h1></td>
    </tr>
    <tr>
        <td align="left"style="padding-left: 5px" colspan="2"><div style="font-size: 9px; padding-bottom: 20px; padding-left: 20px">[+description+]</div></td>
    </tr>
    <tr>
    	<td style="padding-left: 10px"><img src="[+image_big+]" width="300" height="300"></td>
        <td class="text" style="padding-left: 10px">[+content+]</td>
    </tr>
    </table>


    Почему остальные поля видит, а это в упор не замечает?
    Никто не сталкивался случайно? huh
      Портфолио - http://wowstudio.pro
      • 29487
      • 385 Posts
      Этот сниппет не работает с TV-параметрами.
      Попробуйте [+image_big+] заменить на [+tvimage_big+], а в сниппете перед строчкой
      $content = $template;


      вставить код:

      	preg_match_all('~\[\+tv(.*?)\+\]~', $template, $matches);
      	$cnt = count($matches[1]);
      	$tvnames = array ();
      	for ($i = 0; $i < $cnt; $i++) {
      		$tvnames[] = $matches[1][$i];
      	}
      	$tvnames = array_unique($tvnames);
      	$id=(int)$_GET['p_docid'];
      	if (count($tvnames) >= 1) {
      		$tvs = $modx->getTemplateVarOutput($tvnames, $id);
      		if ($tvs !== false) {
      			foreach ($tvs as $name => $object) {
      				$template = str_replace("[+tv$name+]", $object, $template);
      			}
      		}
      	}
      
        • 4036
        • 239 Posts
        Спасибо ОГРОМНОЕ!!! Вы меня очень выручили. Сработало! smiley
          Портфолио - http://wowstudio.pro
          • 28814 ☆ A M B ☆
          • 1,086 Posts
          Ребята, зачем такие извращения?

          Гораздо проще делать принт-версию, подключая специальный новый CSS-файл.
          В этом CSS файле просто тупо с помощью display:none отключаются лишние блоки и, при необходимости, иначе позиционируются существующие.
          Пример можно посмотреть здесь http://www.ibc.lv/en/offshore-overseas-company-formation/
          В данном случае сниппет проверяет, имеется ли параметр print=1, и, если параметр найден, подключается новый CSS файл.
          Ну и еще короткий JS-скрипт добавляется, который вызывает окно печати, хотя это уже навороты smiley.

          P.S.: Да, и ничего ни с чем конфликтовать здесь не будет. Т.е. проблемы просто не возникают.
          Ибо в данном случае вывод страницы производится без изменений с точки зрения CMS.
            Разработка сайтов и программных модулей на MODX.
            Опыт работы на MODx с 2005 года. Высокое качество.
            Компания Baltic Design Colors: http://www.bdcolors.ru.
            • 36823
            • 334 Posts
            Quote from: Fuzzy at Jul 22, 2009, 02:59 PM

            Ребята, зачем такие извращения?

            Гораздо проще делать принт-версию, подключая специальный новый CSS-файл.
            В этом CSS файле просто тупо с помощью display:none отключаются лишние блоки и, при необходимости, иначе позиционируются существующие.
            Пример можно посмотреть здесь http://www.ibc.lv/en/offshore-overseas-company-formation/
            В данном случае сниппет проверяет, имеется ли параметр print=1, и, если параметр найден, подключается новый CSS файл.
            Ну и еще короткий JS-скрипт добавляется, который вызывает окно печати, хотя это уже навороты smiley.

            P.S.: Да, и ничего ни с чем конфликтовать здесь не будет. Т.е. проблемы просто не возникают.
            Ибо в данном случае вывод страницы производится без изменений с точки зрения CMS.
            Так привели бы пример кода.
              • 1788
              • 1,103 Posts
              Quote from: Andrei at Jul 22, 2009, 04:44 PM

              Так привели бы пример кода.
              display:none;
                • 28814 ☆ A M B ☆
                • 1,086 Posts
                Quote from: antey at Jul 22, 2009, 09:12 PM

                Quote from: Andrei at Jul 22, 2009, 04:44 PM

                Так привели бы пример кода.
                display:none;
                Действительно smiley Какой там код - все элементарно. Я же объяснил логику: сниппет проверяет, имеется ли параметр print=1 в URL. Если имеется, подключается новый CSS файл, в котором все лишнее убрано с помощью display:none. Вот и весь секрет.
                  Разработка сайтов и программных модулей на MODX.
                  Опыт работы на MODx с 2005 года. Высокое качество.
                  Компания Baltic Design Colors: http://www.bdcolors.ru.
                  • 897
                  • 1,620 Posts
                  сниппет то зачем?

                  <LINK REL="stylesheet" TYPE="text/css" HREF="print.css" media="print">
                  <LINK REL="stylesheet" TYPE="text/css" HREF="main.css" media="screen">
                  


                  подробности
                    "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

                    Не используйте Revo для "просто сайтов". Используйте Evo

                    Who can defeat the Russian bear?
                    • 28814 ☆ A M B ☆
                    • 1,086 Posts
                    Лично у меня были проблемы с media print, разные браузеры по-разному (и почти всегда неправильно) отображали принт-версию страницы. Поэтому вариант со сниппетом оказался наиболее простым и качественным решением.
                      Разработка сайтов и программных модулей на MODX.
                      Опыт работы на MODx с 2005 года. Высокое качество.
                      Компания Baltic Design Colors: http://www.bdcolors.ru.
                      • 36823
                      • 334 Posts
                      Quote from: Fuzzy at Jul 23, 2009, 01:57 AM

                      Quote from: antey at Jul 22, 2009, 09:12 PM

                      Quote from: Andrei at Jul 22, 2009, 04:44 PM

                      Так привели бы пример кода.
                      display:none;
                      Действительно smiley Какой там код - все элементарно. Я же объяснил логику: сниппет проверяет, имеется ли параметр print=1 в URL. Если имеется, подключается новый CSS файл, в котором все лишнее убрано с помощью display:none. Вот и весь секрет.
                      Так чего воду лить?